summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--parse.c9
2 files changed, 12 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 1075e26..374ef52 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2006-06-02 Alan Coopersmith <alan.coopersmith@sun.com>
+
+ * parse.c (slookup):
+ Coverity #925: Pointer "file" dereferenced before NULL check
+
2005-12-14 Kevin E. Martin <kem-at-freedesktop-dot-org>
* configure.ac:
diff --git a/parse.c b/parse.c
index 935c61d..5248293 100644
--- a/parse.c
+++ b/parse.c
@@ -429,9 +429,14 @@ struct symtab **
slookup(char *symbol, struct inclist *file)
{
register int first = 0;
- register int last = file->i_ndefs - 1;
+ register int last;
- if (file) while (last >= first)
+ if (file == NULL)
+ return NULL;
+
+ last = file->i_ndefs - 1;
+
+ while (last >= first)
{
/* Fast inline binary search */
register char *s1;