diff options
author | Daniel Friesel <derf@finalrewind.org> | 2014-05-22 16:01:24 +0200 |
---|---|---|
committer | Daniel Friesel <derf@finalrewind.org> | 2014-05-22 16:01:24 +0200 |
commit | 717f2a00b002b0bf17f874f8d542a22175b9ad2f (patch) | |
tree | 7895aba7e3929bc85a7f917ff16c479d7bcba928 /src | |
parent | 28053de1b28721e39a74e2190d75183c700acdc9 (diff) |
wallpaper.c: Handle missing HOME
Diffstat (limited to 'src')
-rw-r--r-- | src/wallpaper.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/wallpaper.c b/src/wallpaper.c index 02c0549..6e629dc 100644 --- a/src/wallpaper.c +++ b/src/wallpaper.c @@ -228,9 +228,19 @@ void feh_wm_set_bg(char *fil, Imlib_Image im, int centered, int scaled, char bgfil[4096]; char sendbuf[4096]; + /* + * TODO this re-implements mkstemp (badly). However, it is only needed + * for non-file images and enlightenment. Might be easier to just remove + * it. + */ + snprintf(bgname, sizeof(bgname), "FEHBG_%d", num); if (!fil && im) { + if (getenv("HOME") == NULL) { + weprintf("Cannot save wallpaper to temporary file: You have no HOME"); + return; + } snprintf(bgfil, sizeof(bgfil), "%s/.%s.png", getenv("HOME"), bgname); imlib_context_set_image(im); imlib_image_set_format("png"); |