=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/arguments.c,v retrieving revision 1.35 retrieving revision 1.36 diff -c -r1.35 -r1.36 *** src/usr.bin/tmux/arguments.c 2020/06/12 07:10:43 1.35 --- src/usr.bin/tmux/arguments.c 2021/08/20 17:53:54 1.36 *************** *** 1,4 **** ! /* $OpenBSD: arguments.c,v 1.35 2020/06/12 07:10:43 nicm Exp $ */ /* * Copyright (c) 2010 Nicholas Marriott --- 1,4 ---- ! /* $OpenBSD: arguments.c,v 1.36 2021/08/20 17:53:54 nicm Exp $ */ /* * Copyright (c) 2010 Nicholas Marriott *************** *** 64,69 **** --- 64,80 ---- return (RB_FIND(args_tree, &args->tree, &entry)); } + /* Create an empty arguments set. */ + struct args * + args_create(void) + { + struct args *args; + + args = xcalloc(1, sizeof *args); + RB_INIT(&args->tree); + return (args); + } + /* Parse an argv and argc into a new argument set. */ struct args * args_parse(const char *template, int argc, char **argv) *************** *** 71,82 **** struct args *args; int opt; - args = xcalloc(1, sizeof *args); - optreset = 1; optind = 1; optarg = NULL; while ((opt = getopt(argc, argv, template)) != -1) { if (opt < 0) continue; --- 82,92 ---- struct args *args; int opt; optreset = 1; optind = 1; optarg = NULL; + args = args_create(); while ((opt = getopt(argc, argv, template)) != -1) { if (opt < 0) continue;