cdrom: change pause timing again
[pcsx_rearmed.git] / plugins / gpulib / gpu.c
index f2bf6ce..b444dcf 100644 (file)
@@ -532,6 +532,10 @@ static noinline int do_cmd_list_skip(uint32_t *data, int count, int *last_cmd)
     uint32_t *list = data + pos;
     cmd = LE32TOH(list[0]) >> 24;
     len = 1 + cmd_lengths[cmd];
+    if (pos + len > count) {
+      cmd = -1;
+      break; // incomplete cmd
+    }
 
     switch (cmd) {
       case 0x02:
@@ -571,11 +575,6 @@ static noinline int do_cmd_list_skip(uint32_t *data, int count, int *last_cmd)
           gpu.ex_regs[cmd & 7] = LE32TOH(list[0]);
         break;
     }
-
-    if (pos + len > count) {
-      cmd = -1;
-      break; // incomplete cmd
-    }
     if (0x80 <= cmd && cmd <= 0xdf)
       break; // image i/o