VOROSKOI Andras wrote:
> I've updated the original patch a bit. I've reworked the #ifdef
> __DragonFly__ parts to avoid duplicates.
>
> About the third hunk: this new patch does not touch that part.
The first hunk (file freadahead.c) is correct when looking at the DragonFlyBSD
CVS
http://www.dragonflybsd.org/cvsweb/src/include/stdio.h.diff?r1=1.12&r2=1.13 http://www.dragonflybsd.org/cvsweb/src/lib/libc/stdio/sreadahead.c?rev=1.1&content-type=text/x-cvsweb-markupI applied that.
The second hunk (file freading.c) appears to be a nop to me; why should I apply
this?
The third hunk (file fseeko.c) is lacking a rationale.
More generally, what were the problems that you encountered when you ran
"./configure; make; make check" in the testdir-stdioext.tar.gz that I posted?
Bruno
2008-06-01 Bruno Haible <
bruno@...>
* lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
function.
Reported by VOROSKOI Andras <
voroskoi@...>.
*** lib/freadahead.c.orig 2008-06-01 18:34:45.000000000 +0200
--- lib/freadahead.c 2008-06-01 18:29:47.000000000 +0200
***************
*** 33,40 ****
--- 33,44 ----
#elif defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, MacOS X, Cygwin */
if ((fp_->_flags & __SWR) != 0 || fp_->_r < 0)
return 0;
+ # if defined __DragonFly__
+ return __sreadahead (fp);
+ # else
return fp_->_r
+ (HASUB (fp) ? fp_->_ur : 0);
+ # endif
#elif defined __EMX__ /* emx+gcc */
if ((fp->_flags & _IOWRT) != 0)
return 0;