Changeset 230669 in webkit


Ignore:
Timestamp:
Apr 16, 2018 9:01:56 AM (6 years ago)
Author:
commit-queue@webkit.org
Message:

[GStreamer] Set TrackPrivateBaseGStreamer metadata information even if no client is avalaible
https://bugs.webkit.org/show_bug.cgi?id=184651

Patch by Thibault Saunier <tsaunier@igalia.com> on 2018-04-16
Reviewed by Philippe Normand.

We can't notify the client if none is connected, but still we need to fill our metadatas from
the provided GstTagList, especially in the case of playbin3 where the client is not set yet
at construct time but the metadata might already be preset (and won't be updated later on).

No new tests are added as we already have a few ones that are currently disabled in
the mediastream testsuite. This patch is part of the work to enable them.

  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:

(WebCore::TrackPrivateBaseGStreamer::notifyTrackOfTagsChanged):

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r230667 r230669  
     12018-04-16  Thibault Saunier  <tsaunier@igalia.com>
     2
     3        [GStreamer] Set TrackPrivateBaseGStreamer metadata information even if no client is avalaible
     4        https://bugs.webkit.org/show_bug.cgi?id=184651
     5
     6        Reviewed by Philippe Normand.
     7
     8        We can't notify the client if none is connected, but still we need to fill our metadatas from
     9        the provided GstTagList, especially in the case of playbin3 where the client is not set yet
     10        at construct time but the metadata might already be preset (and won't be updated later on).
     11
     12        No new tests are added as we already have a few ones that are currently disabled in
     13        the mediastream testsuite. This patch is part of the work to enable them.
     14
     15        * platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
     16        (WebCore::TrackPrivateBaseGStreamer::notifyTrackOfTagsChanged):
     17
    1182018-04-16  Antoine Quint  <graouts@apple.com>
    219
  • trunk/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp

    r230625 r230669  
    173173{
    174174    TrackPrivateBaseClient* client = m_owner->client();
    175     if (!client)
    176         return;
    177175
    178176    GRefPtr<GstTagList> tags;
     
    181179        tags.swap(m_tags);
    182180    }
     181
    183182    if (!tags)
    184183        return;
    185184
    186     if (getTag(tags.get(), GST_TAG_TITLE, m_label))
     185    if (getTag(tags.get(), GST_TAG_TITLE, m_label) && client)
    187186        client->labelChanged(m_label);
    188187
     
    195194
    196195    m_language = language;
    197     client->languageChanged(m_language);
     196    if (client)
     197        client->languageChanged(m_language);
    198198}
    199199
Note: See TracChangeset for help on using the changeset viewer.