Do not use assert() that depends on external data.

Just fail function. Also fixed gcc analyzer warning (leaked fd).
This commit is contained in:
Milan Broz
2024-07-09 23:11:45 +02:00
parent 35a9f08062
commit b1cc660df3

View File

@@ -171,7 +171,10 @@ static key_serial_t find_key_by_type_and_desc(const char *type, const char *desc
}
buffer_len -= newline - buf + 1;
assert(buffer_len <= sizeof(buf) - 1);
if (buffer_len >= sizeof(buf)) {
close(f);
return 0;
}
memmove(buf, newline + 1, buffer_len);
buf[buffer_len] = '\0';
newline = strchr(buf, '\n');