< prev index next >

src/java.base/share/native/libverify/check_code.c

Print this page

        

*** 3738,3753 **** case JVM_SIGNATURE_DOUBLE: case JVM_SIGNATURE_LONG: case JVM_SIGNATURE_FUNC: /* ignore initial (, if given */ break; case JVM_SIGNATURE_CLASS: while (*p != JVM_SIGNATURE_ENDCLASS) p++; break; case JVM_SIGNATURE_ARRAY: while (*p == JVM_SIGNATURE_ARRAY) p++; /* If an array of classes, skip over class name, too. */ ! if (*p == JVM_SIGNATURE_CLASS) { while (*p != JVM_SIGNATURE_ENDCLASS) p++; } break; default: /* Indicate an error. */ --- 3738,3754 ---- case JVM_SIGNATURE_DOUBLE: case JVM_SIGNATURE_LONG: case JVM_SIGNATURE_FUNC: /* ignore initial (, if given */ break; case JVM_SIGNATURE_CLASS: + case JVM_SIGNATURE_VALUETYPE: while (*p != JVM_SIGNATURE_ENDCLASS) p++; break; case JVM_SIGNATURE_ARRAY: while (*p == JVM_SIGNATURE_ARRAY) p++; /* If an array of classes, skip over class name, too. */ ! if (*p == JVM_SIGNATURE_CLASS || *p == JVM_SIGNATURE_VALUETYPE) { while (*p != JVM_SIGNATURE_ENDCLASS) p++; } break; default: /* Indicate an error. */
*** 3822,3832 **** case JVM_SIGNATURE_ARRAY: array_depth++; continue; /* only time we ever do the loop > 1 */ ! case JVM_SIGNATURE_CLASS: { char buffer_space[256]; char *buffer = buffer_space; char *finish = strchr(p, JVM_SIGNATURE_ENDCLASS); int length; if (finish == NULL) { --- 3823,3834 ---- case JVM_SIGNATURE_ARRAY: array_depth++; continue; /* only time we ever do the loop > 1 */ ! case JVM_SIGNATURE_CLASS: ! case JVM_SIGNATURE_VALUETYPE: { char buffer_space[256]; char *buffer = buffer_space; char *finish = strchr(p, JVM_SIGNATURE_ENDCLASS); int length; if (finish == NULL) {
*** 4205,4222 **** case JVM_SIGNATURE_INT: case JVM_SIGNATURE_FLOAT: args_size += 1; break; case JVM_SIGNATURE_CLASS: args_size += 1; while (*p != JVM_SIGNATURE_ENDCLASS) p++; break; case JVM_SIGNATURE_ARRAY: args_size += 1; while ((*p == JVM_SIGNATURE_ARRAY)) p++; /* If an array of classes, skip over class name, too. */ ! if (*p == JVM_SIGNATURE_CLASS) { while (*p != JVM_SIGNATURE_ENDCLASS) p++; } break; case JVM_SIGNATURE_DOUBLE: --- 4207,4225 ---- case JVM_SIGNATURE_INT: case JVM_SIGNATURE_FLOAT: args_size += 1; break; case JVM_SIGNATURE_CLASS: + case JVM_SIGNATURE_VALUETYPE: args_size += 1; while (*p != JVM_SIGNATURE_ENDCLASS) p++; break; case JVM_SIGNATURE_ARRAY: args_size += 1; while ((*p == JVM_SIGNATURE_ARRAY)) p++; /* If an array of classes, skip over class name, too. */ ! if (*p == JVM_SIGNATURE_CLASS || *p == JVM_SIGNATURE_VALUETYPE) { while (*p != JVM_SIGNATURE_ENDCLASS) p++; } break; case JVM_SIGNATURE_DOUBLE:
< prev index next >