ref: 3ad6de400298bee4689c038f72342434396d64da
parent: 4a8f78d53d61423fdeb6c59881661d6cd5cbd430
author: Ori Bernstein <[email protected]>
date: Mon Sep 29 09:55:12 EDT 2014
Only succeed blatting if we write the whole buffer. Writing without error isn't quite the right condition.
--- a/libstd/blat.myr
+++ b/libstd/blat.myr
@@ -23,11 +23,13 @@
n = 0
while true
written = write(fd, buf[n:])
- if written <= 0
+ if written == 0
goto done
+ elif written < 0
+ goto fail
;;
n += written
;;
:done
- -> written == 0
+ -> written == 0 && n == buf.len
}