533 resolved_klass = SystemDictionary::resolve_or_null(class_name, class_loader, protection_domain, CHECK_0); |
533 resolved_klass = SystemDictionary::resolve_or_null(class_name, class_loader, protection_domain, CHECK_0); |
534 if (resolved_klass == NULL) { |
534 if (resolved_klass == NULL) { |
535 JVMCI_THROW_MSG_NULL(ClassNotFoundException, str); |
535 JVMCI_THROW_MSG_NULL(ClassNotFoundException, str); |
536 } |
536 } |
537 } else { |
537 } else { |
538 if (class_name->char_at(0) == 'L' && |
538 if (class_name->char_at(0) == JVM_SIGNATURE_CLASS && |
539 class_name->char_at(class_name->utf8_length()-1) == ';') { |
539 class_name->char_at(class_name->utf8_length()-1) == JVM_SIGNATURE_ENDCLASS) { |
540 // This is a name from a signature. Strip off the trimmings. |
540 // This is a name from a signature. Strip off the trimmings. |
541 // Call recursive to keep scope of strippedsym. |
541 // Call recursive to keep scope of strippedsym. |
542 TempNewSymbol strippedsym = SymbolTable::new_symbol(class_name->as_utf8()+1, |
542 TempNewSymbol strippedsym = SymbolTable::new_symbol(class_name->as_utf8()+1, |
543 class_name->utf8_length()-2); |
543 class_name->utf8_length()-2); |
544 resolved_klass = SystemDictionary::find(strippedsym, class_loader, protection_domain, CHECK_0); |
544 resolved_klass = SystemDictionary::find(strippedsym, class_loader, protection_domain, CHECK_0); |