Skip to content

Commit 628a678

Browse files
authored
Merge pull request #60 from tidyycode/master
Fixed ahegao failing issue
2 parents 9877185 + 652f469 commit 628a678

File tree

2 files changed

+18
-1
lines changed

2 files changed

+18
-1
lines changed

build.gradle

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ allprojects {
2323
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.9.0'
2424
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.9.0'
2525
}
26+
27+
compileJava {
28+
options.encoding = "UTF-8" // Will fail on the non-ascii comments if not set
29+
}
2630
}
2731

2832
group 'dev.skidfuscator.community'

dev.skidfuscator.obfuscator/src/main/java/dev/skidfuscator/obfuscator/transform/impl/misc/AhegaoTransformer.java

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,13 @@
2626
import java.util.Arrays;
2727
import java.util.List;
2828
import java.util.Stack;
29+
import java.util.concurrent.ThreadLocalRandom;
30+
import java.util.stream.Collectors;
2931

3032
public class AhegaoTransformer extends AbstractTransformer {
33+
34+
private static final String DEFAULT_AHEGAO_FIELD_NAME = "nothing_to_see_here";
35+
3136
public AhegaoTransformer(Skidfuscator skidfuscator) {
3237
super(skidfuscator, "Ahegao");
3338
}
@@ -43,9 +48,17 @@ void handle(final FinalClassTransformEvent event) {
4348
return;
4449
}
4550

51+
List<String> fieldNames = classNode.getFields().stream()
52+
.map(FieldNode::getName)
53+
.collect(Collectors.toList());
54+
55+
String ahegaoName = DEFAULT_AHEGAO_FIELD_NAME;
56+
while (fieldNames.contains(ahegaoName))
57+
ahegaoName += (char) ThreadLocalRandom.current().nextInt(Character.MAX_CODE_POINT);
58+
4659
final FieldNode mapleNode = new SkidFieldNodeBuilder(skidfuscator, classNode)
4760
.access(Opcodes.ACC_PRIVATE | Opcodes.ACC_STATIC)
48-
.name("nothing_to_see_here")
61+
.name(ahegaoName)
4962
.desc("[Ljava/lang/String;")
5063
.signature(null)
5164
.value(null)

0 commit comments

Comments
 (0)