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

shinrich pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficserver.git


The following commit(s) were added to refs/heads/master by this push:
     new 17d1203  Ensure continuation lock on read and write signal
17d1203 is described below

commit 17d12031bd23b8f5b047f151e5909c375d99bc5d
Author: Susan Hinrichs <shinr...@oath.com>
AuthorDate: Mon Aug 13 16:14:04 2018 +0000

    Ensure continuation lock on read and write signal
---
 iocore/net/UnixNetVConnection.cc | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/iocore/net/UnixNetVConnection.cc b/iocore/net/UnixNetVConnection.cc
index ccd620a..afc7dfb 100644
--- a/iocore/net/UnixNetVConnection.cc
+++ b/iocore/net/UnixNetVConnection.cc
@@ -78,9 +78,10 @@ net_activity(UnixNetVConnection *vc, EThread *thread)
 static inline int
 read_signal_and_update(int event, UnixNetVConnection *vc)
 {
+  int retval = EVENT_CONT;
   vc->recursion++;
   if (vc->read.vio.cont) {
-    vc->read.vio.cont->handleEvent(event, &vc->read.vio);
+    retval = vc->read.vio.cont->dispatchEvent(event, &vc->read.vio);
   } else {
     switch (event) {
     case VC_EVENT_EOS:
@@ -102,16 +103,17 @@ read_signal_and_update(int event, UnixNetVConnection *vc)
     vc->nh->free_netvc(vc);
     return EVENT_DONE;
   } else {
-    return EVENT_CONT;
+    return retval;
   }
 }
 
 static inline int
 write_signal_and_update(int event, UnixNetVConnection *vc)
 {
+  int retval = EVENT_CONT;
   vc->recursion++;
   if (vc->write.vio.cont) {
-    vc->write.vio.cont->handleEvent(event, &vc->write.vio);
+    retval = vc->write.vio.cont->dispatchEvent(event, &vc->write.vio);
   } else {
     switch (event) {
     case VC_EVENT_EOS:
@@ -133,7 +135,7 @@ write_signal_and_update(int event, UnixNetVConnection *vc)
     vc->nh->free_netvc(vc);
     return EVENT_DONE;
   } else {
-    return EVENT_CONT;
+    return retval;
   }
 }
 

Reply via email to