File: no-option-parsing-buffer-overrun-123543

package info (click to toggle)
buffer 1.19-12
  • links: PTS
  • area: main
  • in suites: bookworm, bullseye, buster, jessie, jessie-kfreebsd, sid, stretch, trixie
  • size: 500 kB
  • sloc: ansic: 8,475; makefile: 124; sh: 35
file content (20 lines) | stat: -rw-r--r-- 331 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
--- a/buffer.c
+++ b/buffer.c
@@ -935,13 +935,12 @@
 do_size( arg )
 	char *arg;
 {
-	char format[ 20 ];
-	int ret;
+	int ret = 0;
 
-	*format = '\0';
-	sscanf( arg, "%d%s", &ret, format );
+	char unit = '\0';
+	sscanf( arg, "%d%c", &ret, &unit );
 
-	switch( *format ){
+	switch( unit ){
 	case 'm':
 	case 'M':
 		ret = ret K K;