hotspot/src/share/vm/classfile/javaClasses.cpp
changeset 23871 0456e228b90d
parent 22907 f978a4a64728
child 23872 536c66fc43d3
equal deleted inserted replaced
23870:2c9e85bccffb 23871:0456e228b90d
   462 }
   462 }
   463 
   463 
   464 void java_lang_String::print(oop java_string, outputStream* st) {
   464 void java_lang_String::print(oop java_string, outputStream* st) {
   465   assert(java_string->klass() == SystemDictionary::String_klass(), "must be java_string");
   465   assert(java_string->klass() == SystemDictionary::String_klass(), "must be java_string");
   466   typeArrayOop value  = java_lang_String::value(java_string);
   466   typeArrayOop value  = java_lang_String::value(java_string);
   467   int          offset = java_lang_String::offset(java_string);
   467 
   468   int          length = java_lang_String::length(java_string);
       
   469 
       
   470   int end = MIN2(length, 100);
       
   471   if (value == NULL) {
   468   if (value == NULL) {
   472     // This can happen if, e.g., printing a String
   469     // This can happen if, e.g., printing a String
   473     // object before its initializer has been called
   470     // object before its initializer has been called
   474     st->print_cr("NULL");
   471     st->print("NULL");
   475   } else {
   472     return;
   476     st->print("\"");
   473   }
   477     for (int index = 0; index < length; index++) {
   474 
   478       st->print("%c", value->char_at(index + offset));
   475   int offset = java_lang_String::offset(java_string);
   479     }
   476   int length = java_lang_String::length(java_string);
   480     st->print("\"");
   477 
   481   }
   478   st->print("\"");
       
   479   for (int index = 0; index < length; index++) {
       
   480     st->print("%c", value->char_at(index + offset));
       
   481   }
       
   482   st->print("\"");
   482 }
   483 }
   483 
   484 
   484 static void initialize_static_field(fieldDescriptor* fd, TRAPS) {
   485 static void initialize_static_field(fieldDescriptor* fd, TRAPS) {
   485   Handle mirror (THREAD, fd->field_holder()->java_mirror());
   486   Handle mirror (THREAD, fd->field_holder()->java_mirror());
   486   assert(mirror.not_null() && fd->is_static(), "just checking");
   487   assert(mirror.not_null() && fd->is_static(), "just checking");