Fix an issue where _IONBF would cause an overflow error
This commit is contained in:
@@ -99,7 +99,11 @@ impl FILE {
|
||||
return true;
|
||||
}
|
||||
self.read = None;
|
||||
self.write = Some((self.unget, self.unget, self.buf.len() - 1));
|
||||
self.write = if self.buf.len() == 0 {
|
||||
Some((0, 0, 0))
|
||||
} else {
|
||||
Some((self.unget, self.unget, self.buf.len() - 1))
|
||||
};
|
||||
return true;
|
||||
}
|
||||
pub fn write(&mut self, to_write: &[u8]) -> usize {
|
||||
|
||||
@@ -7,5 +7,7 @@ int main(int argc, char ** argv) {
|
||||
ungetc('H', f);
|
||||
char *in = malloc(30);
|
||||
printf("%s\n", fgets(in, 30, f));
|
||||
setvbuf(stdout, 0, _IONBF, 0);
|
||||
printf("Hello\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user