Index: runtime/bin/eventhandler_win.h |
diff --git a/runtime/bin/eventhandler_win.h b/runtime/bin/eventhandler_win.h |
index cfc0d8c14261a3b824eb808d66229f3f55b1ea60..e64027c2bc3ade4d5a6b1e25c97faa327526c5a6 100644 |
--- a/runtime/bin/eventhandler_win.h |
+++ b/runtime/bin/eventhandler_win.h |
@@ -198,6 +198,9 @@ class Handle { |
void ReadSyncCompleteAsync(); |
+ DWORD last_error() { return last_error_; } |
+ void set_last_error(DWORD last_error) { last_error_ = last_error; } |
+ |
protected: |
enum Flags { |
kClosing = 0, |
@@ -222,6 +225,8 @@ class Handle { |
IOBuffer* pending_read_; // IO buffer for pending read. |
IOBuffer* pending_write_; // IO buffer for pending write |
+ DWORD last_error_; |
+ |
private: |
int flags_; |
CRITICAL_SECTION cs_; // Critical section protecting this object. |
@@ -349,6 +354,7 @@ class EventHandlerImplementation { |
void HandleTimeout(); |
void HandleAccept(ListenSocket* listen_socket, IOBuffer* buffer); |
void HandleClosed(Handle* handle); |
+ void HandleError(Handle* handle); |
void HandleRead(Handle* handle, int bytes, IOBuffer* buffer); |
void HandleWrite(Handle* handle, int bytes, IOBuffer* buffer); |
void HandleClose(ClientSocket* client_socket); |