aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMario <mario@mariovavti.com>2018-07-30 10:01:19 +0200
committerMario <mario@mariovavti.com>2018-07-30 10:01:19 +0200
commit4e402dca7de0526b969c39d161fd715b9809ca96 (patch)
tree1649103b8865671a81145b5d499edc6a095ec0c6
parent149071bf0cb5f59d5462cd1857f8d95f3daa72cb (diff)
parentcb4afd39bd372597c66f6e14c276861f2d2b1781 (diff)
downloadvolse-hubzilla-4e402dca7de0526b969c39d161fd715b9809ca96.tar.gz
volse-hubzilla-4e402dca7de0526b969c39d161fd715b9809ca96.tar.bz2
volse-hubzilla-4e402dca7de0526b969c39d161fd715b9809ca96.zip
Merge branch 'patch-13' into 'dev'
Workaround on possible error with php2po See merge request hubzilla/core!1247
-rw-r--r--util/php2po.php21
1 files changed, 13 insertions, 8 deletions
diff --git a/util/php2po.php b/util/php2po.php
index 99578a12d..c710b86fe 100644
--- a/util/php2po.php
+++ b/util/php2po.php
@@ -26,32 +26,36 @@
$out = "";
$infile = file($pofile);
- $k="";
+ $k = "";
+ $c = "";
$ink = False;
foreach ($infile as $l) {
+ $l = trim($l, " ");
if (!preg_match("/^msgstr\[[1-9]/",$l)) {
if ($k!="" && (substr($l,0,7)=="msgstr " || substr($l,0,8)=="msgstr[0")){
$ink = False;
- $k = str_replace('\"','"',$k);
+ $k = stripslashes($k);
$v = "";
if (isset(App::$strings[$k])) {
$v = App::$strings[$k];
} else {
$k = "__ctx:".$c."__ ".$k;
- if (isset(App::$strings[$k]))
+ if (isset(App::$strings[$k])) {
$v = App::$strings[$k];
+ $c = "";
+ };
}
if (!empty($v)) {
if (is_array($v)) {
$l = "";
$n = 0;
foreach ($v as &$value) {
- $l .= "msgstr[".$n."] \"".str_replace('"','\"',$value)."\"\n";
+ $l .= "msgstr[".$n."] \"".addcslashes($value,"\"\n")."\"\n";
$n++;
}
} else {
- $l = "msgstr \"".str_replace('"','\"',$v)."\"\n";
+ $l = "msgstr \"".addcslashes($v,"\"\n")."\"\n";
}
}
}
@@ -59,17 +63,18 @@
if (substr($l,0,6)=="msgid_" || substr($l,0,7)=="msgstr[") $ink = False;
if ($ink) {
- $k .= trim($l,"\"\r\n");
+ preg_match('/^"(.*)"$/',$l,$m);
+ $k .= $m[1];
}
if (substr($l,0,6)=="msgid ") {
- preg_match('/^msgid "(.*)"/',$l,$m);
+ preg_match('/^msgid "(.*)"$/',$l,$m);
$k = $m[1];
$ink = True;
}
if (substr($l,0,8)=="msgctxt ") {
- preg_match('/^msgctxt "(.*)"/',$l,$m);
+ preg_match('/^msgctxt "(.*)"$/',$l,$m);
$c = $m[1];
}