[1023] in BarnOwl Developers
[D-O-H] r1009 - branches/barnowl_sqlite/owl
daemon@ATHENA.MIT.EDU (nelhage@MIT.EDU)
Thu Oct 29 18:12:14 2009
Resent-From: nelhage@mit.edu
Resent-To: barnowl-dev-mtg@charon.mit.edu
X-Original-To: nelhage@nelhage.com
To: dirty-owl-hackers@MIT.EDU
From: nelhage@MIT.EDU
Reply-to: dirty-owl-hackers@MIT.EDU
Date: Wed, 2 Apr 2008 13:26:21 -0400 (EDT)
Author: nelhage
Date: 2008-04-02 13:26:20 -0400 (Wed, 02 Apr 2008)
New Revision: 1009
Modified:
branches/barnowl_sqlite/owl/perlwrap.pm
Log:
Fix a confusion between message objects and message IDs
Modified: branches/barnowl_sqlite/owl/perlwrap.pm
===================================================================
--- branches/barnowl_sqlite/owl/perlwrap.pm 2008-04-02 04:42:26 UTC (rev 1008)
+++ branches/barnowl_sqlite/owl/perlwrap.pm 2008-04-02 17:26:20 UTC (rev 1009)
@@ -437,7 +437,7 @@
my $msg = shift;
return unless $self->at_end;
if(BarnOwl::filter_message_match($self->get_filter, $msg)) {
- push @{$self->messages}, $msg;
+ push @{$self->messages}, $msg->{id};
}
}
@@ -469,10 +469,10 @@
sub fill_back {
my $self = shift;
- my $pos = shift || $self->messages->[0] - 1;
+ return if $self->at_start;
+ my $pos = shift || ($self->messages->[0] - 1);
BarnOwl::debug("Fill back from $pos...");
my $ml = BarnOwl::message_list();
- return if $self->at_start;
$ml->iterate_begin($pos, 1);
my $count = 0;
while($count < $FILL_STEP) {
@@ -485,18 +485,18 @@
if(BarnOwl::filter_message_match($self->get_filter, $m)) {
$self->{offset}++;
$count++;
- unshift @{$self->messages}, $m
+ unshift @{$self->messages}, $m->{id};
}
}
$ml->iterate_done;
}
sub fill_forward {
- BarnOwl::debug("Fill forward...");
my $self = shift;
- my $pos = shift || $self->messages->[-1] + 1;
+ return if $self->at_end;
+ my $pos = shift || ($self->messages->[-1] + 1);
+ BarnOwl::debug("Fill forward from $pos...");
my $ml = BarnOwl::message_list();
- return if $self->at_end;
$ml->iterate_begin($pos, 0);
my $count = 0;
while($count < $FILL_STEP) {
@@ -508,7 +508,7 @@
}
if(BarnOwl::filter_message_match($self->get_filter, $m)) {
$count++;
- push @{$self->messages}, $m
+ push @{$self->messages}, $m->{id};
}
}
$ml->iterate_done;
@@ -629,7 +629,8 @@
sub get_message {
my $self = shift;
- return $self->view->messages->[$self->eff_index];
+ BarnOwl::debug("get_message: index=@{[$self->index]}, offset=@{[$self->view->offset]}");
+ return BarnOwl::message_list->get_by_id($self->view->messages->[$self->eff_index]);
}
sub fill_back {