rendered paste bodydiff -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);