You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Pavel Pervov (JIRA)" <ji...@apache.org> on 2008/01/09 07:10:34 UTC

[jira] Commented: (HARMONY-4315) [buildtest][vts] Test vm/jvmti/funcs/GetClassSignature/GetClassSignature0102/GetClassSignature0102.xml crashes when it tries to print wrong data

    [ https://issues.apache.org/jira/browse/HARMONY-4315?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12557147#action_12557147 ] 

Pavel Pervov commented on HARMONY-4315:
---------------------------------------

Stepan,

it looks like the patch was not applied to the test itself. It now crashes on Windows x86.

> [buildtest][vts] Test vm/jvmti/funcs/GetClassSignature/GetClassSignature0102/GetClassSignature0102.xml crashes when it tries to print wrong data
> ------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-4315
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4315
>             Project: Harmony
>          Issue Type: Bug
>          Components: build - test - ci
>            Reporter: Vera Petrashkova
>            Assignee: Stepan Mishura
>         Attachments: GetClassSignature.patch
>
>
> Test vm/jvmti/funcs/GetClassSignature/GetClassSignature0102/GetClassSignature0102.xml
> checks that  method 
> GetClassSignature(jvmtiEnv* env, jclass klass, char** signature_ptr, char**
> generic_ptr)
> returns JVMTI_ERROR_INVALID_CLASS when klass is not a class object or the class 
> has been unloaded.
> It invokes method with jthread object and expects that VM returns error code.
> But then this test tries to output information about "signature of used wrong 
> class".
> See GetClassSignature0102.cpp source code:
> ----------------------
> void JNICALL callbackException(prms_EXCPT)
> {
>     check_EXCPT;
>     if (flag) return;
>     jvmtiError result;
>     jclass myclass = NULL;
>     char* signature;
>     char* generic;
>     /*
>      * Function separate all other exceptions in all other method
>      */
>     if (!check_phase_and_method_debug(jvmti_env, method, SPP_LIVE_ONLY,
>                 "special_method", DEBUG_OUT)) return;
>     result = jvmti_env->GetMethodDeclaringClass(method, &myclass);
>     if (DEBUG_OUT)
>     {
>         fprintf(stderr, "\tnative: GetMethodDeclaringClass result = %d (must be zero) \n", result);
>         fprintf(stderr, "\tnative: method is %p \n", method);
>         fprintf(stderr, "\tnative: myclass is %p \n", myclass);
>     }
>     if (result != JVMTI_ERROR_NONE) return;
>     flag = true;
>     util = true;
>     result = jvmti_env->GetClassSignature((jclass)thread, &signature, &generic);
>     fprintf(stderr, "\tnative: GetClassSignature result = %d (must be JVMTI_ERROR_INVALID_CLASS (21)) \n", result);
>     fprintf(stderr, "\tnative: classes ptr is %p \n", myclass); <<<<<<<<<<<<
>     fprintf(stderr, "\tnative: signature is %s \n", signature); <<<<<<<<<<<<
>     fprintf(stderr, "\tnative: generic is %s \n", generic);     <<<<<<<<<<<
>     fflush(stderr);
>     if (result != JVMTI_ERROR_INVALID_CLASS) return;
>     test = true;
> }
> -----------------------
> VM returns correct error code but then it crashes on reporting wrong datas.
> As the result this test fails even if it actually passes.
> These useless reports should be removed.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.