Skip to content

Commit

Permalink
Let DynamicInjectorOrdinalPatch handle ModifyReturnValue
Browse files Browse the repository at this point in the history
  • Loading branch information
Su5eD committed Jul 26, 2024
1 parent 6fa7e5a commit df49049
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -57,8 +57,18 @@ public static ComparisonResult findPatchedLabels(AbstractInsnNode cleanInjection
return null;
}

List<List<AbstractInsnNode>> patchedLabels;
int to = dirtyLabelsOriginal.indexOf(patchRange.getSecond());
List<List<AbstractInsnNode>> patchedLabels = patchRange.getFirst() == null ? dirtyLabelsOriginal.subList(0, to) : dirtyLabelsOriginal.subList(dirtyLabelsOriginal.indexOf(patchRange.getFirst()) + 1, to);
if (patchRange.getFirst() == null) {
patchedLabels = dirtyLabelsOriginal.subList(0, to);
} else {
int from = dirtyLabelsOriginal.indexOf(patchRange.getFirst()) + 1;
if (from < to) {
patchedLabels = dirtyLabelsOriginal.subList(dirtyLabelsOriginal.indexOf(patchRange.getFirst()) + 1, to);
} else {
return null;
}
}
return new ComparisonResult(patchedLabels, cleanLabel);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ public class DynamicInjectorOrdinalPatch implements MethodTransform {

@Override
public Collection<String> getAcceptedAnnotations() {
return Set.of(MixinConstants.INJECT, MixinConstants.MODIFY_VAR);
return Set.of(MixinConstants.INJECT, MixinConstants.MODIFY_VAR, MixinConstants.MODIFY_RETURN_VAL);
}

@Override
Expand Down

0 comments on commit df49049

Please sign in to comment.