emscripten-core / emscripten-core/emscripten
fread returns garbage when pipe is closed
- Dominant language
- C++
- Stars
- 27.6k
- Forks
- 3.6k
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 105
Description
On Windows, when content provided on the stdin pipe is read and pipe is closed, the following code throws with errno equal to `undefined` and `fread` keeps returning data instead of indicating EOF.
https://github.com/emscripten-core/emscripten/blob/0589ed2211831fe74c5b340de544b3d5d9fe5388/src/library_syscall.js#L150
```
ErrnoError
at Object.ensureErrnoError (C:\***\a.out.js:11068:35)
at Object.staticInit (C:\***\a.out.js:11076:12)
at Object. (C:\***\a.out.js:12037:6)
at Module._compile (internal/modules/cjs/loader.js:999:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
at Module.load (internal/modules/cjs/loader.js:863:32)
at Function.Module._load (internal/modules/cjs/loader.js:708:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:60:12)
at internal/main/run_main_module.js:17:47 {
node: undefined,
setErrno: [Function],
errno: undefined,
message: 'FS error'
```
Contributor guide
Assessment
This issue has not been assessed yet.