Issue #19437: Fix r_object() of marshal module, handle r_byte() failure for
TYPE_SMALL_TUPLE
diff --git a/Python/marshal.c b/Python/marshal.c
index 411f1e0..598269f 100644
--- a/Python/marshal.c
+++ b/Python/marshal.c
@@ -1101,6 +1101,8 @@
 
     case TYPE_SMALL_TUPLE:
         n = (unsigned char) r_byte(p);
+        if (PyErr_Occurred())
+            break;
         goto _read_tuple;
     case TYPE_TUPLE:
         n = r_long(p);