[Issue 5400] New: Socket.select / FD_ISSET broken on phobos/D2

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sun Jan 2 05:53:58 PST 2011


http://d.puremagic.com/issues/show_bug.cgi?id=5400

           Summary: Socket.select / FD_ISSET broken on phobos/D2
           Product: D
           Version: D2
          Platform: All
        OS/Version: Linux
            Status: NEW
          Severity: blocker
          Priority: P2
         Component: druntime
        AssignedTo: sean at invisibleduck.org
        ReportedBy: eric.estievenart at free.fr


--- Comment #0 from Éric Estièvenart <eric.estievenart at free.fr> 2011-01-02 05:51:46 PST ---
Since druntime/import/core/sys/posix/sys/select.di defines wrongly FD_ISSET as:
extern (D) bool FD_ISSET(int fd, fd_set* fdset)
{
return (fdset.fds_bits[__FDELT(fd)] & __FDMASK(fd)) == 0;
}

instead of
return (fdset.fds_bits[__FDELT(fd)] & __FDMASK(fd)) != 0;

=> Socket.select does not work at all.

BTW, should be const:
bool FD_ISSET(int fd, const(fd_set)* fdset)
so constness could be propagated on SocketSet...

BTW (bis) select() should be in a separate module...

-- 
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