diff options
author | Dwayne Boone <dwayne@zeroc.com> | 2006-06-07 15:23:05 +0000 |
---|---|---|
committer | Dwayne Boone <dwayne@zeroc.com> | 2006-06-07 15:23:05 +0000 |
commit | 8159773193ab95b7b35aec8cba4cc03f473c0dda (patch) | |
tree | dd0ec9401db8dd8b588465a62fa6662c4f523cc3 /cpp/src | |
parent | IceGrid Win32 fixes (diff) | |
download | ice-8159773193ab95b7b35aec8cba4cc03f473c0dda.tar.bz2 ice-8159773193ab95b7b35aec8cba4cc03f473c0dda.tar.xz ice-8159773193ab95b7b35aec8cba4cc03f473c0dda.zip |
Fixed bug 1042
Diffstat (limited to 'cpp/src')
-rw-r--r-- | cpp/src/Ice/CommunicatorI.h | 2 | ||||
-rw-r--r-- | cpp/src/Ice/Initialize.cpp | 11 |
2 files changed, 7 insertions, 6 deletions
diff --git a/cpp/src/Ice/CommunicatorI.h b/cpp/src/Ice/CommunicatorI.h index d7087d703f4..fe29d051696 100644 --- a/cpp/src/Ice/CommunicatorI.h +++ b/cpp/src/Ice/CommunicatorI.h @@ -68,7 +68,7 @@ private: // void finishSetup(int&, char*[]); - friend ICE_API CommunicatorPtr initialize(int&, char*[], InitializationData, Int); + friend ICE_API CommunicatorPtr initialize(int&, char*[], const InitializationData&, Int); friend ICE_API ::IceInternal::InstancePtr IceInternal::getInstance(const ::Ice::CommunicatorPtr&); const ::IceInternal::InstancePtr _instance; diff --git a/cpp/src/Ice/Initialize.cpp b/cpp/src/Ice/Initialize.cpp index b8bd4946e72..ca108e8db85 100644 --- a/cpp/src/Ice/Initialize.cpp +++ b/cpp/src/Ice/Initialize.cpp @@ -148,7 +148,7 @@ Ice::getDefaultProperties(int& argc, char* argv[]) } CommunicatorPtr -Ice::initialize(int& argc, char* argv[], InitializationData initData, Int version) +Ice::initialize(int& argc, char* argv[], const InitializationData& initData, Int version) { #ifndef ICE_IGNORE_VERSION // @@ -168,15 +168,16 @@ Ice::initialize(int& argc, char* argv[], InitializationData initData, Int versio } #endif - if(initData.properties == 0) + InitializationData tmpData = initData; + if(tmpData.properties == 0) { - initData.properties = getDefaultProperties(argc, argv); + tmpData.properties = getDefaultProperties(argc, argv); } StringSeq args = argsToStringSeq(argc, argv); - args = initData.properties->parseIceCommandLineOptions(args); + args = tmpData.properties->parseIceCommandLineOptions(args); stringSeqToArgs(args, argc, argv); - CommunicatorI* communicatorI = new CommunicatorI(initData); + CommunicatorI* communicatorI = new CommunicatorI(tmpData); CommunicatorPtr result = communicatorI; // For exception safety. communicatorI->finishSetup(argc, argv); return result; |