Fix: CSA was not quite right
authorceriel <none@none>
Wed, 10 Nov 1993 13:00:01 +0000 (13:00 +0000)
committerceriel <none@none>
Wed, 10 Nov 1993 13:00:01 +0000 (13:00 +0000)
util/int/do_misc.c

index b94fa00..f558b83 100644 (file)
@@ -436,6 +436,9 @@ PRIVATE index_jump(nbytes)
 
        if (t_index >= 0 && t_index <= mem_lds(cdp + nbytes + psize, nbytes)) {
                nPC = mem_ldip(cdp + (2 * nbytes) + ((t_index + 1) * psize));
+               if (nPC == 0) {
+                       trap(ECASE);
+               }
        }
        else if ((nPC = mem_ldip(cdp)) == 0) {
                trap(ECASE);