Allows us to do away with silly eval{} blocks.
$partid = $1;
}
-eval {
- if ( $lookup_key eq "message" )
- {
- $msg = Emesinae::Message->lookup_id( $dbh, $lookup_value );
- }
- elsif ( $lookup_key eq "mid" ) {
- $lookup_value = uri_unescape($lookup_value);
- $msg = Emesinae::Message->lookup_msgid( $dbh, $lookup_value );
- }
-};
-fourohfour() if $@;
+if ( $lookup_key eq "message" )
+{
+ $msg = Emesinae::Message->lookup_id( $dbh, $lookup_value );
+}
+elsif ( $lookup_key eq "mid" ) {
+ $lookup_value = uri_unescape($lookup_value);
+ $msg = Emesinae::Message->lookup_msgid( $dbh, $lookup_value );
+}
fourohfour() unless $msg;
if ( $mode eq "raw" ) {
my $self = $class->new( $dbh, ID => $bugid );
my $msg = Emesinae::Message->lookup_msgid( $dbh, $msgid, Insert => 1 );
+ die "lookup_msgid or insert failed" unless $msg;
+
$self->add_subthread($msg);
return $self;
while ( defined( my $row = $sth->fetch ) ) {
my ( $inc, $msgid ) = @$row;
my $m = Emesinae::Message->lookup_id( $self->{dbh}, $msgid );
+ die "lookup_id failed" unless $m;
#print "Subthread ".$m->{msgid}."\n";
$m->subthread( $inc, \%refs );
my $row = $sth->fetch;
- die "lookup_id $id" unless defined $row;
+ return undef unless defined $row;
my ( $msgid, $present, $inserted, $msgtype, $date, $from, $to, $cc, $subj )
= @{$row};
$present = 0;
}
else {
- die "lookup_msgid $msgid";
+ return undef;
}
my $self = {
$irt =~ s/ (.*)$//;
my $refto =
Emesinae::Message->lookup_msgid( $self->{dbh}, $irt, Insert => 1 );
+ die "lookup_msgid or insert failed" unless $refto;
$sth =
$self->{dbh}->prepare(
q{INSERT OR IGNORE INTO refs (parent_id,child_id) VALUES (?1,?2)});
foreach our $r ( split(/\s/) ) {
my $refto =
Emesinae::Message->lookup_msgid( $self->{dbh}, $r, Insert => 1 );
+ die "lookup_msgid or insert failed" unless $refto;
$sth =
$self->{dbh}->prepare(
q{INSERT OR IGNORE INTO refs (parent_id,child_id) VALUES (?1,?2)}
chomp($msgid);
my $self = lookup_msgid( $class, $dbh, $msgid, Insert => 1 );
+ die "lookup_msgid or insert failed" unless $self;
$self->update($header);
return $self;
}
my $id = $r->[0];
next if exists $refs->{$id} and $refs->{$id}->{Include} eq $inc;
my $m = Emesinae::Message->lookup_id( $self->{dbh}, $id );
+ die "lookup_id failed" unless $m;
$refs->{$id} = {
Message => $m,
Include => $inc,
$more = 1;
my $m = Emesinae::Message->lookup_msgid( $dbh, $msgid );
+ die "lookup_msgid" unless $m;
my $sth =
$dbh->prepare(q{SELECT childid FROM refs WHERE parentid = ?});
while ( defined( my $r = $sth->fetch ) ) {
my $id = $r->[0];
my $m = Emesinae::Message->lookup_id( $dbh, $id );
+ die "lookup_id failed" unless $m;
next if $msgs{ $m->{msgid} };
$msgs{ $m->{msgid} } = 0;# unless $msgs{ $m->{msgid} };
while ( defined( my $r = $sth->fetch ) ) {
my $id = $r->[0];
my $m = Emesinae::Message->lookup_id( $dbh, $id );
+ die "lookup_id failed" unless $m;
next if $msgs{ $m->{msgid} };
$msgs{ $m->{msgid} } = 0;# unless $msgs{ $m->{msgid} };
our $msgid = $ARGV[0];
our $msg = Emesinae::Message->lookup_msgid( $dbh, $msgid );
+die "lookup_msgid" unless $msg;
our $id = $msg->id;
print STDERR "Message is $id\n";
# Insert both control and reply messages into DB with the correct type.
my $mcontrol =
Emesinae::Message->lookup_msgid( $dbh, $message_id, Insert => 1 );
+ die "lookup_msgid or insert control failed" unless $mcontrol;
my $mreply =
Emesinae::Message->lookup_msgid( $dbh, $this_id, Insert => 1 );
+ die "lookup_msgid or insert reply failed" unless $mreply;
$mcontrol->set_type("control");
$mreply->set_type("control-reply");
sub lookup_msgid ($) {
my $msgid = parse_msgid(shift);
-
- return Emesinae::Message->lookup_msgid( $dbh, $msgid, Insert => 1 );
+ my $msg = Emesinae::Message->lookup_msgid( $dbh, $msgid, Insert => 1 );
+ die "lookup_msgid or insert failed" unless $msg;
+ return $msg
}
sub lookup_bugid ($) {