Skip to content

Commit

Permalink
Don't allow sync. HTTP requests on the main thread anymore
Browse files Browse the repository at this point in the history
Any sync. HTTP request on the main thread is a bug, don't allow introducing one again.
  • Loading branch information
grorp committed May 29, 2024
1 parent 1ffcab2 commit 6245073
Showing 1 changed file with 2 additions and 14 deletions.
16 changes: 2 additions & 14 deletions src/httpfetch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -749,19 +749,6 @@ static void httpfetch_request_clear(u64 caller)
}
}

static void httpfetch_sync(const HTTPFetchRequest &fetch_request,
HTTPFetchResult &fetch_result)
{
// Create ongoing fetch data and make a cURL handle
// Set cURL options based on HTTPFetchRequest
CurlHandlePool pool;
HTTPFetchOngoing ongoing(fetch_request, &pool);
// Do the fetch (curl_easy_perform)
CURLcode res = ongoing.start(nullptr);
// Update fetch result
fetch_result = *ongoing.complete(res);
}

bool httpfetch_sync_interruptible(const HTTPFetchRequest &fetch_request,
HTTPFetchResult &fetch_result, long interval)
{
Expand All @@ -779,7 +766,8 @@ bool httpfetch_sync_interruptible(const HTTPFetchRequest &fetch_request,
} while (!httpfetch_async_get(req.caller, fetch_result));
httpfetch_caller_free(req.caller);
} else {
httpfetch_sync(fetch_request, fetch_result);
throw ModError(std::string("You have tried to execute a synchronous HTTP request on the main thread! "
"This offense shall be punished. (").append(fetch_request.url).append(")"));
}
return true;
}
Expand Down

0 comments on commit 6245073

Please sign in to comment.