projects
/
usenet
/
newsstats.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'thh-parsedb' into pu
[usenet/newsstats.git]
/
bin
/
parsedb.pl
diff --git
a/bin/parsedb.pl
b/bin/parsedb.pl
index
b4c2056
..
8004cb1
100755
(executable)
--- a/
bin/parsedb.pl
+++ b/
bin/parsedb.pl
@@
-198,6
+198,11
@@
while (my $HeadersR = $DBQuery->fetchrow_hashref) {
$Headers{$HeaderName.'_parsed'} = decode('MIME-Header',$Headers{$_})
if (exists($LegalEncodings{$Encoding}));
}
$Headers{$HeaderName.'_parsed'} = decode('MIME-Header',$Headers{$_})
if (exists($LegalEncodings{$Encoding}));
}
+ # forcibly modify headers with un-encoded 8bit data assuming utf-8
+ # TODO: try to guess correct enconding
+ elsif ($Headers{$_} =~ /[^\x00-\x7F]/) {
+ $Headers{$_} = decode('utf-8',$Headers{$_});
+ }
# extract name(s) and mail(s) from From: / Sender: / Reply-To:
# in parsed form, if available
if ($_ ne 'subject') {
# extract name(s) and mail(s) from From: / Sender: / Reply-To:
# in parsed form, if available
if ($_ ne 'subject') {
@@
-258,9
+263,9
@@
while (my $HeadersR = $DBQuery->fetchrow_hashref) {
split(/ /,'? ' x scalar(@DBFields)))
));
$DBWrite->execute(@SQLBindVars)
split(/ /,'? ' x scalar(@DBFields)))
));
$DBWrite->execute(@SQLBindVars)
- or &Bleat(2,sprintf("Can't write parsed data for %s to %s.%s: ".
+ or &Bleat(2,sprintf("Can't write parsed data for %s to %s.%s
for %s
: ".
"$DBI::errstr\n",$Period,
"$DBI::errstr\n",$Period,
- $Conf{'DBDatabase'},$Conf{'DBTableParse'}));
+ $Conf{'DBDatabase'},$Conf{'DBTableParse'}
, $Headers{'mid'}
));
$DBWrite->finish;
}
};
$DBWrite->finish;
}
};
This page took
0.011258 seconds
and
4
git commands to generate.