This is an automated email from the ASF dual-hosted git repository.

sorber pushed a commit to branch 6.2.x
in repository https://git-dual.apache.org/repos/asf/trafficserver.git

commit 251e5e95a4e56f33f1ca30be3ea2fbb82234dcfa
Author: David Calavera <david.calav...@gmail.com>
AuthorDate: Mon Jun 13 09:49:15 2016 -0700

    [TS-4529] Adjust thread with the right continuation. This closes #703.
    
    Signed-off-by: David Calavera <david.calav...@gmail.com>
    (cherry picked from commit bb4d873356a7760044f026c09811ae41134fc751)
---
 proxy/ProxyClientTransaction.cc | 4 ++--
 proxy/ProxyClientTransaction.h  | 2 +-
 proxy/http/HttpSM.cc            | 4 ++--
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/proxy/ProxyClientTransaction.cc b/proxy/ProxyClientTransaction.cc
index 067bb93..f33f712 100644
--- a/proxy/ProxyClientTransaction.cc
+++ b/proxy/ProxyClientTransaction.cc
@@ -86,13 +86,13 @@ 
ProxyClientTransaction::attach_server_session(HttpServerSession *ssession, bool
 }
 
 Action *
-ProxyClientTransaction::adjust_thread(int event, void *data)
+ProxyClientTransaction::adjust_thread(Continuation *cont, int event, void 
*data)
 {
   NetVConnection *vc = this->get_netvc();
   EThread *this_thread = this_ethread();
   if (vc && vc->thread != this_thread) {
     if (vc->thread->is_event_type(ET_NET) || 
vc->thread->is_event_type(SSLNetProcessor::ET_SSL)) {
-      return vc->thread->schedule_imm(this, event, data);
+      return vc->thread->schedule_imm(cont, event, data);
     } else { // Not a net thread, take over this thread
       vc->thread = this_thread;
     }
diff --git a/proxy/ProxyClientTransaction.h b/proxy/ProxyClientTransaction.h
index e724aaf..f2bbcb9 100644
--- a/proxy/ProxyClientTransaction.h
+++ b/proxy/ProxyClientTransaction.h
@@ -51,7 +51,7 @@ public:
 
   // See if we need to schedule on the primary thread for the transaction or 
change the thread that is associated with the VC.
   // If we reschedule, the scheduled action is returned.  Otherwise, NULL is 
returned
-  Action *adjust_thread(int event, void *data);
+  Action *adjust_thread(Continuation *cont, int event, void *data);
 
   int
   get_transact_count() const
diff --git a/proxy/http/HttpSM.cc b/proxy/http/HttpSM.cc
index 2996250..8237a56 100644
--- a/proxy/http/HttpSM.cc
+++ b/proxy/http/HttpSM.cc
@@ -2456,7 +2456,7 @@ HttpSM::state_cache_open_write(int event, void *data)
 
   // Make sure we are on the "right" thread
   if (ua_session) {
-    if ((pending_action = ua_session->adjust_thread(event, data))) {
+    if ((pending_action = ua_session->adjust_thread(this, event, data))) {
       return 0; // Go away if we reschedule
     }
   }
@@ -4664,7 +4664,7 @@ HttpSM::do_http_server_open(bool raw)
 
   // Make sure we are on the "right" thread
   if (ua_session) {
-    if ((pending_action = ua_session->adjust_thread(EVENT_INTERVAL, NULL))) {
+    if ((pending_action = ua_session->adjust_thread(this, EVENT_INTERVAL, 
NULL))) {
       return; // Go away if we reschedule
     }
   }

-- 
To stop receiving notification emails like this one, please contact
"commits@trafficserver.apache.org" <commits@trafficserver.apache.org>.

Reply via email to