Home | History | Annotate | Download | only in browser
      1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "chrome/browser/user_data_dir_extractor.h"
      6 
      7 #include "base/files/file_path.h"
      8 #include "base/logging.h"
      9 #include "base/path_service.h"
     10 #include "chrome/common/chrome_paths.h"
     11 
     12 namespace chrome {
     13 
     14 base::FilePath GetUserDataDir(const content::MainFunctionParams& parameters) {
     15   base::FilePath user_data_dir;
     16 
     17   // Getting the user data dir can fail if the directory isn't creatable, for
     18   // example: on Windows we bring up a dialog prompting the user to pick a
     19   // different directory. However, ProcessSingleton needs a real user_data_dir
     20   // on Mac/Linux, so it's better to fail here than fail mysteriously elsewhere.
     21   CHECK(PathService::Get(chrome::DIR_USER_DATA, &user_data_dir))
     22       << "Must be able to get user data directory!";
     23   return user_data_dir;
     24 }
     25 
     26 }  // namespace chrome
     27