Sfoglia il codice sorgente

Don't reset read/write every time we check if we can read or write

Tom Almeida 6 anni fa
parent
commit
81107f8cd1
1 ha cambiato i file con 6 aggiunte e 0 eliminazioni
  1. 6 0
      src/stdio/src/lib.rs

+ 6 - 0
src/stdio/src/lib.rs

@@ -64,6 +64,9 @@ impl FILE {
         }
         */
 
+        if let Some(_) = self.read {
+            return true;
+        }
         if let Some(_) = self.write {
             self.write(&[]);
         }
@@ -93,6 +96,9 @@ impl FILE {
             return false;
         }
         // Buffer repositioning
+        if let Some(_) = self.write {
+            return true;
+        }
         self.read = None;
         self.write = Some((self.unget, self.unget, self.buf.len() - 1));
         return true;