diff src/diff.c @ 20007:aadd1cae2ff5 v8.2.0559

patch 8.2.0559: clearing a struct is verbose Commit: https://github.com/vim/vim/commit/a80faa8930ed5a554beeb2727762538873135e83 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Apr 12 19:37:17 2020 +0200 patch 8.2.0559: clearing a struct is verbose Problem: Clearing a struct is verbose. Solution: Define and use CLEAR_FIELD() and CLEAR_POINTER().
author Bram Moolenaar <Bram@vim.org>
date Sun, 12 Apr 2020 19:45:05 +0200
parents 435726a03481
children d571231175b4
line wrap: on
line diff
--- a/src/diff.c
+++ b/src/diff.c
@@ -939,14 +939,14 @@ ex_diffupdate(exarg_T *eap)	// "eap" can
 	goto theend;
 
     // Only use the internal method if it did not fail for one of the buffers.
-    vim_memset(&diffio, 0, sizeof(diffio));
+    CLEAR_FIELD(diffio);
     diffio.dio_internal = diff_internal() && !diff_internal_failed();
 
     diff_try_update(&diffio, idx_orig, eap);
     if (diffio.dio_internal && diff_internal_failed())
     {
 	// Internal diff failed, use external diff instead.
-	vim_memset(&diffio, 0, sizeof(diffio));
+	CLEAR_FIELD(diffio);
 	diff_try_update(&diffio, idx_orig, eap);
     }
 
@@ -1075,9 +1075,9 @@ diff_file_internal(diffio_T *diffio)
     xdemitconf_t    emit_cfg;
     xdemitcb_t	    emit_cb;
 
-    vim_memset(&param, 0, sizeof(param));
-    vim_memset(&emit_cfg, 0, sizeof(emit_cfg));
-    vim_memset(&emit_cb, 0, sizeof(emit_cb));
+    CLEAR_FIELD(param);
+    CLEAR_FIELD(emit_cfg);
+    CLEAR_FIELD(emit_cb);
 
     param.flags = diff_algorithm;