sim: callback: fix sentinel testing when walking maps
Commit Message
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(-)
@@ -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.
@@ -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;