From 32afb683f269c993a81e69c6e977d6e4c4a9cee4 Mon Sep 17 00:00:00 2001 From: Witold Filipczyk Date: Fri, 24 Jun 2022 22:03:07 +0200 Subject: [PATCH] [leds] Check return value of fscanf --- src/bfu/leds.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/bfu/leds.c b/src/bfu/leds.c index 5c08e494..ee09ed25 100644 --- a/src/bfu/leds.c +++ b/src/bfu/leds.c @@ -217,6 +217,7 @@ draw_temperature_node(struct session *ses, int xpos, int ypos, unsigned int node struct terminal *term = ses->tab->term; FILE *f; int temp = 0; + int ret; struct string text; int i; int length; @@ -224,9 +225,16 @@ draw_temperature_node(struct session *ses, int xpos, int ypos, unsigned int node f = fopen(get_leds_temperature_filename(), "r"); - if (!f) return 0; - fscanf(f, "%d", &temp); + if (!f) { + return 0; + } + ret = fscanf(f, "%d", &temp); fclose(f); + + if (ret < 1) { + return 0; + } + if (!init_string(&text)) { return 0; }