From: Jiri Pirko <j...@mellanox.com> parse_action_control helper does advancing of the arg inside. So don't do it outside.
Fixes: e67aba559581 ("tc: actions: add helpers to parse and print control actions") Signed-off-by: Jiri Pirko <j...@mellanox.com> --- tc/m_gact.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/tc/m_gact.c b/tc/m_gact.c index d95aa11..1a25833 100644 --- a/tc/m_gact.c +++ b/tc/m_gact.c @@ -90,17 +90,14 @@ parse_gact(struct action_util *a, int *argc_p, char ***argv_p, if (matches(*argv, "gact") == 0) { ok++; + argc--; + argv++; } else { if (parse_action_control(&argc, &argv, &p.action, false) == -1) usage(); ok++; } - if (ok) { - argc--; - argv++; - } - #ifdef CONFIG_GACT_PROB if (ok && argc > 0) { if (matches(*argv, "random") == 0) { @@ -120,8 +117,6 @@ parse_gact(struct action_util *a, int *argc_p, char ***argv_p, if (parse_action_control(&argc, &argv, &pp.paction, false) == -1) usage(); - argc--; - argv++; if (get_u16(&pp.pval, *argv, 10)) { fprintf(stderr, "Illegal probability val 0x%x\n", pp.pval); return -1; -- 2.9.3