making _set_property warn on unknown properties use GST_TIME_FORMAT for timestamp...
[platform/upstream/gstreamer.git] / gst / elements / gstfilesrc.c
index eac08fa..6ef3783 100644 (file)
@@ -245,8 +245,6 @@ gst_filesrc_init (GstFileSrc * src)
 
   src->mapbuf = NULL;
   src->mapsize = DEFAULT_MMAPSIZE;      /* default is 4MB */
-
-  src->seek_happened = FALSE;
 }
 
 static void
@@ -324,6 +322,7 @@ gst_filesrc_set_property (GObject * object, guint prop_id, const GValue * value,
       g_object_notify (G_OBJECT (src), "touch");
       break;
     default:
+      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
       break;
   }
 }
@@ -660,10 +659,10 @@ gst_filesrc_get (GstPad * pad)
     return GST_DATA (gst_event_new_flush ());
   }
   /* check for seek */
-  if (src->seek_happened) {
+  if (src->need_discont) {
     GstEvent *event;
 
-    src->seek_happened = FALSE;
+    src->need_discont = FALSE;
     GST_DEBUG_OBJECT (src, "sending discont");
     event =
         gst_event_new_discontinuous (FALSE, GST_FORMAT_BYTES, src->curoffset,
@@ -806,11 +805,12 @@ gst_filesrc_change_state (GstElement * element)
         if (!gst_filesrc_open_file (GST_FILESRC (element)))
           return GST_STATE_FAILURE;
       }
+      src->need_discont = TRUE;
       break;
     case GST_STATE_PAUSED_TO_READY:
       if (GST_FLAG_IS_SET (element, GST_FILESRC_OPEN))
         gst_filesrc_close_file (GST_FILESRC (element));
-      src->seek_happened = TRUE;
+      src->need_discont = TRUE;
       break;
     default:
       break;
@@ -910,7 +910,7 @@ gst_filesrc_srcpad_event (GstPad * pad, GstEvent * event)
           goto error;
           break;
       }
-      src->seek_happened = TRUE;
+      src->need_discont = TRUE;
       src->need_flush = GST_EVENT_SEEK_FLAGS (event) & GST_SEEK_FLAG_FLUSH;
       break;
     }