Opened 16 years ago
Closed 15 years ago
#5434 closed defect (fixed)
nuvexport cannot handle '&'
Reported by: | Owned by: | xris | |
---|---|---|---|
Priority: | minor | Milestone: | 0.21.1 |
Component: | perl / nuvexport | Version: | 0.21 |
Severity: | medium | Keywords: | |
Cc: | Ticket locked: | no |
Description
If the db-password contains an "&", mythtv will save it as an "&" in the config-file. So if nuvexport reads this file with the regular expression (and not via an xml-parser), it will not recognize this.
The solution which worked for me was to replace the &. In line 278 of the MythTV.pm (I am using Ubuntu and in my case it's in /usr/share/perl5/) you can find this code:
elsif ($line =~ m#<DBPassword>(.*?)</DBPassword>#) {
$mysql_conf{'db_pass'} = $1;
}
I replaced this code with:
elsif ($line =~ m#<DBPassword>(.*?)</DBPassword>#) {
my $pwdtmp = $1; my $find = "&"; my $replace = "&"; $pwdtmp =~ s/$find/$replace/g; $mysql_conf{'db_pass'} = $pwdtmp;
}
Chris Peterson wrote me the following about the bug:
[...] This is actually more about the perl bindings (which nuvexport uses) not unescaping entities in the XML code. Easy fix [...]
If I can help anyhow, please let me know.
Tobias
(In [20324]) unescape some html entities in the mythtv conf db password field. closes #5434