1 |
slords |
1.1 |
diff -Nur -x '*.orig' -x '*.rej' e-smith-manager-1.14.0/root/etc/e-smith/events/actions/navigation-conf mezzanine_patched_e-smith-manager-1.14.0/root/etc/e-smith/events/actions/navigation-conf |
2 |
|
|
--- e-smith-manager-1.14.0/root/etc/e-smith/events/actions/navigation-conf 2008-05-14 10:37:23.000000000 -0600 |
3 |
|
|
+++ mezzanine_patched_e-smith-manager-1.14.0/root/etc/e-smith/events/actions/navigation-conf 2008-05-14 10:37:05.000000000 -0600 |
4 |
|
|
@@ -81,8 +81,7 @@ |
5 |
|
|
#warn "updating script $file for lang $lang\n"; |
6 |
|
|
my $navdb = $navdbs{$lang}; |
7 |
|
|
my $navinfo = NAVIGATIONDIR . "/navigation.$lang"; |
8 |
|
|
- unlink $navinfo unless $navdb; |
9 |
|
|
- $navdb ||= esmith::ConfigDB->create($navinfo) or |
10 |
|
|
+ $navdb ||= esmith::ConfigDB->open($navinfo) or |
11 |
|
|
die "Couldn't create $navinfo\n"; |
12 |
|
|
$navdbs{$lang} ||= $navdb; |
13 |
|
|
my $rec = $navdb->get($file) || |
14 |
|
|
@@ -96,7 +95,20 @@ |
15 |
|
|
if (-f $lfile) |
16 |
|
|
{ |
17 |
|
|
# Do a quick and dirty parse of the lexicon file |
18 |
|
|
- my $xml = $parser->parsefile($lfile); |
19 |
|
|
+ my $xmlstr = ""; |
20 |
|
|
+ open(FILE, $lfile) or die "Couldn't open $lfile:\n$!"; |
21 |
|
|
+ binmode(FILE, ":utf8"); |
22 |
|
|
+ { |
23 |
|
|
+ local $^W = 0; |
24 |
|
|
+ while ( my $line = <FILE> ) { |
25 |
|
|
+ unless ( utf8::valid($line) ) { |
26 |
|
|
+ warn "$lfile not in UTF-8 format\n"; |
27 |
|
|
+ utf8::encode($line); |
28 |
|
|
+ } |
29 |
|
|
+ $xmlstr .= $line; |
30 |
|
|
+ } |
31 |
|
|
+ } |
32 |
|
|
+ my $xml = $parser->parsestring($xmlstr); |
33 |
|
|
my @lexicon = @{$xml->[1]}; |
34 |
|
|
shift @lexicon; # Remove lexicon attributes |
35 |
|
|
while (@lexicon) |