fix sym_val() buffer overrun fix

Fix a mistake in commit 74de7d31e0.
Copy+paste error resulted in 'strval + 1' when 'strval' is required.
This commit is contained in:
PatR
2020-01-14 14:34:03 -08:00
parent b21b99d433
commit deccf6a796

View File

@@ -6202,6 +6202,7 @@ const char *strval; /* up to 4*BUFSZ-1 long; only first few chars matter */
} else {
char *p;
/* +1: skip opening single quote */
(void) strncpy(tmp, strval + 1, sizeof tmp - 1);
tmp[sizeof tmp - 1] = '\0';
if ((p = rindex(tmp, '\'')) != 0) {
@@ -6210,7 +6211,7 @@ const char *strval; /* up to 4*BUFSZ-1 long; only first few chars matter */
} /* else buf[0] stays '\0' */
}
} else { /* not lone char nor single quote */
(void) strncpy(tmp, strval + 1, sizeof tmp - 1);
(void) strncpy(tmp, strval, sizeof tmp - 1);
tmp[sizeof tmp - 1] = '\0';
escapes(tmp, buf);
}