diff --git a/libraries/liblmdb/mdb_load.c b/libraries/liblmdb/mdb_load.c index d266b4f6e1..4e9dbcbabf 100644 --- a/libraries/liblmdb/mdb_load.c +++ b/libraries/liblmdb/mdb_load.c @@ -208,6 +208,12 @@ badend: c1 = buf->mv_data; len = strlen((char *)c1); + if (!len) { + /* This can only happen with an intentionally invalid input + * with a NUL byte after the leading SPACE + */ + goto badend; + } l2 = len; /* Is buffer too short? */