Unescaping of PO messages takes place after messages are concatenated to prevent issues if an escape sequence would break between lines
This commit is contained in:
parent
e6254a78df
commit
eb1b47758d
57
PO.js
57
PO.js
@ -116,7 +116,7 @@ function POCatalog()
|
|||||||
|
|
||||||
// The line is empty => end of record.
|
// The line is empty => end of record.
|
||||||
if (s == "" && "msgid" in rec)
|
if (s == "" && "msgid" in rec)
|
||||||
return rec;
|
break;
|
||||||
|
|
||||||
// The record is marked as "fuzzy".
|
// The record is marked as "fuzzy".
|
||||||
if (s.search(regexp.fuzzy) != -1) {
|
if (s.search(regexp.fuzzy) != -1) {
|
||||||
@ -137,15 +137,18 @@ function POCatalog()
|
|||||||
if (m) {
|
if (m) {
|
||||||
// Record found.
|
// Record found.
|
||||||
if (m[1] != "")
|
if (m[1] != "")
|
||||||
id = unescapePO(new String(m[1]));
|
id = new String(m[1]);
|
||||||
if (id in rec)
|
if (id in rec)
|
||||||
rec[id] += unescapePO(new String(m[2]));
|
rec[id] += new String(m[2]);
|
||||||
else
|
else
|
||||||
rec[id] = unescapePO(new String(m[2]));
|
rec[id] = new String(m[2]);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Unescape messages now that they are concatenated.
|
||||||
|
for (id in rec)
|
||||||
|
rec[id] = unescapePO(rec[id]);
|
||||||
return "msgid" in rec ? rec : null;
|
return "msgid" in rec ? rec : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -276,8 +279,8 @@ POCatalog.prototype.save = function(path)
|
|||||||
// SIG // MIIXmAYJKoZIhvcNAQcCoIIXiTCCF4UCAQExCzAJBgUr
|
// SIG // MIIXmAYJKoZIhvcNAQcCoIIXiTCCF4UCAQExCzAJBgUr
|
||||||
// SIG // DgMCGgUAMGcGCisGAQQBgjcCAQSgWTBXMDIGCisGAQQB
|
// SIG // DgMCGgUAMGcGCisGAQQBgjcCAQSgWTBXMDIGCisGAQQB
|
||||||
// SIG // gjcCAR4wJAIBAQQQEODJBs441BGiowAQS9NQkAIBAAIB
|
// SIG // gjcCAR4wJAIBAQQQEODJBs441BGiowAQS9NQkAIBAAIB
|
||||||
// SIG // AAIBAAIBAAIBADAhMAkGBSsOAwIaBQAEFOIhxP5qxoG4
|
// SIG // AAIBAAIBAAIBADAhMAkGBSsOAwIaBQAEFC7NxHFCd9bB
|
||||||
// SIG // L/0Jpyvl/dheNPSioIISyDCCA+4wggNXoAMCAQICEH6T
|
// SIG // rmh9aao27/VkB387oIISyDCCA+4wggNXoAMCAQICEH6T
|
||||||
// SIG // 6/t8xk5Z6kuad9QG/DswDQYJKoZIhvcNAQEFBQAwgYsx
|
// SIG // 6/t8xk5Z6kuad9QG/DswDQYJKoZIhvcNAQEFBQAwgYsx
|
||||||
// SIG // CzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENh
|
// SIG // CzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENh
|
||||||
// SIG // cGUxFDASBgNVBAcTC0R1cmJhbnZpbGxlMQ8wDQYDVQQK
|
// SIG // cGUxFDASBgNVBAcTC0R1cmJhbnZpbGxlMQ8wDQYDVQQK
|
||||||
@ -431,30 +434,30 @@ POCatalog.prototype.save = function(path)
|
|||||||
// SIG // OWQwCQYFKw4DAhoFAKBwMBAGCisGAQQBgjcCAQwxAjAA
|
// SIG // OWQwCQYFKw4DAhoFAKBwMBAGCisGAQQBgjcCAQwxAjAA
|
||||||
// SIG // MBkGCSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMBwGCisG
|
// SIG // MBkGCSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMBwGCisG
|
||||||
// SIG // AQQBgjcCAQsxDjAMBgorBgEEAYI3AgEVMCMGCSqGSIb3
|
// SIG // AQQBgjcCAQsxDjAMBgorBgEEAYI3AgEVMCMGCSqGSIb3
|
||||||
// SIG // DQEJBDEWBBQv+v/IHFo0ikn0Oyg+0/kbYp+LYzANBgkq
|
// SIG // DQEJBDEWBBTCEEkbHEYF8BuDJFvZB4tVmRMXQjANBgkq
|
||||||
// SIG // hkiG9w0BAQEFAASCAQCA8tXTcsCRhT/fAQ86SQbjmM4A
|
// SIG // hkiG9w0BAQEFAASCAQCSfqG1JdavPFBQt60dhTf2MTzJ
|
||||||
// SIG // qstaH7me1R9BrzZPp3WKU4m1Bkp1fFMOfw7KAmshhJSW
|
// SIG // MjKnVmur3bOTsKd3f+cNcwlprzbKSoCSA7HcYwSzQbR6
|
||||||
// SIG // Njt0sytBHBfW3awalYFiizBbqQlDzTXkQ8wAfxx+BdOr
|
// SIG // PGx7ifbE6HeICivLYEpOgdcYXUJ3zc2baRN0BjP0TVMN
|
||||||
// SIG // xsO/CiTHMEkR5fRjR8U0kPG3om0rkytzXR0jr9/xaEwh
|
// SIG // vY0j4mK42K7z7Fv1UhDb1fzJ/ayUQxeF4/sVhhfUKv3N
|
||||||
// SIG // YhD02bez1Cre9IQE5aS3ZUssygM0XxhxVTotWnJmnmHu
|
// SIG // t9Q4fdFPPH3lam9h/16sUL42DqTQGto+94tp7/XDLp+I
|
||||||
// SIG // wMaD8uMi7Pfyv1hqmkPwf5uOoOMAPC7gKUX39KF6Wm5q
|
// SIG // bwlf25Rf+wJBpldAksXEXodbK3jHhio4YU1gTDMDIlh+
|
||||||
// SIG // LmSRBNxCaUxMqUhith7scDHvEL0i6JKSq+wZwuEJn9Ev
|
// SIG // OkHr4gAeNKCZ34qoId1WpuEK0noJRcj6GKnsPiX7yiwv
|
||||||
// SIG // M0abwe4ltBPnFXagR+dmVbKboJuGTQ4ThKciofkGevlv
|
// SIG // nQhunLXoW633DYIoAltUiNf5KYtPsbrpAF1hAnT2aCgG
|
||||||
// SIG // qo9zwpoloYICCzCCAgcGCSqGSIb3DQEJBjGCAfgwggH0
|
// SIG // 0aiKR3UdoYICCzCCAgcGCSqGSIb3DQEJBjGCAfgwggH0
|
||||||
// SIG // AgEBMHIwXjELMAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5
|
// SIG // AgEBMHIwXjELMAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5
|
||||||
// SIG // bWFudGVjIENvcnBvcmF0aW9uMTAwLgYDVQQDEydTeW1h
|
// SIG // bWFudGVjIENvcnBvcmF0aW9uMTAwLgYDVQQDEydTeW1h
|
||||||
// SIG // bnRlYyBUaW1lIFN0YW1waW5nIFNlcnZpY2VzIENBIC0g
|
// SIG // bnRlYyBUaW1lIFN0YW1waW5nIFNlcnZpY2VzIENBIC0g
|
||||||
// SIG // RzICEA7P9DjI/r81bgTYapgbGlAwCQYFKw4DAhoFAKBd
|
// SIG // RzICEA7P9DjI/r81bgTYapgbGlAwCQYFKw4DAhoFAKBd
|
||||||
// SIG // MBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZI
|
// SIG // MBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZI
|
||||||
// SIG // hvcNAQkFMQ8XDTE2MDkxOTA5MjQzM1owIwYJKoZIhvcN
|
// SIG // hvcNAQkFMQ8XDTE2MTAwNTE1MTI0OVowIwYJKoZIhvcN
|
||||||
// SIG // AQkEMRYEFN0EJzHhISVqw9lvWoaKXBsGPpKhMA0GCSqG
|
// SIG // AQkEMRYEFMiK7VIQt1sVeidPMdCkfReV6BHrMA0GCSqG
|
||||||
// SIG // SIb3DQEBAQUABIIBAAwhYaJpWoecig5IdF4Lh5hTGJ0m
|
// SIG // SIb3DQEBAQUABIIBABQg3juU7zy7ol9TcyCHascUl3rm
|
||||||
// SIG // hJwoXe+hgvbU7qJbBKQWbP+iVSLmwRU7Er7To0sf/vrA
|
// SIG // eEHttRyb4jUHBCJgtsXt1Tuqls6NNAe3DV+Me3/0gu+W
|
||||||
// SIG // SoFOTKR52GHvy/718YA18c2xvGJldnqfMmzS1RkuwlrL
|
// SIG // YAzAvjwgGDNT7gKUx5UUH3b5pjsOlpvE1ARQkFUF9nEx
|
||||||
// SIG // 1Ca2/QvBmDvVHgZ8eHtVJ9GMpGnmtr3l30Wfs7PJy5XN
|
// SIG // NPaKJ4Olpq1i/QrE0GsvkGjWYXhFJGxSNAV9VcIZdQjl
|
||||||
// SIG // g4i8E1manA41ohAuzrHYbrpW1h9D69os64oWh2Ey0s6O
|
// SIG // MPfB/bYjxbQ1A3tpsIqoO9jhE2NXz8jsyIwQOqq1qi6b
|
||||||
// SIG // a3fcV/FjdnM3q7v4UK516KsdzECnGEc6IHdpbDw4ZYap
|
// SIG // HJRnfAi/Hm/LYb3UN/2EpHlocgiE+oegFzkItv0IN0xx
|
||||||
// SIG // /VkHQ4lFhDqKv9bfG5yyjE0al1p6fkAc5GTdIe+P5KF9
|
// SIG // T23jnbVsrK9kzV9rlucYUJumvEARNY7HDzifdcqYunwi
|
||||||
// SIG // /5X3ez70MA/HQX7XvSLmHAI5tBjjbGtPv94VdOn2Po2N
|
// SIG // DwRGN449hdY5BZwsSwH/pllBn44ViCuv0rPLLzOi4Zkf
|
||||||
// SIG // S+OQOx4=
|
// SIG // 8o4Ovgs=
|
||||||
// SIG // End signature block
|
// SIG // End signature block
|
||||||
|
Loading…
x
Reference in New Issue
Block a user