src/share/vm/prims/jvmtiEnv.cpp

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. --- 1,7 ---- /* ! * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.
*** 2539,2557 **** klassOop k = java_lang_Class::as_klassOop(k_mirror); NULL_CHECK(k, JVMTI_ERROR_INVALID_CLASS); if (!Klass::cast(k)->oop_is_instance()) { return JVMTI_ERROR_ABSENT_INFORMATION; } ! Symbol* sdeOop = instanceKlass::cast(k)->source_debug_extension(); ! NULL_CHECK(sdeOop, JVMTI_ERROR_ABSENT_INFORMATION); { ! JavaThread* current_thread = JavaThread::current(); ! ResourceMark rm(current_thread); ! const char* sdecp = (const char*) sdeOop->as_C_string(); ! *source_debug_extension_ptr = (char *) jvmtiMalloc(strlen(sdecp)+1); ! strcpy(*source_debug_extension_ptr, sdecp); } } return JVMTI_ERROR_NONE; } /* end GetSourceDebugExtension */ --- 2539,2554 ---- klassOop k = java_lang_Class::as_klassOop(k_mirror); NULL_CHECK(k, JVMTI_ERROR_INVALID_CLASS); if (!Klass::cast(k)->oop_is_instance()) { return JVMTI_ERROR_ABSENT_INFORMATION; } ! char* sde = instanceKlass::cast(k)->source_debug_extension(); ! NULL_CHECK(sde, JVMTI_ERROR_ABSENT_INFORMATION); { ! *source_debug_extension_ptr = (char *) jvmtiMalloc(strlen(sde)+1); ! strcpy(*source_debug_extension_ptr, sde); } } return JVMTI_ERROR_NONE; } /* end GetSourceDebugExtension */