Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/mcs
diff options
context:
space:
mode:
authorAtsushi Eno <atsushieno@gmail.com>2010-01-22 11:18:19 +0300
committerAtsushi Eno <atsushieno@gmail.com>2010-01-22 11:18:19 +0300
commit79c79e577bda706d52286a4ca898d41069be7771 (patch)
tree2a211474d8033ff2e971ba1e021f5309f4994a44 /mcs
parenteb13491be618426d52f0bbfed47d5e8ad00a9890 (diff)
2010-01-22 Atsushi Enomoto <atsushi@ximian.com>
* DuplexClientRuntimeChannel.cs : do not try to iterate channel acceptor when it is being closed. * ChannelDispatcher.cs : do not try to iterate channel acceptor when it is being closed. svn path=/trunk/mcs/; revision=150047
Diffstat (limited to 'mcs')
-rw-r--r--mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChangeLog5
-rw-r--r--mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChannelDispatcher.cs4
-rwxr-xr-xmcs/class/System.ServiceModel/System.ServiceModel/ChangeLog5
-rw-r--r--mcs/class/System.ServiceModel/System.ServiceModel/DuplexClientRuntimeChannel.cs2
4 files changed, 13 insertions, 3 deletions
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChangeLog b/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChangeLog
index 5781898ebe6..7481770a648 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChangeLog
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChangeLog
@@ -1,3 +1,8 @@
+2010-01-22 Atsushi Enomoto <atsushi@ximian.com>
+
+ * ChannelDispatcher.cs : do not try to iterate channel acceptor when
+ it is being closed.
+
2010-01-19 Atsushi Enomoto <atsushi@ximian.com>
* ChannelDispatcher.cs : another error audit.
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChannelDispatcher.cs b/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChannelDispatcher.cs
index 2f1bf004269..9c2c0221813 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChannelDispatcher.cs
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChannelDispatcher.cs
@@ -594,7 +594,7 @@ namespace System.ServiceModel.Dispatcher
if (rc != null)
rc.Close ();
// unless it is closed by session/call manager, move it back to the loop to receive the next message.
- if (reply.State != CommunicationState.Closed)
+ if (loop && reply.State != CommunicationState.Closed)
ProcessRequestOrInput (reply);
}
}
@@ -612,7 +612,7 @@ namespace System.ServiceModel.Dispatcher
Console.WriteLine (ex);
} finally {
// unless it is closed by session/call manager, move it back to the loop to receive the next message.
- if (input.State != CommunicationState.Closed)
+ if (loop && input.State != CommunicationState.Closed)
ProcessRequestOrInput (input);
}
}
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel/ChangeLog b/mcs/class/System.ServiceModel/System.ServiceModel/ChangeLog
index bf940134630..1969b60f558 100755
--- a/mcs/class/System.ServiceModel/System.ServiceModel/ChangeLog
+++ b/mcs/class/System.ServiceModel/System.ServiceModel/ChangeLog
@@ -1,3 +1,8 @@
+2010-01-22 Atsushi Enomoto <atsushi@ximian.com>
+
+ * DuplexClientRuntimeChannel.cs : do not try to iterate channel
+ acceptor when it is being closed.
+
2010-01-20 Atsushi Enomoto <atsushi@ximian.com>
* ServiceHostBase.cs : a stability workaround to make nunit test
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel/DuplexClientRuntimeChannel.cs b/mcs/class/System.ServiceModel/System.ServiceModel/DuplexClientRuntimeChannel.cs
index ef8f8004725..43d6e2168ec 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel/DuplexClientRuntimeChannel.cs
+++ b/mcs/class/System.ServiceModel/System.ServiceModel/DuplexClientRuntimeChannel.cs
@@ -164,7 +164,7 @@ namespace System.ServiceModel
Console.WriteLine (ex);
} finally {
// unless it is closed by session/call manager, move it back to the loop to receive the next message.
- if (input.State != CommunicationState.Closed)
+ if (loop && input.State != CommunicationState.Closed)
ProcessRequestOrInput (input);
}
}