gst/gstregistrybinary.c: Return the old CRC instead of 0 if we give a NULL buffer...
authorSebastian Dröge <slomo@circular-chaos.org>
Sat, 19 Apr 2008 15:42:19 +0000 (15:42 +0000)
committerSebastian Dröge <slomo@circular-chaos.org>
Sat, 19 Apr 2008 15:42:19 +0000 (15:42 +0000)
Original commit message from CVS:
* gst/gstregistrybinary.c: (_gst_crc32):
Return the old CRC instead of 0 if we give a NULL buffer
or a buffer with a length of 0.

ChangeLog
gst/gstregistrybinary.c

index d30d15e..63b6dbb 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2008-04-19  Sebastian Dröge  <slomo@circular-chaos.org>
 
+       * gst/gstregistrybinary.c: (_gst_crc32):
+       Return the old CRC instead of 0 if we give a NULL buffer
+       or a buffer with a length of 0.
+
+2008-04-19  Sebastian Dröge  <slomo@circular-chaos.org>
+
        * gst/gsturi.c: (gst_uri_protocol_check_internal),
        (gst_uri_get_protocol), (gst_uri_has_protocol),
        (gst_uri_construct), (gst_uri_handler_set_uri):
index 926b197..d810c80 100644 (file)
 /* Changes for gstreamer:
  * - Changed to use GLib data types
  * - Change function name to _gst_crc32
+ * - Return the old CRC instead of 0 when len or buf are 0/NULL
  */
 
 /* ========================================================================
@@ -192,8 +193,9 @@ static const guint32 crc_table[256] = {
 static guint32
 _gst_crc32 (guint32 crc, const gchar * buf, guint len)
 {
-  if (buf == NULL)
-    return 0L;
+  if (buf == NULL || len == 0)
+    return crc;
+
   crc = crc ^ 0xffffffffL;
   while (len >= 8) {
     DO8 (buf);