summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gst/matroska/ebml-write.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/gst/matroska/ebml-write.c b/gst/matroska/ebml-write.c
index 9c768953..46cfd4a5 100644
--- a/gst/matroska/ebml-write.c
+++ b/gst/matroska/ebml-write.c
@@ -118,7 +118,9 @@ void
gst_ebml_write_set_cache (GstEbmlWrite *ebml,
guint size)
{
+ /* This is currently broken. I don't know why yet. */
return;
+
g_return_if_fail (ebml->cache == NULL);
ebml->cache = gst_buffer_new_and_alloc (size);
@@ -276,10 +278,12 @@ gst_ebml_write_element_push (GstEbmlWrite *ebml,
}
/* if there's no cache, then don't push it! */
- if (ebml->cache)
+ if (ebml->cache) {
g_assert (buf == ebml->cache);
- else
- gst_pad_push (ebml->srcpad, GST_DATA (buf));
+ return;
+ }
+
+ gst_pad_push (ebml->srcpad, GST_DATA (buf));
}
/*
@@ -401,7 +405,9 @@ gst_ebml_write_float (GstEbmlWrite *ebml,
guint32 id,
gdouble num)
{
+#if (G_BYTE_ORDER == G_LITTLE_ENDIAN)
gint n;
+#endif
GstBuffer *buf = gst_ebml_write_element_new (ebml, sizeof (num));
gst_ebml_write_element_id (buf, id);