lame: Avoid crash when seeking before negotiating
[platform/upstream/gst-plugins-good.git] / ext / lame / gstlamemp3enc.c
index 38b3b63..876ad0a 100644 (file)
@@ -586,11 +586,13 @@ gst_lamemp3enc_sink_event (GstPad * pad, GstEvent * event)
 
       GST_DEBUG_OBJECT (lame, "handling FLUSH stop event");
 
-      /* clear buffers */
-      mp3_buffer_size = 7200;
-      mp3_data = g_malloc (mp3_buffer_size);
-      lame_encode_flush (lame->lgf, mp3_data, mp3_buffer_size);
-      g_free (mp3_data);
+      if (lame->lgf) {
+        /* clear buffers if we already have lame set up */
+        mp3_buffer_size = 7200;
+        mp3_data = g_malloc (mp3_buffer_size);
+        lame_encode_flush (lame->lgf, mp3_data, mp3_buffer_size);
+        g_free (mp3_data);
+      }
 
       ret = gst_pad_push_event (lame->srcpad, event);
       break;