validate:scenario: Set the main action structure in fill_structure
authorThibault Saunier <thibault.saunier@collabora.com>
Fri, 27 Feb 2015 21:39:42 +0000 (22:39 +0100)
committerThibault Saunier <tsaunier@gnome.org>
Fri, 10 Apr 2015 14:53:40 +0000 (16:53 +0200)
Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D71

validate/gst/validate/gst-validate-scenario.c

index f9daea43af0599e10cacd88516968603f39bb4ab..48c3a48e90b72095c94f016886d22db140f11eb0 100644 (file)
@@ -1043,7 +1043,6 @@ _set_action_playback_time (GstValidateScenario * scenario,
   return TRUE;
 }
 
-
 static GstValidateExecuteActionReturn
 _fill_action (GstValidateScenario * scenario, GstValidateAction * action,
     GstStructure * structure, gboolean add_to_lists)
@@ -1086,6 +1085,9 @@ _fill_action (GstValidateScenario * scenario, GstValidateAction * action,
 
   action->structure = gst_structure_copy (structure);
 
+  if (!action->priv->main_structure)
+    action->priv->main_structure = gst_structure_copy (structure);
+
   if (IS_CONFIG_ACTION_TYPE (action_type->flags)) {
     res = action_type->execute (scenario, action);
     gst_validate_action_unref (action);
@@ -1115,7 +1117,6 @@ _fill_action (GstValidateScenario * scenario, GstValidateAction * action,
   return res;
 }
 
-
 static GstValidateExecuteActionReturn
 _execute_sub_action_action (GstValidateAction * action)
 {
@@ -1859,7 +1860,6 @@ _load_scenario_file (GstValidateScenario * scenario,
             structure, TRUE) == GST_VALIDATE_EXECUTE_ACTION_ERROR)
       goto failed;
 
-    action->priv->main_structure = gst_structure_copy (structure);
     action->action_number = priv->num_actions++;
   }