| To: vim_dev@googlegroups.com |
| Subject: Patch 7.3.1177 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.3.1177 |
| Problem: Wasting memory on padding. |
| Solution: Reorder struct fields. (Dominique Pelle) |
| Files: src/structs.h, src/fileio.c |
| |
| |
| |
| |
| |
| *** 1180,1191 **** |
| */ |
| struct dictvar_S |
| { |
| int dv_refcount; /* reference count */ |
| - hashtab_T dv_hashtab; /* hashtab that refers to the items */ |
| int dv_copyID; /* ID used by deepcopy() */ |
| dict_T *dv_copydict; /* copied dict used by deepcopy() */ |
| - char dv_lock; /* zero, VAR_LOCKED, VAR_FIXED */ |
| - char dv_scope; /* zero, VAR_SCOPE, VAR_DEF_SCOPE */ |
| dict_T *dv_used_next; /* next dict in used dicts list */ |
| dict_T *dv_used_prev; /* previous dict in used dicts list */ |
| }; |
| --- 1180,1191 ---- |
| */ |
| struct dictvar_S |
| { |
| + char dv_lock; /* zero, VAR_LOCKED, VAR_FIXED */ |
| + char dv_scope; /* zero, VAR_SCOPE, VAR_DEF_SCOPE */ |
| int dv_refcount; /* reference count */ |
| int dv_copyID; /* ID used by deepcopy() */ |
| + hashtab_T dv_hashtab; /* hashtab that refers to the items */ |
| dict_T *dv_copydict; /* copied dict used by deepcopy() */ |
| dict_T *dv_used_next; /* next dict in used dicts list */ |
| dict_T *dv_used_prev; /* previous dict in used dicts list */ |
| }; |
| |
| |
| |
| *** 7614,7629 **** |
| |
| typedef struct AutoPat |
| { |
| - int group; /* group ID */ |
| char_u *pat; /* pattern as typed (NULL when pattern |
| has been removed) */ |
| - int patlen; /* strlen() of pat */ |
| regprog_T *reg_prog; /* compiled regprog for pattern */ |
| - char allow_dirs; /* Pattern may match whole path */ |
| - char last; /* last pattern for apply_autocmds() */ |
| AutoCmd *cmds; /* list of commands to do */ |
| struct AutoPat *next; /* next AutoPat in AutoPat list */ |
| int buflocal_nr; /* !=0 for buffer-local AutoPat */ |
| } AutoPat; |
| |
| static struct event_name |
| --- 7614,7629 ---- |
| |
| typedef struct AutoPat |
| { |
| char_u *pat; /* pattern as typed (NULL when pattern |
| has been removed) */ |
| regprog_T *reg_prog; /* compiled regprog for pattern */ |
| AutoCmd *cmds; /* list of commands to do */ |
| struct AutoPat *next; /* next AutoPat in AutoPat list */ |
| + int group; /* group ID */ |
| + int patlen; /* strlen() of pat */ |
| int buflocal_nr; /* !=0 for buffer-local AutoPat */ |
| + char allow_dirs; /* Pattern may match whole path */ |
| + char last; /* last pattern for apply_autocmds() */ |
| } AutoPat; |
| |
| static struct event_name |
| |
| |
| |
| *** 730,731 **** |
| --- 730,733 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 1177, |
| /**/ |
| |
| -- |
| hundred-and-one symptoms of being an internet addict: |
| 174. You know what a listserv is. |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ an exciting new programming language -- http://www.Zimbu.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |