splitmuxsink: Don't send fragment-opened-closed message if the reference ctx is NULL

It can happen during teardown that the reference context becomes NULL.
In that case, trying to send the fragment-opened-closed message would
lead to a crash.
diff --git a/gst/multifile/gstsplitmuxsink.c b/gst/multifile/gstsplitmuxsink.c
index 6ec436c..ae7104a 100644
--- a/gst/multifile/gstsplitmuxsink.c
+++ b/gst/multifile/gstsplitmuxsink.c
@@ -673,12 +673,16 @@
 
   g_object_get (splitmux->sink, "location", &location, NULL);
 
-  msg = gst_message_new_element (GST_OBJECT (splitmux),
-      gst_structure_new (msg_name,
-          "location", G_TYPE_STRING, location,
-          "running-time", GST_TYPE_CLOCK_TIME,
-          splitmux->reference_ctx->out_running_time, NULL));
-  gst_element_post_message (GST_ELEMENT_CAST (splitmux), msg);
+  /* If it's in the middle of a teardown, the reference_ctc might have become
+   * NULL */
+  if (splitmux->reference_ctx) {
+    msg = gst_message_new_element (GST_OBJECT (splitmux),
+        gst_structure_new (msg_name,
+            "location", G_TYPE_STRING, location,
+            "running-time", GST_TYPE_CLOCK_TIME,
+            splitmux->reference_ctx->out_running_time, NULL));
+    gst_element_post_message (GST_ELEMENT_CAST (splitmux), msg);
+  }
 
   g_free (location);
 }