summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cs/CHANGES3
-rwxr-xr-xcs/src/Ice/PluginManagerI.cs11
2 files changed, 14 insertions, 0 deletions
diff --git a/cs/CHANGES b/cs/CHANGES
index b89d5a92eb2..e04be3b3c97 100644
--- a/cs/CHANGES
+++ b/cs/CHANGES
@@ -1,6 +1,9 @@
Changes since version 3.1.1
---------------------------
+- Fixed a bug in the plugin property parsing code: if the file name of
+ a plugin included a drive letter, the plugin did not load.
+
- Added Communicator::isShutdown() and ObjectAdapter::isDeactivated() to
allow applications to determine, respectively, whether communicator has
been shutdown or object adapter has been deactivated.
diff --git a/cs/src/Ice/PluginManagerI.cs b/cs/src/Ice/PluginManagerI.cs
index 32071a95ce0..f5e34a2aa59 100755
--- a/cs/src/Ice/PluginManagerI.cs
+++ b/cs/src/Ice/PluginManagerI.cs
@@ -243,6 +243,17 @@ namespace Ice
int start = pluginSpec.IndexOf(':');
if(start != -1)
{
+ //
+ // Skip drive letter, if any.
+ //
+ if(pluginSpec.Length > 3 &&
+ start == 1 &&
+ System.Char.IsLetter(pluginSpec[0]) &&
+ (pluginSpec[2] == '\\' || pluginSpec[2] == '/'))
+ {
+ start = pluginSpec.IndexOf(':', 3);
+ }
+
//
// Find the whitespace.
//