aboutsummaryrefslogtreecommitdiff
path: root/libelf/gelf_syminfo.c
diff options
context:
space:
mode:
Diffstat (limited to 'libelf/gelf_syminfo.c')
-rw-r--r--libelf/gelf_syminfo.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/libelf/gelf_syminfo.c b/libelf/gelf_syminfo.c
index f6d7b6c367fa..9f3cd0e6f701 100644
--- a/libelf/gelf_syminfo.c
+++ b/libelf/gelf_syminfo.c
@@ -29,7 +29,7 @@
#include "_libelf.h"
-ELFTC_VCSID("$Id: gelf_syminfo.c 3174 2015-03-27 17:13:41Z emaste $");
+ELFTC_VCSID("$Id: gelf_syminfo.c 3732 2019-04-22 11:08:38Z jkoshy $");
GElf_Syminfo *
gelf_getsyminfo(Elf_Data *ed, int ndx, GElf_Syminfo *dst)
@@ -65,9 +65,9 @@ gelf_getsyminfo(Elf_Data *ed, int ndx, GElf_Syminfo *dst)
return (NULL);
}
- msz = _libelf_msize(ELF_T_SYMINFO, ec, e->e_version);
+ if ((msz = _libelf_msize(ELF_T_SYMINFO, ec, e->e_version)) == 0)
+ return (NULL);
- assert(msz > 0);
assert(ndx >= 0);
if (msz * (size_t) ndx >= d->d_data.d_size) {
@@ -126,9 +126,9 @@ gelf_update_syminfo(Elf_Data *ed, int ndx, GElf_Syminfo *gs)
return (0);
}
- msz = _libelf_msize(ELF_T_SYMINFO, ec, e->e_version);
+ if ((msz = _libelf_msize(ELF_T_SYMINFO, ec, e->e_version)) == 0)
+ return (0);
- assert(msz > 0);
assert(ndx >= 0);
if (msz * (size_t) ndx >= d->d_data.d_size) {