From 8df81746e3c9edcb70c85fa56660ca63c620a44d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jindra=20Pet=F8=EDk?= Date: Mon, 31 Dec 2012 17:14:56 +0100 Subject: [PATCH] AS3: Deobfuscate namespaces, Issue 23 --- trunk/src/com/jpexs/asdec/abc/ABC.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/trunk/src/com/jpexs/asdec/abc/ABC.java b/trunk/src/com/jpexs/asdec/abc/ABC.java index 00f91a9f7..7e577695d 100644 --- a/trunk/src/com/jpexs/asdec/abc/ABC.java +++ b/trunk/src/com/jpexs/asdec/abc/ABC.java @@ -576,6 +576,7 @@ public class ABC { public int unknownCount = 0; public static final String validFirstCharacters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_"; public static final String validNextCharacters = validFirstCharacters + "0123456789"; + public static final String validNsCharacters = ".:"; public boolean deobfuscateNameSpace(int strIndex) { if (strIndex <= 0) { @@ -599,7 +600,10 @@ public class ABC { } } } - + Pattern pat = Pattern.compile("^[" + Pattern.quote(validFirstCharacters) + "]" + "[" + Pattern.quote(validFirstCharacters + validNextCharacters + validNsCharacters) + "]*$"); + if (!pat.matcher(s).matches()) { + isValid = false; + } if (!isValid) { if (isReserved) { constants.constant_string[strIndex] = "name_" + s.replace(" ", "_");