linux: apm: fix retry opening of apm proc file
authorFerry Huberts <ferry.huberts@pelagic.nl>
Tue, 23 Oct 2012 12:12:33 +0000 (14:12 +0200)
committerFerry Huberts <ferry.huberts@pelagic.nl>
Tue, 23 Oct 2012 12:49:41 +0000 (14:49 +0200)
Coverity:
CID 739684 (#1 of 1): Resource leak (RESOURCE_LEAK)
At (6): Variable "apm_procfile" going out of scope leaks the storage it
        points to.

Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
src/linux/apm.c

index a9d5648..e0436e6 100644 (file)
@@ -168,7 +168,7 @@ apm_read_apm(struct olsr_apm_info *ainfo)
   if (fgets(buffer, sizeof(buffer), apm_procfile) == NULL) {
     fclose(apm_procfile);
     /* Try re-opening the file */
   if (fgets(buffer, sizeof(buffer), apm_procfile) == NULL) {
     fclose(apm_procfile);
     /* Try re-opening the file */
-    if ((apm_procfile = fopen(APM_PROC, "r")) != NULL)
+    if ((apm_procfile = fopen(APM_PROC, "r")) == NULL)
       return 0;
 
     if (fgets(buffer, sizeof(buffer), apm_procfile) == NULL) {
       return 0;
 
     if (fgets(buffer, sizeof(buffer), apm_procfile) == NULL) {