Matthew Fulmer uploaded a new version of Network to project The Trunk: http://source.squeak.org/trunk/Network-mtf.105.mcz
==================== Summary ====================
Name: Network-mtf.105 Author: mtf Time: 15 January 2011, 8:27:54.184 pm UUID: 1b2c2f95-fc87-4b1f-a034-4dc2cb793c9b Ancestors: Network-cmm.103
the SocketStream refactor broke the semantics of no-timeout streams. no timeout is supposed to mean we wait potentially forever. It was broken to mean timeout silently rather than with a signal.
=============== Diff against Network-cmm.103 ===============
Item was added: + ----- Method: BrowserUrl>>retrieveContentsForBrowser: (in category 'downloading') ----- + retrieveContentsForBrowser: aBrowser + ^aBrowser browserUrlContents: locator!
Item was changed: ----- Method: SocketStream>>receiveData (in category 'private-socket') ----- receiveData + self waitForData. - "Receive data. Signal exceptions and timeouts depending on #shouldSignal and #shouldTimeout. Return the position in the buffer where the new data starts, regardless if anything was read." - - socket - waitForDataFor: self timeout - ifClosed: [self shouldSignal - ifTrue:[ConnectionClosed signal: 'Connection closed while waiting for data.']] - ifTimedOut: [self shouldTimeout - ifTrue:[ConnectionTimedOut signal: 'Data receive timed out.']]. ^self receiveAvailableData!
Item was added: + ----- Method: SocketStream>>signalClosed (in category 'private-socket') ----- + signalClosed + self shouldSignal ifFalse: [^ self]. + ConnectionClosed signal: 'Connection closed while waiting for data.'!
Item was added: + ----- Method: SocketStream>>signalTimeout (in category 'private-socket') ----- + signalTimeout + self shouldSignal ifFalse: [^ self]. + ConnectionTimedOut signal: 'Data receive timed out.'!
Item was added: + ----- Method: SocketStream>>waitForData (in category 'private-socket') ----- + waitForData + "Wait for data. If shouldTimeout, we will time out if nothing arrives, otherwise we wait indefinitely" + + self shouldTimeout + ifTrue: [socket waitForDataFor: self timeout + ifClosed: [self signalClosed] + ifTimedOut: [self signalTimeout]] + ifFalse: [socket waitForDataIfClosed: [self signalClosed]]!
squeak-dev@lists.squeakfoundation.org