diff src/blob.c @ 15456:f01eb1aed348 v8.1.0736

patch 8.1.0736: code for Blob not sufficiently tested commit https://github.com/vim/vim/commit/c0f5a78c15b194f23bedb82e6825e34f481e6532 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Jan 13 15:16:13 2019 +0100 patch 8.1.0736: code for Blob not sufficiently tested Problem: Code for Blob not sufficiently tested. Solution: Add more tests. Fix uncovered crash. Add test_null_blob().
author Bram Moolenaar <Bram@vim.org>
date Sun, 13 Jan 2019 15:30:08 +0100
parents 1d2b5c016f17
children 435fcefd2c8e
line wrap: on
line diff
--- a/src/blob.c
+++ b/src/blob.c
@@ -114,13 +114,16 @@ blob_equal(
     blob_T	*b1,
     blob_T	*b2)
 {
-    int i;
+    int	    i;
+    int	    len1 = blob_len(b1);
+    int	    len2 = blob_len(b2);
 
-    if (b1 == NULL || b2 == NULL)
-	return FALSE;
+    // empty and NULL are considered the same
+    if (len1 == 0 && len2 == 0)
+	return TRUE;
     if (b1 == b2)
 	return TRUE;
-    if (blob_len(b1) != blob_len(b2))
+    if (len1 != len2)
 	return FALSE;
 
     for (i = 0; i < b1->bv_ga.ga_len; i++)