瀏覽代碼

Merge pull request #59 from chrboe/xdg-cache-dir

Respect XDG_CACHE_HOME
Joachim Nilsson 6 年之前
父節點
當前提交
08bb6f2703
沒有帳戶連結到提交者的電子郵件
共有 1 個文件被更改,包括 8 次插入3 次删除
  1. 8
    3
      src/light.c

+ 8
- 3
src/light.c 查看文件

@@ -303,10 +303,15 @@ bool light_initialize(int argc, char **argv)
303 303
 	int rc;
304 304
 
305 305
 	/* Classic SUID root mode or new user based cache files */
306
-	if (geteuid() == 0)
306
+	if (geteuid() == 0) {
307 307
 		snprintf(ctx.prefix, sizeof(ctx.prefix), "%s", "/etc/light");
308
-	else
309
-		snprintf(ctx.prefix, sizeof(ctx.prefix), "%s/.cache/light", getenv("HOME"));
308
+	} else {
309
+		char *xdg_cache = getenv("XDG_CACHE_HOME");
310
+		if (xdg_cache != NULL)
311
+			snprintf(ctx.prefix, sizeof(ctx.prefix), "%s/light", xdg_cache);
312
+		else
313
+			snprintf(ctx.prefix, sizeof(ctx.prefix), "%s/.cache/light", getenv("HOME"));
314
+	}
310 315
 
311 316
 	light_defaults();
312 317
 	if (!light_parse_args(argc, argv)) {