Skip to content

Commit f89cc3c

Browse files
committed
Merge pull request #1433 from hjelmn/keyval_parse_fix
opal/util: fix bug in key value parser
2 parents fc5a201 + 63bac9a commit f89cc3c

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

opal/util/keyval_parse.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -227,16 +227,16 @@ static void trim_name(char *buffer, const char* prefix, const char* suffix)
227227
}
228228

229229
/* trim spaces at the end */
230-
echr = buffer + buffer_len - 1;
231-
while (isspace (*echr)) {
230+
echr = buffer + buffer_len;
231+
while (isspace (*(echr - 1)) && echr > buffer) {
232232
echr--;
233233
}
234-
echr[1] = '\0';
234+
echr[0] = '\0';
235235

236-
if (NULL != suffix) {
236+
if (NULL != suffix && (uintptr_t) (echr - buffer) > strlen (suffix)) {
237237
size_t suffix_len = strlen (suffix);
238238

239-
echr -= suffix_len - 1;
239+
echr -= suffix_len;
240240

241241
if (0 == strncmp (echr, suffix, strlen(suffix))) {
242242
do {

0 commit comments

Comments
 (0)