summaryrefslogtreecommitdiff
path: root/devel/ice/files/patch-cpp-src-Glacier2-RequestQueue.cpp
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--devel/ice/files/patch-cpp-src-Glacier2-RequestQueue.cpp74
1 files changed, 0 insertions, 74 deletions
diff --git a/devel/ice/files/patch-cpp-src-Glacier2-RequestQueue.cpp b/devel/ice/files/patch-cpp-src-Glacier2-RequestQueue.cpp
deleted file mode 100644
index e6b336b265c1..000000000000
--- a/devel/ice/files/patch-cpp-src-Glacier2-RequestQueue.cpp
+++ /dev/null
@@ -1,74 +0,0 @@
---- cpp.orig/src/Glacier2/RequestQueue.cpp 2011-06-15 21:43:58.000000000 +0200
-+++ cpp/src/Glacier2/RequestQueue.cpp 2012-03-04 19:39:27.000000000 +0100
-@@ -185,7 +185,8 @@
- _callback(newCallback_Object_ice_invoke(this, &RequestQueue::response, &RequestQueue::exception,
- &RequestQueue::sent)),
- _flushCallback(newCallback_Connection_flushBatchRequests(this, &RequestQueue::exception, &RequestQueue::sent)),
-- _pendingSend(false)
-+ _pendingSend(false),
-+ _destroyed(false)
- {
- }
-
-@@ -241,6 +242,37 @@
- }
-
- void
-+Glacier2::RequestQueue::destroy()
-+{
-+ IceUtil::Mutex::Lock lock(*this);
-+
-+ _destroyed = true;
-+
-+ //
-+ // Although the session has been destroyed, we cannot destroy this queue
-+ // until all requests have completed.
-+ //
-+ if(_requests.empty())
-+ {
-+ destroyInternal();
-+ }
-+}
-+
-+void
-+Glacier2::RequestQueue::destroyInternal()
-+{
-+ //
-+ // Must be called with the mutex locked.
-+ //
-+
-+ //
-+ // Remove cyclic references.
-+ //
-+ const_cast<Ice::Callback_Object_ice_invokePtr&>(_callback) = 0;
-+ const_cast<Ice::Callback_Connection_flushBatchRequestsPtr&>(_flushCallback) = 0;
-+}
-+
-+void
- Glacier2::RequestQueue::flush()
- {
- assert(_connection);
-@@ -289,6 +321,11 @@
- _pendingSendRequest = 0;
- }
- }
-+
-+ if(_destroyed && _requests.empty())
-+ {
-+ destroyInternal();
-+ }
- }
-
- void
-@@ -312,6 +349,11 @@
- }
- }
- _requests.clear();
-+
-+ if(_destroyed)
-+ {
-+ destroyInternal();
-+ }
- }
-
- void