On Tue, 24 Mar 2026 09:44:40 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 with a new target base due > to a merge or a rebase. The incremental webrev excludes the unrelated changes > brought in by the merge/rebase. The pull request contains 10 additional > commits since the last revision: > > - Merge branch 'master' into 8376185 > - remove unneeded file > - use ClassFileInstaller instead of RunAsmTools > > fix formatting > add comments about jcod modifications > - fix whitespaces > - fix whitespaces > - replace shell script with class running asmtools > > include output directory for asmtools and jcoder command > Add comments > - handle result after pending exceptions > - add copyright headers > - add missing files > - 8376185: NoSuchFieldError thrown after a record with type annotation > 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 @jpbempel Your change (at version 27e78664c2c4eeabc57eb062c0e33bb1510203d7) is now ready to be sponsored by a Committer. ------------- PR Comment: https://git.openjdk.org/jdk/pull/29445#issuecomment-4124057301
