mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-23 18:21:04 +00:00
omx: handle both errors in the two steps of update_port_definition
Also consider potential errors in the _get_parameter() in the return of the update_port_definition function. CID #1287052
This commit is contained in:
parent
3aa008adb7
commit
70c48cf85f
1 changed files with 8 additions and 5 deletions
13
omx/gstomx.c
13
omx/gstomx.c
|
@ -1197,7 +1197,7 @@ OMX_ERRORTYPE
|
|||
gst_omx_port_update_port_definition (GstOMXPort * port,
|
||||
OMX_PARAM_PORTDEFINITIONTYPE * port_def)
|
||||
{
|
||||
OMX_ERRORTYPE err = OMX_ErrorNone;
|
||||
OMX_ERRORTYPE err_get, err_set = OMX_ErrorNone;
|
||||
GstOMXComponent *comp;
|
||||
|
||||
g_return_val_if_fail (port != NULL, FALSE);
|
||||
|
@ -1205,16 +1205,19 @@ gst_omx_port_update_port_definition (GstOMXPort * port,
|
|||
comp = port->comp;
|
||||
|
||||
if (port_def)
|
||||
err =
|
||||
err_set =
|
||||
gst_omx_component_set_parameter (comp, OMX_IndexParamPortDefinition,
|
||||
port_def);
|
||||
gst_omx_component_get_parameter (comp, OMX_IndexParamPortDefinition,
|
||||
err_get = gst_omx_component_get_parameter (comp, OMX_IndexParamPortDefinition,
|
||||
&port->port_def);
|
||||
|
||||
GST_DEBUG_OBJECT (comp->parent, "Updated %s port %u definition: %s (0x%08x)",
|
||||
comp->name, port->index, gst_omx_error_to_string (err), err);
|
||||
comp->name, port->index, gst_omx_error_to_string (err_set), err_set);
|
||||
|
||||
return err;
|
||||
if (err_set != OMX_ErrorNone)
|
||||
return err_set;
|
||||
else
|
||||
return err_get;
|
||||
}
|
||||
|
||||
/* NOTE: Uses comp->lock and comp->messages_lock */
|
||||
|
|
Loading…
Reference in a new issue