Corrections pour la détection de l'EOF
This commit is contained in:
parent
7d5599d80a
commit
68817286ea
|
@ -12,7 +12,7 @@ typedef struct WriteBuffer WriteBuffer;
|
||||||
struct WriteBuffer {
|
struct WriteBuffer {
|
||||||
// Contient les données du tampon d'écriture, c'est-à-dire
|
// Contient les données du tampon d'écriture, c'est-à-dire
|
||||||
// les données en attente de vidage dans le fichier
|
// 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,
|
// Nombre de bits utilisés dans `data`. Si ce nombre vaut 8,
|
||||||
// le tampon d'écriture est plein
|
// le tampon d'écriture est plein
|
||||||
|
@ -59,7 +59,7 @@ typedef struct ReadBuffer ReadBuffer;
|
||||||
struct ReadBuffer {
|
struct ReadBuffer {
|
||||||
// Contient les données du tampon de lecture, c'est-à-dire
|
// Contient les données du tampon de lecture, c'est-à-dire
|
||||||
// le dernier octet lu depuis le fichier
|
// le dernier octet lu depuis le fichier
|
||||||
char data;
|
int data;
|
||||||
|
|
||||||
// Numéro du prochain bit de `data` qui sera lu par `getBuffer`
|
// Numéro du prochain bit de `data` qui sera lu par `getBuffer`
|
||||||
size_t next_bit;
|
size_t next_bit;
|
||||||
|
|
|
@ -51,8 +51,8 @@ ReadBuffer createReadBuffer(FILE* file) {
|
||||||
}
|
}
|
||||||
|
|
||||||
char getBuffer(ReadBuffer* buffer) {
|
char getBuffer(ReadBuffer* buffer) {
|
||||||
if (buffer->data == EOF) {
|
if (feof(buffer->source_file)) {
|
||||||
return EOF;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Lecture du n-ième bit dans le dernier octet lu
|
// Lecture du n-ième bit dans le dernier octet lu
|
||||||
|
|
Loading…
Reference in New Issue