Sophie

Sophie

distrib > Mageia > 3 > i586 > media > core-release-src > by-pkgid > c22e999c0d0535cb1069d18752aecedd > files > 2

bwm-ng-0.6-4.mga3.src.rpm

Index: bwmng/src/output.c
===================================================================
--- bwmng/src/output.c	(revision 124)
+++ bwmng/src/output.c	(revision 125)
@@ -223,8 +223,8 @@
 		        fprintf(tmp_out_file,"<title>bwm-ng stats</title>\n</head>\n<body>\n");
 			}
 	        fprintf(tmp_out_file,"<div class=\"bwm-ng-header\">bwm-ng bwm-ng v" VERSION " (refresh %is); input: ",html_refresh);
-            fprintf(tmp_out_file,input2str());
-            fprintf(tmp_out_file,show_all_if2str());
+            fprintf(tmp_out_file,"%s", input2str());
+            fprintf(tmp_out_file,"%s", show_all_if2str());
 	        fprintf(tmp_out_file,"</div><table class=\"bwm-ng-output\">");
 			fprintf(tmp_out_file,"<tr class=\"bwm-ng-head\"><td class=\"bwm-ng-name\">Interface</td><td>Rx</td><td>Tx</td><td>Total</td></tr>");
 			break;
@@ -234,7 +234,7 @@
 			if (output_method==PLAIN_OUT && ansi_output) printf("\033[1;2H");
 	        printf("bwm-ng v" VERSION " (delay %2.3fs); ",(float)delay/1000);
 			if (output_method==PLAIN_OUT) printf("press 'ctrl-c' to end this%s",(ansi_output ? "\033[2;2H" : "")); else printf("input: ");
-            printf(input2str());
+            printf("%s", input2str());
             printf("%s\n",show_all_if2str());
 			if (output_method==PLAIN_OUT) {
 				if (ansi_output)
Index: bwmng/src/input/proc_diskstats.c
===================================================================
--- bwmng/src/input/proc_diskstats.c	(revision 124)
+++ bwmng/src/input/proc_diskstats.c	(revision 125)
@@ -85,8 +85,14 @@
 			diskstats_works = 1;
 		} else {
 			/* skip first two lines in /proc/partitions */
-			fgets(buffer,MAX_LINE_BUFFER,f);
-			fgets(buffer,MAX_LINE_BUFFER,f);
+			if (fgets(buffer,MAX_LINE_BUFFER,f) &&
+					fgets(buffer,MAX_LINE_BUFFER,f)) {
+						/* read correctly */
+						;
+			} else {
+				/* error or EOF while reading file, either way we can't continue */
+				deinit(1, "reading %s failed, or file was too short: %s\n", PROC_PARTITIONS_FILE, strerror(errno));
+			}
 		}
 	}