chiark / gitweb /
Properly support escaped strings
authorDaniel Martí <mvdan@mvdan.cc>
Thu, 4 Jun 2015 13:56:20 +0000 (15:56 +0200)
committerDaniel Martí <mvdan@mvdan.cc>
Thu, 4 Jun 2015 13:56:20 +0000 (15:56 +0200)
See:
https://developer.android.com/guide/topics/resources/string-resource.html

fdroidserver/common.py

index 33c89ea2d31208c159a64bc52f1ec26aaf49dea6..c2eb4388d93617ee3058fd4a3fc40b41bf1ff2c4 100644 (file)
@@ -859,6 +859,13 @@ class vcs_bzr(vcs):
                 p.output.splitlines()]
 
 
+def unescape_string(string):
+    if string[0] == '"' and string[-1] == '"':
+        return string[1:-1]
+
+    return string.replace("\\'", "'")
+
+
 def retrieve_string(app_dir, string, xmlfiles=None):
 
     if xmlfiles is None:
@@ -872,7 +879,7 @@ def retrieve_string(app_dir, string, xmlfiles=None):
                     xmlfiles += [os.path.join(r, x) for x in f if x.endswith('.xml')]
 
     if not string.startswith('@string/'):
-        return string.replace("\\'", "'")
+        return unescape_string(string)
 
     name = string[len('@string/'):]