changeset 4837:05b8436873d4 v7.3.1165

updated for version 7.3.1165 Problem: HP-UX compiler can't handle zero size array. (Charles Cooper) Solution: Make the array one item big.
author Bram Moolenaar <bram@vim.org>
date Tue, 11 Jun 2013 18:42:36 +0200
parents 042bad129c6b
children 3f7ab3403078
files src/regexp.h src/regexp_nfa.c src/version.c
diffstat 3 files changed, 5 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/regexp.h
+++ b/src/regexp.h
@@ -101,7 +101,7 @@ typedef struct
 #endif
     int			nsubexp;	/* number of () */
     int			nstate;
-    nfa_state_T		state[0];	/* actually longer.. */
+    nfa_state_T		state[1];	/* actually longer.. */
 } nfa_regprog_T;
 
 /*
--- a/src/regexp_nfa.c
+++ b/src/regexp_nfa.c
@@ -6391,8 +6391,8 @@ nfa_regcomp(expr, re_flags)
      */
     post2nfa(postfix, post_ptr, TRUE);
 
-    /* Space for compiled regexp */
-    prog_size = sizeof(nfa_regprog_T) + sizeof(nfa_state_T) * nstate;
+    /* allocate the regprog with space for the compiled regexp */
+    prog_size = sizeof(nfa_regprog_T) + sizeof(nfa_state_T) * (nstate - 1);
     prog = (nfa_regprog_T *)lalloc(prog_size, TRUE);
     if (prog == NULL)
 	goto fail;
--- a/src/version.c
+++ b/src/version.c
@@ -729,6 +729,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1165,
+/**/
     1164,
 /**/
     1163,