retval = fb->buf[fb->curIndex++];
retval = (unsigned char) fb->buf[fb->curIndex++];
FB_GetChar(FileBuffer *fb){    PRInt32 storedOffset;    PRInt32 amountRead;    int	retval = -1;    if (fb->IsEOF) {	return EOF;    }    storedOffset = PR_Seek(fb->fd, 0, PR_SEEK_CUR);    retval = fb->buf[fb->curIndex++];    if (retval == '\n') 	fb->lineNum++;    if (fb->curIndex > fb->maxIndex) {	/* We're at the end of the buffer. Try to get some new data from the		 * file */	fb->startOffset += fb->maxIndex + 1;	PR_Seek(fb->fd, fb->startOffset, PR_SEEK_SET);	amountRead = PR_Read(fb->fd, fb->buf, FILE_BUFFER_BUFSIZE);	if (amountRead == -1)  	    goto loser;	fb->maxIndex = amountRead - 1;	fb->curIndex = 0;    }    fb->IsEOF = (fb->curIndex > fb->maxIndex) ? PR_TRUE : PR_FALSE;loser:    PR_Seek(fb->fd, storedOffset, PR_SEEK_SET);    return retval;}