On Tue, 27 Jan 2026 14:56:31 GMT, Jean-Philippe Bempel <[email protected]> 
wrote:

>> …retransformed
>> 
>> Fix a retransform error when retransforming a record with type annotation. 
>> processing the record type annotation was done by calling the wrong method 
>> and using the one to process regular annotation. Regular annotations have 
>> not the same structure and decoding was therefore incorrect. The decoding 
>> methods detect a problem but this error was not propagated correctly outside 
>> of VM_RedfineClass::load_new_class_versions method, swallowing the error and 
>> leaving the retransformed class in bad state.
>> 
>> Here we have fixed the call to the right method for decoding the type 
>> annotations but also propagated the error when rewriting the constant pool 
>> as an JVMTI_ERROR_INTERNAL
>
> Jean-Philippe Bempel has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   add copyright headers

src/hotspot/share/prims/jvmtiRedefineClasses.cpp line 1477:

> 1475:     if (res != JVMTI_ERROR_NONE) {
> 1476:       return res;
> 1477:     }

Pending exception need to be processed and cleared below (see lines: 1478-1487).

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/29445#discussion_r2745165920

Reply via email to