equal
deleted
inserted
replaced
561 return object_java_mirror(); |
561 return object_java_mirror(); |
562 } else if (s == vmSymbols::class_signature()) { |
562 } else if (s == vmSymbols::class_signature()) { |
563 return Klass::cast(SystemDictionary::Class_klass())->java_mirror(); |
563 return Klass::cast(SystemDictionary::Class_klass())->java_mirror(); |
564 } else if (s == vmSymbols::string_signature()) { |
564 } else if (s == vmSymbols::string_signature()) { |
565 return Klass::cast(SystemDictionary::String_klass())->java_mirror(); |
565 return Klass::cast(SystemDictionary::String_klass())->java_mirror(); |
566 } else { |
|
567 int len = s->utf8_length(); |
|
568 if (s->byte_at(0) == 'L' && s->byte_at(len-1) == ';') { |
|
569 TempNewSymbol cname = SymbolTable::probe((const char*)&s->bytes()[1], len-2); |
|
570 if (cname == NULL) return NULL; |
|
571 Klass* wkk = SystemDictionary::find_well_known_klass(cname); |
|
572 if (wkk == NULL) return NULL; |
|
573 return Klass::cast(wkk)->java_mirror(); |
|
574 } |
|
575 } |
566 } |
576 } |
567 } |
577 return NULL; |
568 return NULL; |
578 } |
569 } |
579 |
570 |