Skip to content

Commit

Permalink
Fix defrost in wrong step
Browse files Browse the repository at this point in the history
  • Loading branch information
kappa-maintainer committed Jul 14, 2024
1 parent 7853525 commit a7e24b2
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ public byte[] transform(byte[] bytes) {
try {
var cp = ClassPool.getDefault();
CtClass cc = cp.makeClass(new ByteArrayInputStream(bytes));
cc.defrost();
var ifc = cc.getMethod("identifyFromClass", "(Ljava/lang/String;Ljava/util/Map;)Ljava/util/Set;");
ifc.insertAt(64, """
{
Expand All @@ -23,6 +22,7 @@ public byte[] transform(byte[] bytes) {
}
""");
bytes = cc.toBytecode();
cc.defrost();
} catch (Throwable t) {
Fugue.LOGGER.error("Exception {} on {}", t, this.getClass().getSimpleName());
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ public FinalStripperTransformer(Map<String, String> targets) {
public byte[] transform(byte[] bytes) {
try {
CtClass cc = ClassPool.getDefault().makeClass(new ByteArrayInputStream(bytes));
cc.defrost();
String[] fields = targets.get(cc.getName()).split("\\|");
Arrays.stream(cc.getFields()).filter(ctField ->
Arrays.stream(fields).anyMatch(f ->
Expand All @@ -30,8 +29,8 @@ public byte[] transform(byte[] bytes) {
ctField2.setModifiers(ctField2.getModifiers() & ~Modifier.FINAL);
Fugue.LOGGER.debug("Stripping final modifier of {} from {}", ctField2.getName(), ctField2.getDeclaringClass().getName());
});
cc.defrost();
bytes = cc.toBytecode();
cc.defrost();
} catch (Throwable t) {
Fugue.LOGGER.error("Exception {} on {}", t, this.getClass().getSimpleName());
}
Expand Down

0 comments on commit a7e24b2

Please sign in to comment.