summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp')
-rw-r--r--cpp/include/Ice/Application.h8
-rw-r--r--cpp/include/IceUtil/ArgVector.h2
-rw-r--r--cpp/src/Ice/Application.cpp23
-rw-r--r--cpp/src/IceUtil/ArgVector.cpp2
4 files changed, 18 insertions, 17 deletions
diff --git a/cpp/include/Ice/Application.h b/cpp/include/Ice/Application.h
index 54b2fce4296..926ea24bf3c 100644
--- a/cpp/include/Ice/Application.h
+++ b/cpp/include/Ice/Application.h
@@ -67,12 +67,12 @@ public:
// are printed if exceptions propagate to main(), and the
// Communicator is always destroyed, regardless of exceptions.
//
- int main(int, char*[]);
int main(int, char*[], const char*);
- int main(int, char*[], const Ice::InitializationData&);
- int main(const StringSeq&);
+ int main(int, char*[], const Ice::InitializationData& = Ice::InitializationData());
+ int main(int, char* const[], const char*);
+ int main(int, char* const[], const Ice::InitializationData& = Ice::InitializationData());
int main(const StringSeq&, const char*);
- int main(const StringSeq&, const Ice::InitializationData&);
+ int main(const StringSeq&, const Ice::InitializationData& = Ice::InitializationData());
virtual int run(int, char*[]) = 0;
diff --git a/cpp/include/IceUtil/ArgVector.h b/cpp/include/IceUtil/ArgVector.h
index 3fe66acef95..d6e70973cce 100644
--- a/cpp/include/IceUtil/ArgVector.h
+++ b/cpp/include/IceUtil/ArgVector.h
@@ -21,7 +21,7 @@ class ICE_UTIL_API ArgVector
{
public:
- ArgVector(int argc, char* argv[]);
+ ArgVector(int argc, char* const argv[]);
ArgVector(const ::std::vector< ::std::string>&);
ArgVector(const ArgVector&);
ArgVector& operator=(const ArgVector&);
diff --git a/cpp/src/Ice/Application.cpp b/cpp/src/Ice/Application.cpp
index 61568f144b3..91b77569524 100644
--- a/cpp/src/Ice/Application.cpp
+++ b/cpp/src/Ice/Application.cpp
@@ -302,12 +302,6 @@ Ice::Application::~Application()
}
int
-Ice::Application::main(int argc, char* argv[])
-{
- return main(argc, argv, InitializationData());
-}
-
-int
Ice::Application::main(int argc, char* argv[], const char* configFile)
{
//
@@ -369,7 +363,7 @@ Ice::Application::main(int argc, char* argv[], const InitializationData& initDat
//
CtrlCHandler ctrCHandler;
_ctrlCHandler = &ctrCHandler;
-
+
status = doMain(argc, argv, initData);
//
@@ -392,11 +386,18 @@ Ice::Application::main(int argc, char* argv[], const InitializationData& initDat
return status;
}
-int
-Ice::Application::main(const StringSeq& args)
+int
+Ice::Application::main(int argc, char* const argv[], const char* configFile)
{
- ArgVector av(args);
- return main(av.argc, av.argv);
+ ArgVector av(argc, argv);
+ return main(av.argc, av.argv, configFile);
+}
+
+int
+Ice::Application::main(int argc, char* const argv[], const Ice::InitializationData& initData)
+{
+ ArgVector av(argc, argv);
+ return main(av.argc, av.argv, initData);
}
int
diff --git a/cpp/src/IceUtil/ArgVector.cpp b/cpp/src/IceUtil/ArgVector.cpp
index 23a67e76372..d08790acaa9 100644
--- a/cpp/src/IceUtil/ArgVector.cpp
+++ b/cpp/src/IceUtil/ArgVector.cpp
@@ -11,7 +11,7 @@
#include <IceUtil/DisableWarnings.h>
#include <cstring>
-IceUtilInternal::ArgVector::ArgVector(int argc, char *argv[])
+IceUtilInternal::ArgVector::ArgVector(int argc, char* const argv[])
{
assert(argc >= 0);
_args.resize(argc);