]> git.sur5r.net Git - cc65/commitdiff
Be sure to check the availability of code entries before accessing them.
authoruz <uz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Wed, 6 Jun 2012 22:01:04 +0000 (22:01 +0000)
committeruz <uz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Wed, 6 Jun 2012 22:01:04 +0000 (22:01 +0000)
git-svn-id: svn://svn.cc65.org/cc65/trunk@5691 b7a2c559-68d2-44c3-8de9-860c34a00d81

src/cc65/coptptrload.c

index 1e4b152d5e5d0cd7e1baca829b2467c4e9d388f6..78905d8d58ccad9d32cbe43fcb4f91ae58afaf67 100644 (file)
@@ -1247,16 +1247,14 @@ unsigned OptPtrLoad15 (CodeSeg* S)
 
     /* Walk over the entries */
     unsigned I = 0;
-    while (I < CS_GetEntryCount (S) - 3) {
+    while (I < CS_GetEntryCount (S)) {
 
        CodeEntry* L[5];
        unsigned Len;
 
-       /* Get next 3 entries */
-               CS_GetEntries (S, L, I, 3);
-
        /* Check for the start of the sequence */
-               if (L[0]->OPC == OP65_LDA && L[0]->AM == AM65_ZP        &&
+               if (CS_GetEntries (S, L, I, 3)                          &&
+            L[0]->OPC == OP65_LDA && L[0]->AM == AM65_ZP        &&
                    L[1]->OPC == OP65_LDX && L[1]->AM == AM65_ZP        &&
             !CS_RangeHasLabel (S, I+1, 2)                       &&
             (Len = strlen (L[0]->Arg)) > 0                      &&