summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYaniv Kamay <ykamay@redhat.com>2010-01-09 15:54:33 +0200
committerYaniv Kamay <ykamay@redhat.com>2010-01-10 13:40:53 +0200
commit0bd3b58bc916525f957994acda875f96c7a036dc (patch)
treeff420a09e3c3b8801cd268bface296463d55542e
parentdb5375a5f898c396fc7e66abf1bb761b16c5a684 (diff)
downloadspice-0bd3b58bc916525f957994acda875f96c7a036dc.tar.gz
spice-0bd3b58bc916525f957994acda875f96c7a036dc.tar.xz
spice-0bd3b58bc916525f957994acda875f96c7a036dc.zip
client: fix logger init mix-up
enable log rotate in case RED_DEBUG is not defined and disable log rotate in case RED_DEBUG is defined
-rw-r--r--client/application.cpp6
-rw-r--r--client/windows/platform.cpp23
-rw-r--r--client/x11/platform.cpp8
3 files changed, 13 insertions, 24 deletions
diff --git a/client/application.cpp b/client/application.cpp
index d429ad31..1405c705 100644
--- a/client/application.cpp
+++ b/client/application.cpp
@@ -1771,12 +1771,12 @@ void Application::init_logger()
#ifdef RED_DEBUG
root.setPriority(log4cpp::Priority::DEBUG);
root.removeAllAppenders();
- ::close(fd);
- root.addAppender(new log4cpp::RollingFileAppender("_", log_file_name));
+ root.addAppender(new log4cpp::FileAppender("_", fd));
#else
root.setPriority(log4cpp::Priority::INFO);
root.removeAllAppenders();
- root.addAppender(new log4cpp::FileAppender("_", fd));
+ ::close(fd);
+ root.addAppender(new log4cpp::RollingFileAppender("_", log_file_name));
#endif
}
diff --git a/client/windows/platform.cpp b/client/windows/platform.cpp
index f92f2cce..dcdb84e3 100644
--- a/client/windows/platform.cpp
+++ b/client/windows/platform.cpp
@@ -430,24 +430,7 @@ bool Platform::is_monitors_pos_valid()
return true;
}
-/*
-void Platform::get_spice_config_dir(std::string& path)
-{
- char app_data_path[MAX_PATH];
- HRESULT res = SHGetFolderPathA(NULL, CSIDL_APPDATA, NULL, 0, app_data_path);
- if (res != S_OK) {
- throw Exception("get user app data dir failed");
- }
-
- path = app_data_path;
- if (strcmp((app_data_path + strlen(app_data_path) - 2), "\\") != 0) {
- path += "\\";
- }
- path += SPICE_CONFIG_DIR;
-}
-*/
-
-static void Platform::get_app_data_dir(std::string& path, const std::string& app_name);
+void Platform::get_app_data_dir(std::string& path, const std::string& app_name)
{
char app_data_path[MAX_PATH];
HRESULT res = SHGetFolderPathA(NULL, CSIDL_APPDATA, NULL, 0, app_data_path);
@@ -458,12 +441,12 @@ static void Platform::get_app_data_dir(std::string& path, const std::string& app
path = app_data_path;
path_append(path, app_name);
- if (!CreateDirectory(path.c_str()) && GetLastError() != ERROR_ALREADY_EXISTS) {
+ if (!CreateDirectoryA(path.c_str(), NULL) && GetLastError() != ERROR_ALREADY_EXISTS) {
throw Exception("create user app data dir failed");
}
}
-static void Platform::path_append(std::string& path, const std::string& partial_path)
+void Platform::path_append(std::string& path, const std::string& partial_path)
{
path += "\\";
path += partial_path;
diff --git a/client/x11/platform.cpp b/client/x11/platform.cpp
index 473ba892..1bedb225 100644
--- a/client/x11/platform.cpp
+++ b/client/x11/platform.cpp
@@ -1899,11 +1899,17 @@ void Platform::get_app_data_dir(std::string& path, const std::string& app_name)
{
const char* home_dir = getenv("HOME");
- if (!home_dir) {
+ if (!home_dir || strlen(home_dir) == 0) {
throw Exception("get home dir failed");
}
path = home_dir;
+ std::string::iterator end = path.end();
+
+ while (end != path.begin() && *(end - 1) == '/') {
+ path.erase(--end);
+ }
+
path += "/.";
path += app_name;