@@ -1139,10 +1139,11 @@ - (void)runMode: (of_run_loop_mode_t)mode beforeDate: (OFDate *)deadline { void *pool = objc_autoreleasePoolPush(); + of_run_loop_mode_t previousMode = _currentMode; OFRunLoop_State *state = [self of_stateForMode: mode create: false]; if (state == nil) return; @@ -1249,11 +1250,11 @@ #endif } objc_autoreleasePoolPop(pool); } @finally { - _currentMode = nil; + _currentMode = previousMode; } } - (void)stop {