| Index: trunk/src/chrome/browser/first_run/first_run_linux.cc
|
| ===================================================================
|
| --- trunk/src/chrome/browser/first_run/first_run_linux.cc (revision 201967)
|
| +++ trunk/src/chrome/browser/first_run/first_run_linux.cc (working copy)
|
| @@ -31,6 +31,37 @@
|
| return true;
|
| }
|
|
|
| +// TODO(port): This is just a piece of the silent import functionality from
|
| +// ImportSettings for Windows. It would be nice to get the rest of it ported.
|
| +bool ImportBookmarks(const base::FilePath& import_bookmarks_path) {
|
| + const CommandLine& cmdline = *CommandLine::ForCurrentProcess();
|
| + CommandLine import_cmd(cmdline.GetProgram());
|
| +
|
| + // Propagate user data directory switch.
|
| + if (cmdline.HasSwitch(switches::kUserDataDir)) {
|
| + import_cmd.AppendSwitchPath(switches::kUserDataDir,
|
| + cmdline.GetSwitchValuePath(switches::kUserDataDir));
|
| + }
|
| + // Since ImportSettings is called before the local state is stored on disk
|
| + // we pass the language as an argument. GetApplicationLocale checks the
|
| + // current command line as fallback.
|
| + import_cmd.AppendSwitchASCII(switches::kLang,
|
| + g_browser_process->GetApplicationLocale());
|
| +
|
| + import_cmd.CommandLine::AppendSwitchPath(switches::kImportFromFile,
|
| + import_bookmarks_path);
|
| +
|
| + // The importer doesn't need to do any background networking tasks so disable
|
| + // them.
|
| + import_cmd.CommandLine::AppendSwitch(switches::kDisableBackgroundNetworking);
|
| +
|
| + // Time to launch the process that is going to do the import. We'll wait
|
| + // for the process to return.
|
| + base::LaunchOptions options;
|
| + options.wait = true;
|
| + return base::LaunchProcess(import_cmd, options, NULL);
|
| +}
|
| +
|
| base::FilePath MasterPrefsPath() {
|
| // The standard location of the master prefs is next to the chrome binary.
|
| base::FilePath master_prefs;
|
|
|