summaryrefslogtreecommitdiff
path: root/chromium/base/command_line.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/base/command_line.cc')
-rw-r--r--chromium/base/command_line.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/chromium/base/command_line.cc b/chromium/base/command_line.cc
index 873da813483..a09fc467421 100644
--- a/chromium/base/command_line.cc
+++ b/chromium/base/command_line.cc
@@ -212,7 +212,7 @@ void CommandLine::InitUsingArgvForTesting(int argc, const char* const* argv) {
#endif
// static
-bool CommandLine::Init(int argc, const char* const* argv) {
+bool CommandLine::CreateEmpty() {
if (current_process_commandline_) {
// If this is intentional, Reset() must be called first. If we are using
// the shared build mode, we have to share a single object across multiple
@@ -221,6 +221,14 @@ bool CommandLine::Init(int argc, const char* const* argv) {
}
current_process_commandline_ = new CommandLine(NO_PROGRAM);
+ return true;
+}
+
+// static
+bool CommandLine::Init(int argc, const char* const* argv) {
+ if (!CreateEmpty())
+ return false;
+
#if defined(OS_WIN)
current_process_commandline_->ParseFromString(::GetCommandLineW());
#elif defined(OS_POSIX)