Patch 7.3.1177
Problem:    Wasting memory on padding.
Solution:   Reorder struct fields. (Dominique Pelle)
Files:      src/structs.h, src/fileio.c


*** ../vim-7.3.1176/src/structs.h       2013-06-06 14:55:16.000000000 +0200
--- src/structs.h       2013-06-12 19:21:02.000000000 +0200
***************
*** 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 */
  };
*** ../vim-7.3.1176/src/fileio.c        2013-06-08 18:19:39.000000000 +0200
--- src/fileio.c        2013-06-12 19:23:35.000000000 +0200
***************
*** 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
*** ../vim-7.3.1176/src/version.c       2013-06-12 18:13:31.000000000 +0200
--- src/version.c       2013-06-12 19:20:19.000000000 +0200
***************
*** 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 -- [email protected] -- 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    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Raspunde prin e-mail lui