1.1 --- a/src/share/vm/prims/jvmtiClassFileReconstituter.cpp Thu Jun 28 11:37:28 2012 +0200 1.2 +++ b/src/share/vm/prims/jvmtiClassFileReconstituter.cpp Mon Jul 09 01:28:37 2012 -0700 1.3 @@ -268,14 +268,18 @@ 1.4 // JSR45| SourceDebugExtension_attribute { 1.5 // JSR45| u2 attribute_name_index; 1.6 // JSR45| u4 attribute_length; 1.7 -// JSR45| u2 sourcefile_index; 1.8 +// JSR45| u1 debug_extension[attribute_length]; 1.9 // JSR45| } 1.10 void JvmtiClassFileReconstituter::write_source_debug_extension_attribute() { 1.11 assert(ikh()->source_debug_extension() != NULL, "caller must check"); 1.12 1.13 write_attribute_name_index("SourceDebugExtension"); 1.14 - write_u4(2); // always length 2 1.15 - write_u2(symbol_to_cpool_index(ikh()->source_debug_extension())); 1.16 + int len = (int)strlen(ikh()->source_debug_extension()); 1.17 + write_u4(len); 1.18 + u1* ext = (u1*)ikh()->source_debug_extension(); 1.19 + for (int i=0; i<len; i++) { 1.20 + write_u1(ext[i]); 1.21 + } 1.22 } 1.23 1.24 // Write (generic) Signature attribute