> …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:

  use ClassFileInstaller instead of RunAsmTools
  
  fix formatting
  add comments about jcod modifications

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/29445/files
  - new: https://git.openjdk.org/jdk/pull/29445/files/f85f5a77..43798407

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=29445&range=06
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=29445&range=05-06

  Stats: 8 lines in 3 files changed: 4 ins; 0 del; 4 mod
  Patch: https://git.openjdk.org/jdk/pull/29445.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/29445/head:pull/29445

PR: https://git.openjdk.org/jdk/pull/29445

Reply via email to