Enlarge dummy regex pass1 compilation node
authorKarl Williamson <public@khwilliamson.com>
Fri, 6 Sep 2013 04:40:54 +0000 (22:40 -0600)
committerKarl Williamson <public@khwilliamson.com>
Tue, 24 Sep 2013 17:36:18 +0000 (11:36 -0600)
commit9a81a976fd1f8a25898421ce05e1e4d1b2ef88d3
tree09cbedfcc60b24caf48cf0e4342f87977c89f274
parentcf78de0bc205ee8b764da82ab0cc9c394067453e
Enlarge dummy regex pass1 compilation node

In pass 1 of compiling regular expressions, the needed size is
calculated.  There is space allocated for a scratch node that can be
used for the things that the real one will hold in pass 2.  It is valid
only while working on the current node, and gets overwritten in the next
node.

Until this commit, this scratch space was sized only for the smallest
node type, meaning that larger types could not use it for scratch.  Now
it is sized to be the largest non EXACTish node.

We could make it an array of 256 + overhead bytes instead to be able to
hold the EXACTish nodes, but I don't see a need for that now.
regcomp.c
regcomp.h