| Index: runtime/bin/eventhandler_win.cc
|
| diff --git a/runtime/bin/eventhandler_win.cc b/runtime/bin/eventhandler_win.cc
|
| index b6ac1ce2c75de5405b2b3602998bf45a5a09d95e..993670cc53e9ae9a705e5f818e7f3bfd4e156368 100644
|
| --- a/runtime/bin/eventhandler_win.cc
|
| +++ b/runtime/bin/eventhandler_win.cc
|
| @@ -988,7 +988,9 @@ void EventHandlerImplementation::HandleInterrupt(InterruptMessage* msg) {
|
|
|
| Handle::ScopedLock lock(handle);
|
|
|
| - if (!handle->IsError()) {
|
| + if (handle->IsError()) {
|
| + DartUtils::PostInt32(msg->dart_port, 1 << kErrorEvent);
|
| + } else {
|
| if ((msg->data & ((1 << kInEvent) | (1 << kOutEvent))) != 0) {
|
| // Only set mask if we turned on kInEvent or kOutEvent.
|
| handle->SetPortAndMask(msg->dart_port, msg->data);
|
|
|