소스 검색

Fixed problem that `listen` may return incorrect value when calling `stop`;

yhirose 7 년 전
부모
커밋
07910f73a9
1개의 변경된 파일3개의 추가작업 그리고 2개의 파일을 삭제
  1. 3 2
      httplib.h

+ 3 - 2
httplib.h

@@ -1516,9 +1516,10 @@ inline void Server::stop()
 {
     if (is_running_) {
         assert(svr_sock_ != INVALID_SOCKET);
-        detail::shutdown_socket(svr_sock_);
-        detail::close_socket(svr_sock_);
+        auto sock = svr_sock_;
         svr_sock_ = INVALID_SOCKET;
+        detail::shutdown_socket(sock);
+        detail::close_socket(sock);
     }
 }