Nope; got it wrong again. I'll just supply a patch once I get this working.
On Fri, Mar 21, 2008 at 2:36 PM, Curt Hagenlocher <[EMAIL PROTECTED]> wrote: > I noticed that this still isn't fixed in 2.0b1, so I took another look at > socket.cs and realized that my analysis was slightly off. There's already > a mechanism to track duplicated sockets in the form of the handleToSocket > mapping. However, this mechanism isn't taken into account when deciding > whether or not to Close() the BCL Socket object. > > Bottom line: I believe this bug can be fixed simply by moving the call to > _socket.Close() from socket.close into socket.RemoveHandleSocketMapping, > and only calling it when sockets.Count reaches zero. > On Mon, Feb 18, 2008 at 9:19 PM, Dino Viehland < > [EMAIL PROTECTED]> wrote: > > > This is a great analysis - based upon this I think it'll be pretty easy > > to fix this. I'll take a look at it tomorrow and respond back. > > > > -----Original Message----- > > From: [EMAIL PROTECTED] [mailto: > > [EMAIL PROTECTED] On Behalf Of Curt Hagenlocher > > Sent: Monday, February 18, 2008 4:19 PM > > To: Discussion of IronPython > > Subject: Re: [IronPython] urllib.urlretrieve with IronPython 2a8 > > > > On Feb 18, 2008 4:12 PM, Curt Hagenlocher <[EMAIL PROTECTED]> wrote: > > > > > > Is it possible that CPython's socket.close method won't actually close > > > the socket while there's still a makefile'd file attacked to the > > > underlying OS socket? And that IronPython's will? Because that's the > > > only explanation I can come up with. > > > > It is and it will. CPython basically dups the socket handle when you > > call makefile, while IronPython does not. That's the cause of this > > bug. > > > > By the way, the docstring for the IronPython socket class claims that > > makefile isn't implemented. This is apparently only half-true. :P > > > > -- > > Curt Hagenlocher > > [EMAIL PROTECTED] > > _______________________________________________ > > Users mailing list > > Users@lists.ironpython.com > > http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > > _______________________________________________ > > Users mailing list > > Users@lists.ironpython.com > > http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > > > >
_______________________________________________ Users mailing list Users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com