diff options
| author | Marco Trevisan (Treviño) <mail@3v1n0.net> | 2016-02-09 17:06:47 +0100 | 
|---|---|---|
| committer | Marco Trevisan (Treviño) <mail@3v1n0.net> | 2016-02-09 17:06:47 +0100 | 
| commit | ff51b6a783fd66ea378ab769025fb34b2860ff2e (patch) | |
| tree | 20f29c287dd68855319cd7662ef8e245cfac0b34 /UnityCore | |
| parent | 0973cb0c1e889358e155f2ad4241264a50231606 (diff) | |
DesktopUtilities: add GetUserHomeDirectory
(bzr r4068.4.1)
Diffstat (limited to 'UnityCore')
| -rw-r--r-- | UnityCore/DesktopUtilities.cpp | 11 | ||||
| -rw-r--r-- | UnityCore/DesktopUtilities.h | 1 | 
2 files changed, 9 insertions, 3 deletions
| diff --git a/UnityCore/DesktopUtilities.cpp b/UnityCore/DesktopUtilities.cpp index a9a41c5e7..a0600d784 100644 --- a/UnityCore/DesktopUtilities.cpp +++ b/UnityCore/DesktopUtilities.cpp @@ -35,6 +35,11 @@ namespace  DECLARE_LOGGER(logger, "unity.desktop.utilities");  } +std::string DesktopUtilities::GetUserHomeDirectory() +{ + return glib::gchar_to_string(g_get_home_dir()); +} +  std::string DesktopUtilities::GetUserDataDirectory()  {  const char* user_dir = g_get_user_data_dir(); @@ -43,12 +48,12 @@ std::string DesktopUtilities::GetUserDataDirectory()  return user_dir;  // This shouldn't ever happen, but let's manually fallback to the default - const char* home = g_get_home_dir(); + auto home = GetUserHomeDirectory(); - if (home) + if (!home.empty())  {  const char* subdir = G_DIR_SEPARATOR_S ".local" G_DIR_SEPARATOR_S "share"; - return std::string(home).append(subdir); + return home.append(subdir);  }  return ""; diff --git a/UnityCore/DesktopUtilities.h b/UnityCore/DesktopUtilities.h index 203603ea1..c3c94b9b3 100644 --- a/UnityCore/DesktopUtilities.h +++ b/UnityCore/DesktopUtilities.h @@ -29,6 +29,7 @@ namespace unity  class DesktopUtilities  {  public: + static std::string GetUserHomeDirectory();  static std::string GetUserDataDirectory();  static std::string GetUserCacheDirectory();  static std::string GetUserRuntimeDirectory(); | 
