From 83e4af43aa71b2958a429c9f2ebd4a3dd1815841 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 19 Aug 2009 22:10:24 +0000 Subject: libs/lmo: fix off-by-one in bounds check, null-terminate dest buffer in lmo_lookup() --- libs/lmo/src/lmo_core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'libs/lmo') diff --git a/libs/lmo/src/lmo_core.c b/libs/lmo/src/lmo_core.c index ab2410f46..55696af9c 100644 --- a/libs/lmo/src/lmo_core.c +++ b/libs/lmo/src/lmo_core.c @@ -218,8 +218,9 @@ int lmo_lookup(lmo_archive_t *ar, const char *key, char *dest, int len) { if( entry->key_id == look_key ) { - copy_len = (len > entry->length) ? entry->length : len; + copy_len = ((len - 1) > entry->length) ? entry->length : (len - 1); memcpy(dest, &ar->mmap[entry->offset], copy_len); + data[copy_len] = '\0'; break; } -- cgit v1.2.3