about summary refs log tree commit diff
path: root/posix/regex_internal.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-12-15 00:56:30 +0000
committerUlrich Drepper <drepper@redhat.com>2003-12-15 00:56:30 +0000
commita0a8461cf99175130a793e6d277b199aa8e670f9 (patch)
tree555984ef5eed2eb4670be60f02c746e2c3e5e9f0 /posix/regex_internal.c
parent0ce7f49c2fe42f50de0e9a3d8eb8e586d41d9adc (diff)
downloadglibc-a0a8461cf99175130a793e6d277b199aa8e670f9.tar.gz
glibc-a0a8461cf99175130a793e6d277b199aa8e670f9.tar.xz
glibc-a0a8461cf99175130a793e6d277b199aa8e670f9.zip
Update.
2003-12-14  Paolo Bonzini  <bonzini@gnu.org>

	* posix/regex_internal.c (re_acquire_state_context):
        Compare the node sets after all the other comparisons.

2003-12-13  Paolo Bonzini  <bonzini@gnu.org>

	* posix/regexec.c (find_subexp_node, check_arrival,
	check_arrival_add_next_nodes, check_arrival_expand_ecl,
	check_arrival_expand_ecl_sub, expand_bkref_cache):
	Rename the FL_OPEN parameter to TYPE, which is either
	OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP.  Callers adjusted.

	* Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
2003-11-12  David Mosberger  <davidm@hpl.hp.com>
Diffstat (limited to 'posix/regex_internal.c')
-rw-r--r--posix/regex_internal.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/posix/regex_internal.c b/posix/regex_internal.c
index 1fd3e164ef..b9b2d3a27b 100644
--- a/posix/regex_internal.c
+++ b/posix/regex_internal.c
@@ -1398,10 +1398,9 @@ re_acquire_state_context (err, dfa, nodes, context)
   for (i = 0 ; i < spot->num ; i++)
     {
       re_dfastate_t *state = spot->array[i];
-      if (hash != state->hash)
-	continue;
-      if (re_node_set_compare (state->entrance_nodes, nodes)
-	  && state->context == context)
+      if (state->hash == hash
+	  && state->context == context
+	  && re_node_set_compare (state->entrance_nodes, nodes))
 	return state;
     }
   /* There are no appropriate state in `dfa', create the new one.  */