Corrections pour la détection de l'EOF

This commit is contained in:
Mattéo Delabre 2016-11-20 01:29:24 +01:00
parent 7d5599d80a
commit 68817286ea
2 changed files with 4 additions and 4 deletions

View File

@ -12,7 +12,7 @@ typedef struct WriteBuffer WriteBuffer;
struct WriteBuffer {
// Contient les données du tampon d'écriture, c'est-à-dire
// les données en attente de vidage dans le fichier
char data;
int data;
// Nombre de bits utilisés dans `data`. Si ce nombre vaut 8,
// le tampon d'écriture est plein
@ -59,7 +59,7 @@ typedef struct ReadBuffer ReadBuffer;
struct ReadBuffer {
// Contient les données du tampon de lecture, c'est-à-dire
// le dernier octet lu depuis le fichier
char data;
int data;
// Numéro du prochain bit de `data` qui sera lu par `getBuffer`
size_t next_bit;

View File

@ -51,8 +51,8 @@ ReadBuffer createReadBuffer(FILE* file) {
}
char getBuffer(ReadBuffer* buffer) {
if (buffer->data == EOF) {
return EOF;
if (feof(buffer->source_file)) {
return -1;
}
// Lecture du n-ième bit dans le dernier octet lu