diff --git a/gst/matroska/ebml-write.c b/gst/matroska/ebml-write.c index d39a23adbf..2c734f0321 100644 --- a/gst/matroska/ebml-write.c +++ b/gst/matroska/ebml-write.c @@ -619,9 +619,9 @@ gst_ebml_write_sint (GstEbmlWrite * ebml, guint32 id, gint64 num) if (num >= 0) { unum = num; } else { - unum = 0x80 << (size - 1); + unum = ((guint64) 0x80) << (size - 1); unum += num; - unum |= 0x80 << (size - 1); + unum |= ((guint64) 0x80) << (size - 1); } /* write */