All pastes #911095 Raw Edit

Unbenannt

public text v1 · immutable
·published 2008-02-20 14:04 UTC
rendered paste body
diff -u -p -a -u -p -r1.9 gstmythtvsrc.c
--- gstmythtvsrc.c	22 Jan 2008 09:55:23 -0000	1.9
+++ gstmythtvsrc.c	20 Feb 2008 14:03:43 -0000
@@ -405,10 +405,8 @@ gst_mythtv_src_create (GstPushSrc * psrc
 
   *outbuf = gst_buffer_new ();
   GST_BUFFER_SIZE (*outbuf) = buffer->len;
-  GST_BUFFER_MALLOCDATA (*outbuf) = g_malloc0 (GST_BUFFER_SIZE (*outbuf));
+  GST_BUFFER_MALLOCDATA (*outbuf) = buffer->data;
   GST_BUFFER_DATA (*outbuf) = GST_BUFFER_MALLOCDATA (*outbuf);
-  g_memmove (GST_BUFFER_DATA ((*outbuf)), buffer->data,
-      GST_BUFFER_SIZE (*outbuf));
   GST_BUFFER_OFFSET (*outbuf) = src->read_offset;
   GST_BUFFER_OFFSET_END (*outbuf) =
       src->read_offset + GST_BUFFER_SIZE (*outbuf);
@@ -416,7 +414,7 @@ gst_mythtv_src_create (GstPushSrc * psrc
   src->read_offset += GST_BUFFER_SIZE (*outbuf);
   src->bytes_read += GST_BUFFER_SIZE (*outbuf);
 
-  g_byte_array_free (buffer, TRUE);
+  g_byte_array_free (buffer, FALSE);
 
   if (result == GMYTH_FILE_READ_NEXT_PROG_CHAIN) {
     GstPad *peer;
@@ -490,7 +488,7 @@ gst_mythtv_src_do_seek (GstBaseSrc * bas
           segment->start, G_SEEK_SET);
     else if (IS_GMYTH_FILE_TRANSFER (src->file))
       new_offset = gmyth_file_transfer_seek (GMYTH_FILE_TRANSFER (src->file),
-          segment->start, SEEK_SET);
+          segment->start, G_SEEK_SET);
     if (G_UNLIKELY (new_offset < 0)) {
       ret = FALSE;
       if (!src->live_tv)
@@ -687,6 +685,7 @@ gst_mythtv_src_get_size (GstBaseSrc * bs
   GstMythtvSrc *src = GST_MYTHTV_SRC (bsrc);
   gboolean ret = TRUE;
 
+#if 0
   GST_LOG_OBJECT (src,
       "Differs from previous content size: %d (max.: %d)",
       abs (src->content_size - src->prev_content_size),
@@ -706,6 +705,9 @@ gst_mythtv_src_get_size (GstBaseSrc * bs
       src->update_prog_chain = TRUE;
     }
   }
+#endif
+
+  src->content_size = gmyth_file_get_filesize (src->file);
 
   *size = src->content_size;
   GST_LOG_OBJECT (src, "Content size = %lld", src->content_size);