=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/sndiod/sndiod.c,v retrieving revision 1.26 retrieving revision 1.27 diff -c -r1.26 -r1.27 *** src/usr.bin/sndiod/sndiod.c 2016/01/08 13:56:33 1.26 --- src/usr.bin/sndiod/sndiod.c 2016/01/08 15:55:05 1.27 *************** *** 1,4 **** ! /* $OpenBSD: sndiod.c,v 1.26 2016/01/08 13:56:33 ratchov Exp $ */ /* * Copyright (c) 2008-2012 Alexandre Ratchov * --- 1,4 ---- ! /* $OpenBSD: sndiod.c,v 1.27 2016/01/08 15:55:05 ratchov Exp $ */ /* * Copyright (c) 2008-2012 Alexandre Ratchov * *************** *** 104,109 **** --- 104,110 ---- void unsetsig(void); struct dev *mkdev(char *, struct aparams *, int, int, int, int, int, int); + struct port *mkport(char *, int); struct opt *mkopt(char *, struct dev *, int, int, int, int, int, int, int, int); *************** *** 307,312 **** --- 308,328 ---- return d; } + struct port * + mkport(char *path, int hold) + { + struct port *c; + + for (c = port_list; c != NULL; c = c->next) { + if (strcmp(c->path, path) == 0) + return c; + } + c = port_new(path, MODE_MIDIMASK, hold); + if (c == NULL) + exit(1); + return c; + } + struct opt * mkopt(char *path, struct dev *d, int pmin, int pmax, int rmin, int rmax, *************** *** 424,432 **** return 1; break; case 'q': ! p = port_new(optarg, MODE_MIDIMASK, hold); ! if (!p) ! errx(1, "%s: can't open port", optarg); break; case 'a': hold = opt_onoff(); --- 440,446 ---- return 1; break; case 'q': ! mkport(optarg, hold); break; case 'a': hold = opt_onoff();