Date: Saturday, March 8, 2014 @ 17:24:20 Author: ioni Revision: 207402
fix blinking issue with gnome using nvidia 334.21 Added: clutter/repos/extra-i686/fix_buffer_age.patch ----------------------+ fix_buffer_age.patch | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) Added: fix_buffer_age.patch =================================================================== --- fix_buffer_age.patch (rev 0) +++ fix_buffer_age.patch 2014-03-08 16:24:20 UTC (rev 207402) @@ -0,0 +1,34 @@ +From 6665f47d66a871b6e1a5f4200282f42da043a0e8 Mon Sep 17 00:00:00 2001 +From: Adel Gadllah <adel.gadl...@gmail.com> +Date: Sun, 16 Feb 2014 21:07:43 +0000 +Subject: 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 +--- +diff --git a/clutter/cogl/clutter-stage-cogl.c b/clutter/cogl/clutter-stage-cogl.c +index 86546b1..cff8444 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++; +-- +cgit v0.9.2