[clutter] keyframe-transition: Create a new interval if necessary



commit 0ef4cc3aed55035058fd2eab2394c79310aa78f5
Author: Bastian Winkler <buz netbuz org>
Date:   Mon May 14 16:32:53 2012 +0200

    keyframe-transition: Create a new interval if necessary
    
    When setting up the transition manually by calling
    
      clutter_keyframe_transition_set_key_frame (transition, n, keys);
      clutter_keyframe_transition_set_values (transition, n, values);
      clutter_keyframe_transition_set_modes (transition, n, modes);
    
    the frame doesn't have a valid interval when calling set_keys(), so we
    need to check its existence and create it if necessary.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=676031

 clutter/clutter-keyframe-transition.c |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)
---
diff --git a/clutter/clutter-keyframe-transition.c b/clutter/clutter-keyframe-transition.c
index 5528d7f..007be9c 100644
--- a/clutter/clutter-keyframe-transition.c
+++ b/clutter/clutter-keyframe-transition.c
@@ -493,7 +493,12 @@ clutter_keyframe_transition_set_values (ClutterKeyframeTransition *transition,
     {
       KeyFrame *frame = &g_array_index (priv->frames, KeyFrame, i);
 
-      clutter_interval_set_final_value (frame->interval, &values[i]);
+      if (frame->interval)
+        clutter_interval_set_final_value (frame->interval, &values[i]);
+      else
+        frame->interval =
+          clutter_interval_new_with_values (G_VALUE_TYPE (&values[i]), NULL,
+                                            &values[i]);
     }
 }
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]