Browse Source

web_service: follow-up fix to #4842 ...

* The web_service http request is now fixed on Windows (R) platform.
* The issue is due to a complicated race-condition in `httplib`, a detailed
  explanation is available at https://github.com/yhirose/cpp-httplib/pull/701
* A pending Pull Request on `httplib` has been applied to remedy the
  said race-condition.
* The socket availability check is removed due to a behavioral chice of
  `httplib` that a socket will not be created before any actual request
  is sent.
pull/15/merge
liushuyu 5 years ago
parent
commit
cf63eacc1a
No known key found for this signature in database GPG Key ID: 23D1CE4534419437
  1. 2
      externals/httplib/README.md
  2. 631
      externals/httplib/httplib.h
  3. 5
      src/web_service/web_backend.cpp

2
externals/httplib/README.md

@ -1,4 +1,4 @@
From https://github.com/yhirose/cpp-httplib/tree/fce8e6fefdab4ad48bc5b25c98e5ebfda4f3cf53
From https://github.com/yhirose/cpp-httplib/tree/ff5677ad197947177c158fe857caff4f0e242045 with https://github.com/yhirose/cpp-httplib/pull/701
MIT License MIT License

631
externals/httplib/httplib.h
File diff suppressed because it is too large
View File

5
src/web_service/web_backend.cpp

@ -71,11 +71,6 @@ struct Client::Impl {
return {}; return {};
} }
if (!cli->is_socket_open()) {
LOG_ERROR(WebService, "Failed to open socket, skipping request!");
return {};
}
cli->set_connection_timeout(TIMEOUT_SECONDS); cli->set_connection_timeout(TIMEOUT_SECONDS);
cli->set_read_timeout(TIMEOUT_SECONDS); cli->set_read_timeout(TIMEOUT_SECONDS);
cli->set_write_timeout(TIMEOUT_SECONDS); cli->set_write_timeout(TIMEOUT_SECONDS);

Loading…
Cancel
Save