]> git.saurik.com Git - wxWidgets.git/blobdiff - src/unix/mediactrl.cpp
use wxFSVolume instead of duplicating its functionality in the (MSW branch of) wxGetA...
[wxWidgets.git] / src / unix / mediactrl.cpp
index 6866709fb4be0b2f931c1d62ee2c89f76ac294fa..8a549b75bbdc65139a3f0e2394ea70d181f3ae2a 100644 (file)
@@ -166,7 +166,7 @@ class WXDLLIMPEXP_MEDIA
 public:
 
     wxGStreamerMediaBackend();
-    ~wxGStreamerMediaBackend();
+    virtual ~wxGStreamerMediaBackend();
 
     virtual bool CreateControl(wxControl* ctrl, wxWindow* parent,
                                      wxWindowID id,
@@ -913,7 +913,7 @@ bool wxGStreamerMediaBackend::TryVideoSink(GstElement* videosink)
 //
 // Called when the media is about to stop
 //-----------------------------------------------------------------------------
-void wxGStreamerMediaEventHandler::OnMediaFinish(wxMediaEvent& event)
+void wxGStreamerMediaEventHandler::OnMediaFinish(wxMediaEvent& WXUNUSED(event))
 {
     // (RN - I have no idea why I thought this was good behaviour....
     // maybe it made sense for streaming/nonseeking data but
@@ -1236,6 +1236,9 @@ bool wxGStreamerMediaBackend::DoLoad(const wxString& locstring)
             return false;
     }
 
+    // free current media resources
+    gst_element_set_state (m_playbin, GST_STATE_NULL);
+
     // Make sure the passed URI is valid and tell playbin to load it
     // non-file uris are encoded
     wxASSERT(gst_uri_protocol_is_valid("file"));