[958] in BarnOwl Developers
[D-O-H] r945 - branches/barnowl_sqlite/owl
daemon@ATHENA.MIT.EDU (nelhage@MIT.EDU)
Thu Oct 29 18:11:34 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: Mon, 18 Feb 2008 16:21:07 -0500 (EST)
Author: nelhage
Date: 2008-02-18 16:21:06 -0500 (Mon, 18 Feb 2008)
New Revision: 945
Modified:
branches/barnowl_sqlite/owl/functions.c
Log:
Fix owl_function_calculate_topmsg_center to not randomly move the
curmsg around.
Modified: branches/barnowl_sqlite/owl/functions.c
===================================================================
--- branches/barnowl_sqlite/owl/functions.c 2008-02-18 21:10:50 UTC (rev 944)
+++ branches/barnowl_sqlite/owl/functions.c 2008-02-18 21:21:06 UTC (rev 945)
@@ -1148,15 +1148,17 @@
void owl_function_calculate_topmsg_center(int direction, owl_view *v, owl_view_iterator *curmsg, owl_view_iterator *topmsg, int recwinlines)
{
int lines;
- owl_view_iterator *it = curmsg;
+ owl_view_iterator it;
+ owl_view_iterator_clone(&it, curmsg);
lines = 0;
- for (owl_view_iterator_prev(it);
- !owl_view_iterator_is_at_start(it);
- owl_view_iterator_prev(it)) {
- lines += owl_message_get_numlines(owl_view_iterator_get_message(it));
+ for (owl_view_iterator_prev(&it);
+ !owl_view_iterator_is_at_start(&it);
+ owl_view_iterator_prev(&it)) {
+ lines += owl_message_get_numlines(owl_view_iterator_get_message(&it));
if (lines > recwinlines/2) break;
}
+ owl_view_iterator_clone(topmsg, &it);
}
void owl_function_calculate_topmsg_paged(int direction, owl_view *v, owl_view_iterator *curmsg, owl_view_iterator *topmsg, int recwinlines, int center_on_page)