Diff between 4d508d346b99f4970576f0e83f79fee72cdb5b2c and 841896ae172c08c1652af88d0994f0349912ed14

Changed Files

File Additions Deletions Status
obexd/src/main.c +6 -5 modified

Full Patch

diff --git a/obexd/src/main.c b/obexd/src/main.c
index 61a06b2..80645f8 100644
--- a/obexd/src/main.c
+++ b/obexd/src/main.c
@@ -50,8 +50,6 @@
 #include "obexd.h"
 #include "server.h"
 
-#define DEFAULT_ROOT_PATH "/tmp"
-
 #define DEFAULT_CAP_FILE CONFIGDIR "/capability.xml"
 
 static GMainLoop *main_loop = NULL;
@@ -167,7 +165,7 @@ static GOptionEntry options[] = {
 				"Specify root folder location. Both absolute "
 				"and relative can be used, but relative paths "
 				"are assumed to be relative to user $HOME "
-				"folder", "PATH" },
+				"folder. Default $XDG_CACHE_HOME", "PATH" },
 	{ "root-setup", 'S', 0, G_OPTION_ARG_STRING, &option_root_setup,
 				"Root folder setup script", "SCRIPT" },
 	{ "symlinks", 'l', 0, G_OPTION_ARG_NONE, &option_symlinks,
@@ -285,8 +283,11 @@ int main(int argc, char *argv[])
 		exit(EXIT_FAILURE);
 	}
 
-	if (option_root == NULL)
-		option_root = g_strdup(DEFAULT_ROOT_PATH);
+	if (option_root == NULL) {
+		option_root = g_build_filename(g_get_user_cache_dir(), "obexd",
+									NULL);
+		g_mkdir_with_parents(option_root, 0700);
+	}
 
 	if (option_root[0] != '/') {
 		char *old_root = option_root, *home = getenv("HOME");