comparison src/buffer.c @ 13244:ac42c4b11dbc v8.0.1496

patch 8.0.1496: clearing a pointer takes two lines commit https://github.com/vim/vim/commit/d23a823669d93fb2a570a039173eefe4856ac806 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Feb 10 18:45:26 2018 +0100 patch 8.0.1496: clearing a pointer takes two lines Problem: Clearing a pointer takes two lines. Solution: Add VIM_CLEAR() and replace vim_clear(). (Hirohito Higashi, closes #2629)
author Christian Brabandt <cb@256bit.org>
date Sat, 10 Feb 2018 19:00:07 +0100
parents 6559e98f3e74
children b5806be0b36d
comparison
equal deleted inserted replaced
13243:899b19739188 13244:ac42c4b11dbc
942 #ifdef FEAT_LOCALMAP 942 #ifdef FEAT_LOCALMAP
943 map_clear_int(buf, MAP_ALL_MODES, TRUE, FALSE); /* clear local mappings */ 943 map_clear_int(buf, MAP_ALL_MODES, TRUE, FALSE); /* clear local mappings */
944 map_clear_int(buf, MAP_ALL_MODES, TRUE, TRUE); /* clear local abbrevs */ 944 map_clear_int(buf, MAP_ALL_MODES, TRUE, TRUE); /* clear local abbrevs */
945 #endif 945 #endif
946 #ifdef FEAT_MBYTE 946 #ifdef FEAT_MBYTE
947 vim_free(buf->b_start_fenc); 947 VIM_CLEAR(buf->b_start_fenc);
948 buf->b_start_fenc = NULL;
949 #endif 948 #endif
950 } 949 }
951 950
952 /* 951 /*
953 * Free the b_wininfo list for buffer "buf". 952 * Free the b_wininfo list for buffer "buf".
2035 buf->b_wininfo = (wininfo_T *)alloc_clear((unsigned)sizeof(wininfo_T)); 2034 buf->b_wininfo = (wininfo_T *)alloc_clear((unsigned)sizeof(wininfo_T));
2036 2035
2037 if ((ffname != NULL && (buf->b_ffname == NULL || buf->b_sfname == NULL)) 2036 if ((ffname != NULL && (buf->b_ffname == NULL || buf->b_sfname == NULL))
2038 || buf->b_wininfo == NULL) 2037 || buf->b_wininfo == NULL)
2039 { 2038 {
2040 vim_free(buf->b_ffname); 2039 VIM_CLEAR(buf->b_ffname);
2041 buf->b_ffname = NULL; 2040 VIM_CLEAR(buf->b_sfname);
2042 vim_free(buf->b_sfname);
2043 buf->b_sfname = NULL;
2044 if (buf != curbuf) 2041 if (buf != curbuf)
2045 free_buffer(buf); 2042 free_buffer(buf);
2046 return NULL; 2043 return NULL;
2047 } 2044 }
2048 2045
3134 #endif 3131 #endif
3135 3132
3136 if (ffname == NULL || *ffname == NUL) 3133 if (ffname == NULL || *ffname == NUL)
3137 { 3134 {
3138 /* Removing the name. */ 3135 /* Removing the name. */
3139 vim_free(buf->b_ffname); 3136 VIM_CLEAR(buf->b_ffname);
3140 vim_free(buf->b_sfname); 3137 VIM_CLEAR(buf->b_sfname);
3141 buf->b_ffname = NULL;
3142 buf->b_sfname = NULL;
3143 #ifdef UNIX 3138 #ifdef UNIX
3144 st.st_dev = (dev_T)-1; 3139 st.st_dev = (dev_T)-1;
3145 #endif 3140 #endif
3146 } 3141 }
3147 else 3142 else
4259 if (str != NULL && *str != 0) 4254 if (str != NULL && *str != 0)
4260 { 4255 {
4261 if (*skipdigits(str) == NUL) 4256 if (*skipdigits(str) == NUL)
4262 { 4257 {
4263 num = atoi((char *)str); 4258 num = atoi((char *)str);
4264 vim_free(str); 4259 VIM_CLEAR(str);
4265 str = NULL;
4266 itemisflag = FALSE; 4260 itemisflag = FALSE;
4267 } 4261 }
4268 } 4262 }
4269 #endif 4263 #endif
4270 break; 4264 break;