From 81f82b4b8177245181d5fcd417cb36dad6170059 Mon Sep 17 00:00:00 2001 From: Nikolas Garofil Date: Sat, 25 Jul 2009 14:36:55 +0200 Subject: [PATCH] Handle if popen should fail --- src/conky.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) 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'; } }