On Jan 16, 2012, at 5:19 AM, Schwab,Wilhelm K wrote: > I don't just write English, I also write Smalltalk :)
:) > I had put some related code on SqueakMap, but I suspect it disappeared in one > of the meltdowns. It also picked up some code that I had not intended to > release, which led me to be unhappy with http repositories. > > The code varies in quality, covering things missing in streams, FFI, value > adapters, among other things. I recently noted that the FFI code will > require tweaking to be of use with 1.3 and up. if you have fixes for FFi please publish it because we need a good FFI. > > Bill > > > ________________________________________ > From: [email protected] > [[email protected]] on behalf of Stéphane Ducasse > [[email protected]] > Sent: Sunday, January 15, 2012 3:47 PM > To: [email protected] > Subject: Re: [Pharo-project] reading *exactly* n bytes from socket > > On Jan 15, 2012, at 9:19 PM, Max Leske wrote: > >> Good to know, that you're working on it. Took me a while to figure out that >> #next: would not fill the entiry buffer… > > I'm not. I just know that bill tried to explain to us what was the problem :) > and since the emails/sentences were too long or too english I was always lost > but I know that there is this point that we should address. > >> >> Unfortunately, I wasn't able to resolve my afore mentioned problem >> completely. To make things easier, I sent #upToEnd to my SocketStream, >> expecting to get all the data (and then read the lines later). However, >> towards the end of the transmission the connection is suddenly closed >> (ConnectionClosed is signaled by Socket>>waitForDataFor:) and I lose a >> variable amount of data (up to about 300KB out of 4.7MB). The primitive says >> that the server closed the connection (which might of course be true) but I >> can't see where my data went missing. >> >> In one case I even had a singel byte missing inside a line (the line was one >> byte shorter than advertised). Now this would probably be a totally >> different proplem and, to be fair, I couldn' reproduce it, so ignore this >> for now. >> >> Camillo is now looking into ithe SocketStream stuff but if any of you have a >> clue what could be going on, I'd appreciate your help. >> >> Cheers, >> Max >> >> On 15.01.2012, at 20:56, Stéphane Ducasse wrote: >> >>> >>> On Jan 15, 2012, at 8:10 PM, Schwab,Wilhelm K wrote: >>> >>>> Max, >>>> >>>> I wouldn't forget it too soon. Streams should work as advertised or raise >>>> an error. My (compromise) proposal remains as follows: >>>> >>>> http://code.google.com/p/pharo/wiki/StreamsForRobustSoftware >>> >>> Yes :) >>> >>> I know. >>> >>>> >>>> Bill >>>> >>>> >>>> ________________________________________ >>>> From: [email protected] >>>> [[email protected]] on behalf of Max Leske >>>> [[email protected]] >>>> Sent: Sunday, January 15, 2012 6:18 AM >>>> To: [email protected] >>>> Subject: Re: [Pharo-project] reading *exactly* n bytes from socket >>>> >>>> Sorry, forget what I just wrote… >>>> I found the bug in my code. Should have checked if the connection is still >>>> open :-/ >>>> >>>> Cheers, >>>> Max >>>> >>>> >>>> On 15.01.2012, at 12:09, Max Leske wrote: >>>> >>>>> Hey guys >>>>> >>>>> I'm having a problem with Socket / SocketStream. When I know that the >>>>> next packet of data from the server is going to be 10'000 bytes I want to >>>>> ask the socket for exactly 10'000 bytes of data (I don't care how long it >>>>> takes). However, the comments in the Socket class suggest that the buffer >>>>> might not be filled entirely when the message answers. As a consequence, >>>>> my code fails because the ByteArray sometimes has a number of zero bytes >>>>> at the end which obviously wasn't expected. >>>>> I also tried to use SocketStream to get around this problem but wasn't >>>>> successful. Am I supposed to handle this case myself or did I overlook >>>>> something? >>>>> >>>>> Cheers, >>>>> Max >>>> >>>> >>>> >>> >>> >> >> > > >
