diff -u exim4-4.69/debian/control exim4-4.69/debian/control --- exim4-4.69/debian/control +++ exim4-4.69/debian/control @@ -1,7 +1,8 @@ Source: exim4 Section: mail Priority: standard -Maintainer: Exim4 Maintainers +Maintainer: Ubuntu Core Developers +XSBC-Original-Maintainer: Exim4 Maintainers Uploaders: Andreas Metzler ,Marc Haber Homepage: http://www.exim.org/ Standards-Version: 3.7.3 diff -u exim4-4.69/debian/changelog exim4-4.69/debian/changelog --- exim4-4.69/debian/changelog +++ exim4-4.69/debian/changelog @@ -1,3 +1,12 @@ +exim4 (4.69-9ubuntu1) jaunty; urgency=low + + [ Daniel van Eeden ] + * debian/patches/71_exiq_grep_error_on_messages_without_size.dpatch: + Improve handling of broken messages when "exim4 -bp" (mailq) reports lines + w/o size info, LP: #18194 + + -- Dustin Kirkland Wed, 11 Feb 2009 06:43:52 -0600 + exim4 (4.69-9) unstable; urgency=medium * [update-exim4.conf]: Use POSIX character classes [:alnum:] or explicit diff -u exim4-4.69/debian/patches/00list exim4-4.69/debian/patches/00list --- exim4-4.69/debian/patches/00list +++ exim4-4.69/debian/patches/00list @@ -14,0 +15 @@ +71_exiq_grep_error_on_messages_without_size.dpatch only in patch2: unchanged: --- exim4-4.69.orig/debian/patches/71_exiq_grep_error_on_messages_without_size.dpatch +++ exim4-4.69/debian/patches/71_exiq_grep_error_on_messages_without_size.dpatch @@ -0,0 +1,37 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 71_exiq_grep_error_on_messages_without_size.dpatch +## +## DP: https://bugs.edge.launchpad.net/ubuntu/+source/exim4/+bug/181948 +## DP: Patch from Daniel van Eeden + +@DPATCH@ +--- experimental~/build-tree//src/exiqgrep.src ++++ experimental/build-tree//src/exiqgrep.src +@@ -106,7 +106,26 @@ + # Increment message counter. + $count++; + } else { +- print STDERR "Line mismatch: $line\n"; exit 1; ++ if ($line =~ /^\s*(\w+)\s+(\w{6}-\w{6}-\w{2})\s+(<.*?>)/) { ++ my $msg = $2; ++ $id{$msg}{age} = $1; ++ $id{$msg}{size} = "0K"; ++ $id{$msg}{from} = $3; ++ $id{$msg}{birth} = &msg_utc($msg); ++ $id{$msg}{ages} = time - $id{$msg}{birth}; ++ if ($line =~ /\*\*\* frozen \*\*\*$/) { ++ $id{$msg}{frozen} = 1; ++ } else { ++ $id{$msg}{frozen} = 0; ++ } ++ while( =~ /\s+(.*?\@.*)$/) { ++ push(@{$id{$msg}{rcpt}},$1); ++ } ++ # Increment message counter. ++ $count++; ++ } else { ++ print STDERR "Line mismatch: $line\n"; exit 1; ++ } + } + } + close(QUEUE) or die("Error closing pipe: $!\n");