Update.
authorUlrich Drepper <drepper@redhat.com>
Wed, 10 Nov 2004 18:51:26 +0000 (18:51 +0000)
committerUlrich Drepper <drepper@redhat.com>
Wed, 10 Nov 2004 18:51:26 +0000 (18:51 +0000)
* posix/regexec.c (match_ctx_free_subtops): Remove, merge into...
(match_ctx_clean): ... this function.
(match_ctx_free): Call match_ctx_clean.

ChangeLog
posix/regexec.c

index 2088104..474d36e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2004-11-09  Paolo Bonzini  <bonzini@gnu.org>
 
+       * posix/regexec.c (match_ctx_free_subtops): Remove, merge into...
+       (match_ctx_clean): ... this function.
+       (match_ctx_free): Call match_ctx_clean.
+
        * posix/regexec.c (transit_state): Remove the check for
        out-of-bounds buffers.
        (check_matching): Check here for out-of-bounds buffers.
index e6d9257..7910411 100644 (file)
@@ -22,8 +22,6 @@ static reg_errcode_t match_ctx_init (re_match_context_t *cache, int eflags,
                                     int n) internal_function;
 static void match_ctx_clean (re_match_context_t *mctx) internal_function;
 static void match_ctx_free (re_match_context_t *cache) internal_function;
-static void match_ctx_free_subtops (re_match_context_t *mctx)
-     internal_function;
 static reg_errcode_t match_ctx_add_entry (re_match_context_t *cache, int node,
                                          int str_idx, int from, int to)
      internal_function;
@@ -4102,28 +4100,6 @@ static void
 match_ctx_clean (mctx)
     re_match_context_t *mctx;
 {
-  match_ctx_free_subtops (mctx);
-  mctx->nsub_tops = 0;
-  mctx->nbkref_ents = 0;
-}
-
-/* Free all the memory associated with MCTX.  */
-
-static void
-match_ctx_free (mctx)
-    re_match_context_t *mctx;
-{
-  match_ctx_free_subtops (mctx);
-  re_free (mctx->sub_tops);
-  re_free (mctx->bkref_ents);
-}
-
-/* Free all the memory associated with MCTX->SUB_TOPS.  */
-
-static void
-match_ctx_free_subtops (mctx)
-     re_match_context_t *mctx;
-{
   int st_idx;
   for (st_idx = 0; st_idx < mctx->nsub_tops; ++st_idx)
     {
@@ -4143,6 +4119,21 @@ match_ctx_free_subtops (mctx)
        }
       free (top);
     }
+
+  mctx->nsub_tops = 0;
+  mctx->nbkref_ents = 0;
+}
+
+/* Free all the memory associated with MCTX.  */
+
+static void
+match_ctx_free (mctx)
+    re_match_context_t *mctx;
+{
+  /* First, free all the memory associated with MCTX->SUB_TOPS.  */
+  match_ctx_clean (mctx);
+  re_free (mctx->sub_tops);
+  re_free (mctx->bkref_ents);
 }
 
 /* Add a new backreference entry to MCTX.