I really don't understand why this fails, sometimes; but it does.
---
 t/imap_searchqp.t | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/t/imap_searchqp.t b/t/imap_searchqp.t
index 968d4329..ff1b4535 100644
--- a/t/imap_searchqp.t
+++ b/t/imap_searchqp.t
@@ -28,12 +28,15 @@ $q = $parse->(qq{CHARSET UTF-8 From b});
 is($q->{xap}, 'f:"b"', 'charset handled');
 $q = $parse->(qq{CHARSET WTF-8 From b});
 like($q, qr/\ANO \[/, 'bad charset rejected');
-{
+
+for my $x ('', ' (try #2)') {
        open my $fh, '>:scalar', \(my $buf = '') or die;
        local *STDERR = $fh;
        $q = $parse->(qq{CHARSET});
-       is($buf, '', 'nothing spewed to STDERR on bad query');
+       last if is($buf, '', "nothing spewed to STDERR on bad query$x");
+       diag 'FIXME: above fails mysteriously sometimes, so we try again...';
 }
+
 like($q, qr/\ABAD /, 'bad charset rejected');
 
 $q = $parse->(qq{HEADER CC B (SENTBEFORE 2-Oct-1993)});

Reply via email to