3265 char * s = NEW_C_HEAP_ARRAY(char, len, mtInternal); |
3265 char * s = NEW_C_HEAP_ARRAY(char, len, mtInternal); |
3266 strncpy(s, typeName, len - 1); |
3266 strncpy(s, typeName, len - 1); |
3267 s[len-1] = '\0'; |
3267 s[len-1] = '\0'; |
3268 // tty->print_cr("checking \"%s\" for \"%s\"", s, typeName); |
3268 // tty->print_cr("checking \"%s\" for \"%s\"", s, typeName); |
3269 if (recursiveFindType(origtypes, s, true) == 1) { |
3269 if (recursiveFindType(origtypes, s, true) == 1) { |
3270 FREE_C_HEAP_ARRAY(char, s, mtInternal); |
3270 FREE_C_HEAP_ARRAY(char, s); |
3271 return 1; |
3271 return 1; |
3272 } |
3272 } |
3273 FREE_C_HEAP_ARRAY(char, s, mtInternal); |
3273 FREE_C_HEAP_ARRAY(char, s); |
3274 } |
3274 } |
3275 const char* start = NULL; |
3275 const char* start = NULL; |
3276 if (strstr(typeName, "GrowableArray<") == typeName) { |
3276 if (strstr(typeName, "GrowableArray<") == typeName) { |
3277 start = typeName + strlen("GrowableArray<"); |
3277 start = typeName + strlen("GrowableArray<"); |
3278 } else if (strstr(typeName, "Array<") == typeName) { |
3278 } else if (strstr(typeName, "Array<") == typeName) { |
3284 char * s = NEW_C_HEAP_ARRAY(char, len, mtInternal); |
3284 char * s = NEW_C_HEAP_ARRAY(char, len, mtInternal); |
3285 strncpy(s, start, len - 1); |
3285 strncpy(s, start, len - 1); |
3286 s[len-1] = '\0'; |
3286 s[len-1] = '\0'; |
3287 // tty->print_cr("checking \"%s\" for \"%s\"", s, typeName); |
3287 // tty->print_cr("checking \"%s\" for \"%s\"", s, typeName); |
3288 if (recursiveFindType(origtypes, s, true) == 1) { |
3288 if (recursiveFindType(origtypes, s, true) == 1) { |
3289 FREE_C_HEAP_ARRAY(char, s, mtInternal); |
3289 FREE_C_HEAP_ARRAY(char, s); |
3290 return 1; |
3290 return 1; |
3291 } |
3291 } |
3292 FREE_C_HEAP_ARRAY(char, s, mtInternal); |
3292 FREE_C_HEAP_ARRAY(char, s); |
3293 } |
3293 } |
3294 if (strstr(typeName, "const ") == typeName) { |
3294 if (strstr(typeName, "const ") == typeName) { |
3295 const char * s = typeName + strlen("const "); |
3295 const char * s = typeName + strlen("const "); |
3296 // tty->print_cr("checking \"%s\" for \"%s\"", s, typeName); |
3296 // tty->print_cr("checking \"%s\" for \"%s\"", s, typeName); |
3297 if (recursiveFindType(origtypes, s, true) == 1) { |
3297 if (recursiveFindType(origtypes, s, true) == 1) { |