From 022970e9f911da45215ae4faa4cf40d0bf1ddce2 Mon Sep 17 00:00:00 2001 From: Tim-Philipp Müller Date: Fri, 20 Nov 2009 16:00:47 +0000 Subject: bytewriter: fix compiler warning Some gcc versions warn about bytewriter writing to memory accessed via a const guint8 pointer, despite our explicit cast to guint8 *. Work around that by using an intermediary variable. Fixes #598526. --- libs/gst/base/gstbytewriter.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libs/gst/base/gstbytewriter.c b/libs/gst/base/gstbytewriter.c index 7b5d3fa108..375c41055c 100644 --- a/libs/gst/base/gstbytewriter.c +++ b/libs/gst/base/gstbytewriter.c @@ -437,12 +437,15 @@ gst_byte_writer_ensure_free_space (GstByteWriter * writer, guint size) gboolean \ gst_byte_writer_put_##name (GstByteWriter *writer, type val) \ { \ + guint8 *write_data; \ + \ g_return_val_if_fail (writer != NULL, FALSE); \ \ if (G_UNLIKELY (!gst_byte_writer_ensure_free_space(writer, bits/8))) \ return FALSE; \ \ - write_func ((guint8 *) &writer->parent.data[writer->parent.byte], val); \ + write_data = (guint8 *) writer->parent.data + writer->parent.byte; \ + write_func (write_data, val); \ writer->parent.byte += bits/8; \ writer->parent.size = MAX (writer->parent.size, writer->parent.byte); \ \ -- cgit v1.2.3