DescriptionFix race condition with "server already started" error.
We can't report the "server already started" error prior to the call
to WebSocketTransformer.upgrade(), because it's possible that a
different client will successfully establish a connection during the
upgrade process. Instead, check after the call to upgrade(). This
means that if there is an error, we have to report it via a
RequestError object rather than using an HTTP error.
When we add stdio as a transport mechanism, this will have the further
advantage of allowing the "server already started" error to be
detected by code that is independent of the transport mechanism.
R=brianwilkerson@google.com
Committed: https://code.google.com/p/dart/source/detail?r=35046
Patch Set 1 #
Total comments: 1
Messages
Total messages: 4 (0 generated)
|