From 55615abe9e0f571c855bc0954dd2b4b8f9df311d Mon Sep 17 00:00:00 2001 From: rakshasa Date: Sun, 4 May 2025 11:23:47 +0200 Subject: [PATCH] Use poll interrupting callbacks for SCGI requests. --- src/rpc/scgi_task.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/rpc/scgi_task.cc b/src/rpc/scgi_task.cc index bccd6ba6..28aae989 100644 --- a/src/rpc/scgi_task.cc +++ b/src/rpc/scgi_task.cc @@ -267,7 +267,7 @@ SCgiTask::receive_call(const char* buffer, uint32_t length) { auto result_callback = [this, scgi_thread](const char* b, uint32_t l) { receive_write(b, l); - scgi_thread->callback(this, [this]() { + scgi_thread->callback_interrupt_pollling(this, [this]() { // Only need to lock once here as a memory barrier. m_result_mutex.lock(); m_result_mutex.unlock(); @@ -280,7 +280,7 @@ SCgiTask::receive_call(const char* buffer, uint32_t length) { switch (content_type()) { case rpc::SCgiTask::ContentType::JSON: - torrent::main_thread()->callback(this, [buffer, length, result_callback]() { + torrent::main_thread()->callback_interrupt_pollling(this, [buffer, length, result_callback]() { rpc.process(RpcManager::RPCType::JSON, buffer, length, [result_callback](const char* b, uint32_t l) { result_callback(b, l); @@ -290,7 +290,7 @@ SCgiTask::receive_call(const char* buffer, uint32_t length) { break; case rpc::SCgiTask::ContentType::XML: - torrent::main_thread()->callback(this, [buffer, length, result_callback]() { + torrent::main_thread()->callback_interrupt_pollling(this, [buffer, length, result_callback]() { rpc.process(RpcManager::RPCType::XML, buffer, length, [result_callback](const char* b, uint32_t l) { result_callback(b, l);