Thread (2 messages) flat view 2 messages, 2 authors, 2016-06-15

Re: [PATCH v2 01/10] ref-filter: implement %(if), %(then), and %(else) atoms

From: Karthik Nayak <hidden>
Date: 2016-06-15 23:06:49

On Fri, Oct 9, 2015 at 12:18 AM, Matthieu Moy
[off-list ref] wrote:
Karthik Nayak [off-list ref] writes:
quoted
+static void if_then_else_handler(struct ref_formatting_stack **stack)
+{
+     struct ref_formatting_stack *cur = *stack;
+     struct ref_formatting_stack *prev = cur->prev;
+     struct if_then_else *if_then_else = (struct if_then_else *)cur->at_end_data;
+
You should add

        if (!if_then_else->then_atom)
                die(_("format: %%(if) atom used without a %%(then) atom"));

here ...
Will do.
quoted
+static void then_atom_handler(struct atom_value *atomv, struct ref_formatting_state *state)
+{
+     struct ref_formatting_stack *cur = state->stack;
+     struct if_then_else *if_then_else = NULL;
+
+     if (cur->at_end == if_then_else_handler)
+             if_then_else = (struct if_then_else *)cur->at_end_data;
+     if (!if_then_else)
+             die(_("format: %%(then) atom used without an %%(if) atom"));
+     if (if_then_else->then_atom)
+             die(_("format: %%(then) atom used more than once"));
+     if_then_else->then_atom = 1;
... and

        if (if_then_else->else_atom)
                die(_("format: %%(then) atom used after %%(else)"));

here, just in case (adding the two corresponding test_must_fail wouldn't
harm of course).
Will do, thanks!

-- 
Regards,
Karthik Nayak
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help