[1024] in BarnOwl Developers
[D-O-H] r1008 - 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 00:42:26 -0400 (EDT)
Author: nelhage
Date: 2008-04-02 00:42:26 -0400 (Wed, 02 Apr 2008)
New Revision: 1008
Modified:
branches/barnowl_sqlite/owl/perlwrap.pm
Log:
Update the ::Iterator predicates to be correct for partially loaded
views
Modified: branches/barnowl_sqlite/owl/perlwrap.pm
===================================================================
--- branches/barnowl_sqlite/owl/perlwrap.pm 2008-04-02 04:42:25 UTC (rev 1007)
+++ branches/barnowl_sqlite/owl/perlwrap.pm 2008-04-02 04:42:26 UTC (rev 1008)
@@ -473,7 +473,7 @@
BarnOwl::debug("Fill back from $pos...");
my $ml = BarnOwl::message_list();
return if $self->at_start;
- $ml->iterate_begin($pos, 0);
+ $ml->iterate_begin($pos, 1);
my $count = 0;
while($count < $FILL_STEP) {
my $m = $ml->iterate_next;
@@ -523,14 +523,9 @@
sub is_empty {
my $self = shift;
- return $self->_size == 0;
+ return scalar @{$self->messages} == 0;
}
-sub _size {
- my $self = shift;
- return scalar @{$self->messages};
-}
-
#####################################################################
#####################################################################
@@ -593,25 +588,25 @@
sub has_prev {
my $self = shift;
$self->fill_back;
- return $self->index > 0;
+ return $self->eff_index > 0;
}
sub has_next {
my $self = shift;
$self->fill_forward;
- return $self->index < $self->view->_size - 1;
+ return $self->eff_index < scalar @{$self->view->messages} - 1;
}
sub at_start {
my $self = shift;
$self->fill_back;
- return $self->index < 0;
+ return $self->eff_index < 0;
}
sub at_end {
my $self = shift;
$self->fill_forward;
- return $self->index >= $self->view->_size;
+ return $self->eff_index >= scalar @{$self->view->messages};
}