]> granicus.if.org Git - onig/commitdiff
fix to assign error code in make_absent_tail()
authorK.Kosako <kosako@sofnec.co.jp>
Mon, 21 Aug 2017 07:18:35 +0000 (16:18 +0900)
committerK.Kosako <kosako@sofnec.co.jp>
Mon, 21 Aug 2017 07:18:35 +0000 (16:18 +0900)
src/regparse.c

index 453db68c21710cad5f223803b69e8b55816a1b31..42cbb5cf3158731e430ea3320f958e4079690033 100644 (file)
@@ -1755,7 +1755,7 @@ make_absent_tail(Node** node1, Node** node2, int pre_save_right_id,
   if (r != 0) goto err;
 
   x = make_list(2, ns);
-  if (IS_NULL(x)) goto err;
+  if (IS_NULL(x)) goto err0;
 
   ns[0] = NULL_NODE; ns[1] = x;
 
@@ -1764,12 +1764,14 @@ make_absent_tail(Node** node1, Node** node2, int pre_save_right_id,
   if (r != 0) goto err;
 
   x = make_alt(2, ns);
-  if (IS_NULL(x)) goto err;
+  if (IS_NULL(x)) goto err0;
 
   *node1 = save;
   *node2 = x;
   return ONIG_NORMAL;
 
+ err0:
+  r = ONIGERR_MEMORY;
  err:
   onig_node_free(save);
   onig_node_free(ns[0]);