[clutter/clutter-1.18] stage-cogl: Fix buffer_age code path
- From: Adel Gadllah <agadllah src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [clutter/clutter-1.18] stage-cogl: Fix buffer_age code path
- Date: Thu, 20 Feb 2014 11:00:37 +0000 (UTC)
commit 263939553385102bf53fe3dfeaa64ee7364d7b89
Author: Adel Gadllah <adel gadllah gmail com>
Date: Sun Feb 16 22:07:43 2014 +0100
stage-cogl: Fix buffer_age code path
Currently we where checking whether the damage_history list contains
more or equal then buffer_age entries. This is wrong because we prepend
our current clip to the list just before the check.
Fix that to check whether we have more entries instead of more or equal.
https://bugzilla.gnome.org/show_bug.cgi?id=724788
clutter/cogl/clutter-stage-cogl.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
---
diff --git a/clutter/cogl/clutter-stage-cogl.c b/clutter/cogl/clutter-stage-cogl.c
index c84dafb..ab34200 100644
--- a/clutter/cogl/clutter-stage-cogl.c
+++ b/clutter/cogl/clutter-stage-cogl.c
@@ -483,11 +483,12 @@ clutter_stage_cogl_redraw (ClutterStageWindow *stage_window)
stage_cogl->damage_history = g_slist_prepend (stage_cogl->damage_history, current_damage);
- if (age != 0 && !stage_cogl->dirty_backbuffer && g_slist_length (stage_cogl->damage_history) >= age)
+ if (age != 0 && !stage_cogl->dirty_backbuffer && g_slist_length (stage_cogl->damage_history) > age)
{
int i = 0;
GSList *tmp = NULL;
- for (tmp = stage_cogl->damage_history; tmp; tmp = tmp->next)
+ /* We skip the first entry because it is the clip_region itself */
+ for (tmp = stage_cogl->damage_history->next; tmp; tmp = tmp->next)
{
_clutter_util_rectangle_union (clip_region, tmp->data, clip_region);
i++;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]