From 067d067973062dc5e1332369b770f3d0db269e07 Mon Sep 17 00:00:00 2001 From: Cyril Jourdan Date: Tue, 5 Feb 2013 17:29:25 +0100 Subject: cleo/devkit/plcd: do not try to close file if open failed, closes #3746 --- cleopatre/devkit/plcd/src/plcd_autoswitch.c | 30 +++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/cleopatre/devkit/plcd/src/plcd_autoswitch.c b/cleopatre/devkit/plcd/src/plcd_autoswitch.c index 206df0568f..ed028aa029 100644 --- a/cleopatre/devkit/plcd/src/plcd_autoswitch.c +++ b/cleopatre/devkit/plcd/src/plcd_autoswitch.c @@ -75,22 +75,24 @@ plcd_autoswitch_timer_init (void) FILE *fp = NULL; /* Check if autoswitch is enabled. */ - if (((fp = fopen (PLCD_AUTOSWITCH_PROC, "r")) != NULL) - && (fscanf (fp, "%d", &autoswitch_en) != 0) - && (autoswitch_en == 1)) + if (fp = fopen (PLCD_AUTOSWITCH_PROC, "r") != NULL) { - /* Launch autoswitch timer. */ - timer_create (CLOCK_REALTIME, NULL, &autoswitch_timer); - its.it_value.tv_sec = PLCD_AUTOSWITCH_TIMEOUT_SEC; - its.it_value.tv_nsec = 0; - its.it_interval.tv_sec = 0; - its.it_interval.tv_nsec = 0; - timer_settime (autoswitch_timer, 0, &its, NULL); + if ((fscanf (fp, "%d", &autoswitch_en) != 0) + && (autoswitch_en == 1)) + { + /* Launch autoswitch timer. */ + timer_create (CLOCK_REALTIME, NULL, &autoswitch_timer); + its.it_value.tv_sec = PLCD_AUTOSWITCH_TIMEOUT_SEC; + its.it_value.tv_nsec = 0; + its.it_interval.tv_sec = 0; + its.it_interval.tv_nsec = 0; + timer_settime (autoswitch_timer, 0, &its, NULL); - autoswitch_timer_alive = 1; + autoswitch_timer_alive = 1; - signal (SIGALRM, plcd_autoswitch_handler); - } + signal (SIGALRM, plcd_autoswitch_handler); + } - fclose (fp); + fclose (fp); + } } -- cgit v1.2.3