[Issue 7244] New: Access Violation with optimized build when using memory-mapped file
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Sat Jan 7 19:53:34 PST 2012
http://d.puremagic.com/issues/show_bug.cgi?id=7244
Summary: Access Violation with optimized build when using
memory-mapped file
Product: D
Version: D2
Platform: Other
OS/Version: Windows
Status: NEW
Severity: normal
Priority: P2
Component: Phobos
AssignedTo: nobody at puremagic.com
ReportedBy: andrej.mitrovich at gmail.com
--- Comment #0 from Andrej Mitrovic <andrej.mitrovich at gmail.com> 2012-01-07 19:53:30 PST ---
I am *not* sure if the following code is correct, it's copied from another
source and I've never used memory-mapped files before:
module test;
import std.algorithm;
import std.mmfile;
void readfile(string filename)
{
string[] lines;
auto fFile = new MmFile(filename);
auto fBuffer = cast(char*)(fFile[].ptr);
auto fLength = cast(size_t)fFile.length;
auto textData = fBuffer[0 .. fLength];
foreach (char[] line; splitter(textData, "\n"))
lines ~= line.idup;
}
void main() {
readfile("datetime.d");
}
This only happens when reading large files like std.datetime:
$ dmd test.d && test.exe
ok
$ dmd -O test.d && test.exe
object.Error: Access Violation
----------------
----------------
ddbg says:
Unhandled Exception: EXCEPTION_ACCESS_VIOLATION(0xc0000005) at
std.algorithm.find!(pred,ubyte[],ubyte[]).find
D:\DMD\dmd2\windows\bin\..\..\src\phobos\std\algorithm.d:2885 (0x00402b23)
thread(2408)
That's why I've labeled is as a Phobos bug. But maybe it's a bug in the user
code?
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list