[Issue 19797] New: File.seek() terminates ungracefully on incorrect origin for -m32mscoff and -m64
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Tue Apr 9 10:21:30 UTC 2019
https://issues.dlang.org/show_bug.cgi?id=19797
Issue ID: 19797
Summary: File.seek() terminates ungracefully on incorrect
origin for -m32mscoff and -m64
Product: D
Version: D2
Hardware: x86
OS: Windows
Status: NEW
Severity: critical
Priority: P1
Component: dmd
Assignee: nobody at puremagic.com
Reporter: Bastiaan at Veelo.net
The origin parameter to File.seek() should only accept SEEK_STEP, SEEK_CUR or
SEEK_END. When a different int is passed, an exception is correctly thrown when
compiled with -m32. However, on Windows 10 at least, when compiled with either
-m32mscoff or -m64, the process terminates without any message whatsoever.
import std.experimental.all;
void main()
{
auto deleteme = "deleteme";
auto f = File(deleteme, "wb+");
scope(exit) { f.close(); std.file.remove(deleteme); }
f.seek(0, 3); // Should throw.
writeln("Ending gracefully."); // Never seen.
}
--
More information about the Digitalmars-d-bugs
mailing list