mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-20 16:51:10 +00:00
project: Compute relocation URIs in missing-uri signal
Until know we were doing it outside of the signal and subclasses didn't have a chance to know that some assets was relocated. This is required so that Pitivi can handle proxy delation and relocated assets. Required for https://gitlab.gnome.org/GNOME/pitivi/issues/2203
This commit is contained in:
parent
43e075d81f
commit
5f5cbd111c
1 changed files with 11 additions and 5 deletions
|
@ -313,6 +313,13 @@ ges_missing_uri_default (GESProject * self, GError * error,
|
||||||
{
|
{
|
||||||
guint i;
|
guint i;
|
||||||
const gchar *old_uri = ges_asset_get_id (wrong_asset);
|
const gchar *old_uri = ges_asset_get_id (wrong_asset);
|
||||||
|
gchar *new_id = NULL;
|
||||||
|
|
||||||
|
if (ges_asset_request_id_update (wrong_asset, &new_id, error) && new_id) {
|
||||||
|
GST_INFO_OBJECT (self, "Returned guessed new ID: %s", new_id);
|
||||||
|
|
||||||
|
return new_id;
|
||||||
|
}
|
||||||
|
|
||||||
if (new_paths == NULL)
|
if (new_paths == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@ -588,11 +595,10 @@ ges_project_try_updating_id (GESProject * project, GESAsset * asset,
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (new_id == NULL) {
|
/* Always send the MISSING_URI signal if requesting new ID is possible
|
||||||
GST_DEBUG_OBJECT (project, "Sending 'missing-uri' signal for %s", id);
|
* so that subclasses of GESProject are aware of the missing-uri */
|
||||||
g_signal_emit (project, _signals[MISSING_URI_SIGNAL], 0, error, asset,
|
g_signal_emit (project, _signals[MISSING_URI_SIGNAL], 0, error, asset,
|
||||||
&new_id);
|
&new_id);
|
||||||
}
|
|
||||||
|
|
||||||
if (new_id) {
|
if (new_id) {
|
||||||
GST_DEBUG_OBJECT (project, "new id found: %s", new_id);
|
GST_DEBUG_OBJECT (project, "new id found: %s", new_id);
|
||||||
|
|
Loading…
Reference in a new issue