Summary: Unlisted @@@BUG in File.detach causes FILE* leaks when
           Product: D
           Version: D2
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Phobos

--- Comment #0 from Vladimir Panteleev <> 2012-04-05 
11:55:36 PDT ---
This is a variant of bug 3424.

import std.file, std.stdio;

void main() {
    std.file.write("foo.txt", "stuff");
    File f;
    foreach(i; 0..1_000_000) {"foo.txt");  // Throws too many files error rather quickly.

The relevant part of std.stdio (line 378):

Detaches from the underlying file. If the sole owner, calls $(D close)
and throws if that fails.
    void detach()
        if (!p) return;
        // @@@BUG
        //if (p.refs == 1) close();
        p = null;

Configure issuemail:
------- You are receiving this mail because: -------

Reply via email to