summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryamuna <yamuna@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2003-09-15 15:20:17 +0000
committeryamuna <yamuna@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2003-09-15 15:20:17 +0000
commit36d6fbd32bcc6f9132f11ea0e49b7fa4c438751b (patch)
treef660beff7f0be38e87947012cae0b5620a59e05e
parenta9d59cc76c3d750162aa2de48917481f937f8ee5 (diff)
downloadATCD-36d6fbd32bcc6f9132f11ea0e49b7fa4c438751b.tar.gz
ChangelogTag: Mon Sep 15 11:16:51 2003 Yamuna Krishnamurthy <yamuna@oomworks.com>
-rw-r--r--TAO/ChangeLog8
-rw-r--r--TAO/tao/RTScheduling/Request_Interceptor.cpp22
2 files changed, 23 insertions, 7 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog
index 94d1c3bbdf4..3bb2cebbf2a 100644
--- a/TAO/ChangeLog
+++ b/TAO/ChangeLog
@@ -1,3 +1,11 @@
+Mon Sep 15 11:16:51 2003 Yamuna Krishnamurthy <yamuna@oomworks.com>
+
+ * tao/RTScheduling/Request_Interceptor.cpp :
+
+ In send_reply when the DT is cancelled the method should return
+ and not continue as it used to before. Also corrected the
+ updation of previous current in TSS.
+
Mon Sep 15 07:05:31 2003 Chad Elliott <elliott_c@ociweb.com>
* tao/RTCORBA/RTCORBA.mpc:
diff --git a/TAO/tao/RTScheduling/Request_Interceptor.cpp b/TAO/tao/RTScheduling/Request_Interceptor.cpp
index 906b6495ce8..8cb6f399c98 100644
--- a/TAO/tao/RTScheduling/Request_Interceptor.cpp
+++ b/TAO/tao/RTScheduling/Request_Interceptor.cpp
@@ -131,7 +131,7 @@ Client_Interceptor::send_poll (PortableInterceptor::ClientRequestInfo_ptr ri
current = ACE_static_cast (TAO_RTScheduler_Current_i *,
tss->rtscheduler_current_impl_);
if (current != 0)
- current->scheduler ()->receive_reply (ri);
+ current->scheduler ()->send_poll (ri);
}
@@ -405,7 +405,19 @@ Server_Interceptor::send_reply (PortableInterceptor::ServerRequestInfo_ptr ri
current->cancel_thread (ACE_ENV_SINGLE_ARG_PARAMETER);
ACE_CHECK;
+ return;
}
+ else ACE_DEBUG ((LM_DEBUG,
+ "Thread Not Cancelled\n"));
+
+
+ // Inform scheduler that upcall is complete.
+ current->scheduler ()->send_reply (ri
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ current->cleanup_DT ();
+ current->cleanup_current ();
// Get the previous current if any.
prev_current = ACE_static_cast (TAO_RTScheduler_Current_i *,
@@ -417,13 +429,9 @@ Server_Interceptor::send_reply (PortableInterceptor::ServerRequestInfo_ptr ri
// Reset the previous current pointer.
tss->rtscheduler_previous_current_impl_ = 0;
- // Inform scheduler that upcall is complete.
- current->scheduler ()->send_reply (ri);
-
- current->cleanup_DT ();
- current->cleanup_current ();
-
}
+ else ACE_DEBUG ((LM_DEBUG,
+ "Send Reply Current is 0\n"));
}
void