Skip to content

Commit

Permalink
Merge pull request #734 from lanvent/fix_escape
Browse files Browse the repository at this point in the history
Fix: unescape string using apache library
  • Loading branch information
Col-E authored Oct 21, 2023
2 parents 59289b6 + fa15ee2 commit 49d1661
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 2 deletions.
2 changes: 2 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,8 @@ subprojects {
ssvm = "com.github.xxdark:ssvm:$ssvmVersion"
procyon_core = "org.bitbucket.mstrobel:procyon-core:$procyonVersion"
procyon_compiler_tools = "org.bitbucket.mstrobel:procyon-compilertools:$procyonVersion"
string_escape_utils = "org.apache.commons:commons-text:1.10.0"

}
}

Expand Down
2 changes: 1 addition & 1 deletion recaf-assembler/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ dependencies {

api asm
api asm_tree

api string_escape_utils
api "com.github.Nowilltolife:Jasm:$jasmVersion"

// Testing
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
import org.objectweb.asm.Handle;
import org.objectweb.asm.Opcodes;
import org.objectweb.asm.tree.*;
import org.apache.commons.text.StringEscapeUtils;

import java.util.*;
import java.util.stream.Collectors;
Expand Down Expand Up @@ -353,7 +354,7 @@ private InsnList createInstructions() throws MethodCompileException {
Object cst = ldc.getValue();
// TODO: We need to handle escapes better, but this works for \\u0000 escapes for now
if (cst instanceof String)
cst = EscapeUtil.unescape((String) cst);
cst = StringEscapeUtils.unescapeJava((String) cst);
addCode(list, instruction, new LdcInsnNode(cst));
break;
case TYPE:
Expand Down

0 comments on commit 49d1661

Please sign in to comment.