diff --git a/src/conky.c b/src/conky.c index e455c8ac..5ced9432 100644 --- a/src/conky.c +++ b/src/conky.c @@ -640,12 +640,16 @@ static struct text_object global_root_object; static inline void read_exec(const char *data, char *buf, const int size) { FILE *fp = popen(data, "r"); - int length = fread(buf, 1, size, fp); + if(fp) { + int length = fread(buf, 1, size, fp); - pclose(fp); - buf[length] = '\0'; - if (length > 0 && buf[length - 1] == '\n') { - buf[length - 1] = '\0'; + pclose(fp); + buf[length] = '\0'; + if (length > 0 && buf[length - 1] == '\n') { + buf[length - 1] = '\0'; + } + } else { + buf[0] = '\0'; } }