diff options
-rw-r--r-- | cs/CHANGES | 3 | ||||
-rwxr-xr-x | cs/src/Ice/PluginManagerI.cs | 11 |
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. // |