fgetc doubts
Xin LI
delphij at delphij.net
Tue Mar 10 15:24:33 PDT 2009
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi, Gábor,
Gábor Kövesdán wrote:
> Ed Schouten escribió:
>> * Gábor Kövesdán <gabor at FreeBSD.org> wrote:
>>
>>> Hello,
>>>
>>> I have a problem when reading files with fgetc when a 0xff character
>>> comes. In my code the reading stops at that point as if EOF had been
>>> reached, but that's not actually the case.
>>> The code is here:
>>> http://p4web.freebsd.org/@md=d&cd=//&c=Nsd@//depot/projects/soc2008/gabor_textproc/grep/file.c?ac=64&rev1=40
>>>
>>> And the problem occurs in grep_fgetln() when the buffers is being
>>> filled in:
>>> for (; i < bufsiz && !grep_feof(f); i++)
>>> binbuf[i] = grep_fgetc(f);
>>>
>>> Thanks in advance,
>>>
>>
>> Sign extension bug?
>>
> I tried to substitute everything with int, because fgetc can return some
> error code afaik, but using int didn't help.
Is binbuf[] an array of char or unsigned char? If it's signed char then
you may want something like ch = binbufptr[0] & 0xff I guess.
Cheers,
- --
Xin LI <delphij at delphij.net> http://www.delphij.net/
FreeBSD - The Power to Serve!
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.11 (FreeBSD)
iEYEARECAAYFAkm26JUACgkQi+vbBBjt66CePwCgtXlqAYcdP6G1EUUtGk0nu7vD
I1sAoIJ+Hpop5mIHDdbfcXAbwMsqht2P
=A8DH
-----END PGP SIGNATURE-----
More information about the freebsd-hackers
mailing list