From 39ca5386f313d1ec8aa01f5e3ad81e9d29a41ed0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Oliver=20St=C3=B6neberg?= Date: Mon, 29 Jul 2013 12:03:34 +0000 Subject: [PATCH] added asserts to src/mame/drivers/sidepckt.c to indicate array out-of-bounds accesses (nw) --- src/mame/drivers/sidepckt.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/mame/drivers/sidepckt.c b/src/mame/drivers/sidepckt.c index bad46f01d73..ccc93d63c82 100644 --- a/src/mame/drivers/sidepckt.c +++ b/src/mame/drivers/sidepckt.c @@ -175,7 +175,11 @@ WRITE8_MEMBER(sidepckt_state::sidepckt_i8751_w) break; case 6: /* Read table data */ - if (m_current_table==1) m_i8751_return=table_1[m_current_ptr++]; + if (m_current_table==1) + { + assert(m_current_ptr >= 0 && m_current_ptr < ARRAY_LENGTH(table_1)); + m_i8751_return=table_1[m_current_ptr++]; + } if (m_current_table==2) m_i8751_return=table_2[m_current_ptr++]; if (m_current_table==3) m_i8751_return=table_3[m_current_ptr++]; break; @@ -215,7 +219,11 @@ WRITE8_MEMBER(sidepckt_state::sidepctj_i8751_w) break; case 6: /* Read table data */ - if (m_current_table==1) m_i8751_return=table_1[m_current_ptr++]; + if (m_current_table==1) + { + assert(m_current_ptr >= 0 && m_current_ptr < ARRAY_LENGTH(table_1)); + m_i8751_return=table_1[m_current_ptr++]; + } if (m_current_table==2) m_i8751_return=table_2[m_current_ptr++]; if (m_current_table==3) m_i8751_return=table_3[m_current_ptr++]; break;