RFR (XS): 8003690: Example code in JVMTI GetStackTrace documentation is broken

Mikael Vidstedt mikael.vidstedt at oracle.com
Tue Nov 20 08:52:54 PST 2012


In the JVMTI documentation for GetStackTrace there is a code snippet 
outlining how to use the functionality:

jvmtiFrameInfo frames[5];
jint count;
jvmtiError err;

err = (*jvmti)->GetStackTrace(jvmti, aThread, 0, 5,
                                &frames, &count);
if (err == JVMTI_ERROR_NONE && count >= 1) {
    char *methodName;
    err = (*jvmti)->GetMethodName(jvmti, frames[0].method,
                        &methodName, NULL);
    if (err == JVMTI_ERROR_NONE) {
       printf("Executing method: %s", methodName);
    }
}

There are two errors in the code:

1. The 5th argument to GetStackTrace (frames) should not have an ampersand
2. GetMethodName takes 5 parameters, but the example only passes four 
parameters to it

Please review the following change:

http://cr.openjdk.java.net/~mikael/8003690/webrev.00/

Thanks,
Mikael



More information about the serviceability-dev mailing list