The Trunk: Network-eem.173.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Network-eem.173.mcz

commits-2
Eliot Miranda uploaded a new version of Network to project The Trunk:
http://source.squeak.org/trunk/Network-eem.173.mcz

==================== Summary ====================

Name: Network-eem.173
Author: eem
Time: 29 February 2016, 7:14:37.642865 pm
UUID: ea895f60-b473-4bd3-95b3-9dca79beeb9e
Ancestors: Network-eem.172

If preemption does not yield then Socket>>sendData:count: cannot simply spin while failing to send any data.  It must at least yield (but why does it not check for errors?).

=============== Diff against Network-eem.172 ===============

Item was changed:
  ----- Method: Socket>>sendData:count: (in category 'sending') -----
  sendData: buffer count: n
+ "Send the amount of data from the given buffer."
+ | sent totalSent |
+ totalSent := 0.
+ [totalSent < n] whileTrue:
+ [sent := self sendSomeData: buffer startIndex: totalSent+1 count: n-totalSent.
+ totalSent := totalSent + sent.
+ sent = 0 ifTrue: "If no data was sent don't just sit here spinning hard..."
+ [Processor yield]].!
- "Send the amount of data from the given buffer"
- | sent |
- sent := 0.
- [sent < n] whileTrue:[
- sent := sent + (self sendSomeData: buffer startIndex: sent+1 count: (n-sent))].!