sim: callback: fix sentinel testing when walking maps

Message ID 1434614690-5852-1-git-send-email-vapier@gentoo.org
State Committed
Headers

Commit Message

Mike Frysinger June 18, 2015, 8:04 a.m. UTC
  The new helpers for walking the maps tested the wrong value for exiting
the for loop.  This caused crashes when looking up entries that were not
in the map.

Committed.
---
 sim/common/ChangeLog  | 5 +++++
 sim/common/callback.c | 4 ++--
 2 files changed, 7 insertions(+), 2 deletions(-)
  

Patch

diff --git a/sim/common/ChangeLog b/sim/common/ChangeLog
index 59d92f4..afc1b3a 100644
--- a/sim/common/ChangeLog
+++ b/sim/common/ChangeLog
@@ -1,3 +1,8 @@ 
+2015-06-18  Mike Frysinger  <vapier@gentoo.org>
+
+	* callback.c (cb_target_map_entry, cb_host_map_entry): Change map to
+	m for sentinel testing.
+
 2015-06-17  Mike Frysinger  <vapier@gentoo.org>
 
 	* sim-syscall.c: Include errno.h and targ-vals.h.
diff --git a/sim/common/callback.c b/sim/common/callback.c
index 9b42536..486f182 100644
--- a/sim/common/callback.c
+++ b/sim/common/callback.c
@@ -803,7 +803,7 @@  cb_target_map_entry (const CB_TARGET_DEFS_MAP map[], int target_val)
 {
   const CB_TARGET_DEFS_MAP *m;
 
-  for (m = &map[0]; map->target_val != -1; ++m)
+  for (m = &map[0]; m->target_val != -1; ++m)
     if (m->target_val == target_val)
       return m;
 
@@ -815,7 +815,7 @@  cb_host_map_entry (const CB_TARGET_DEFS_MAP map[], int host_val)
 {
   const CB_TARGET_DEFS_MAP *m;
 
-  for (m = &map[0]; map->host_val != -1; ++m)
+  for (m = &map[0]; m->host_val != -1; ++m)
     if (m->host_val == host_val)
       return m;