On Sun, 2009-03-01 at 13:32 +0100, Bruno Haible wrote: > Alan Hourihane wrote: > > > Is anything else among the aforementioned unit tests still failing? > > > > Yes. The last problem is fseeko() as mentioned. > > The 'if (0)' is not right: it causes the lseek to be skipped entirely in > gnulib. > But we have the requirement that fflush followed by fseek acts like lseek, > and in the mintlib sources > - the only calls to lseek are through the __io_funcs.__seek function, > - fflush does not always invoke __io_funcs.__seek, > - fseek does not invoke __io_funcs.__seek, except to determine the end for > SEEK_END. > > How about the currently committed code with this additional patch? Does this > work?
Yes. This does the trick. Thanks Bruno ! Alan. > *** lib/fseeko.c.orig 2009-03-01 13:25:17.000000000 +0100 > --- lib/fseeko.c 2009-03-01 13:24:57.000000000 +0100 > *************** > *** 117,122 **** > --- 117,125 ---- > fp->_flags &= ~_IOEOF; > #elif defined _IOERR /* AIX, HP-UX, IRIX, OSF/1, Solaris, > OpenServer, mingw */ > fp->_flag &= ~_IOEOF; > + #elif defined __MINT__ /* Atari FreeMiNT */ > + fp->__offset = pos; > + fp->__eof = 0; > #endif > /* If we were not requested to position beyond end of file, we're > done. */ > > Bruno