diff --git a/aucat/dev.c b/aucat/dev.c index 5771f0b..5cdb07d 100644 --- a/aucat/dev.c +++ b/aucat/dev.c @@ -115,11 +115,6 @@ dev_new(char *path, unsigned mode, struct dev *d; unsigned *pnum, i; - d = malloc(sizeof(struct dev)); - if (d == NULL) { - perror("malloc"); - exit(1); - } pnum = (mode & MODE_THRU) ? &dev_thrnum : &dev_sndnum; if (*pnum == DEV_NMAX) { #ifdef DEBUG @@ -128,6 +123,11 @@ dev_new(char *path, unsigned mode, #endif return NULL; } + d = malloc(sizeof(struct dev)); + if (d == NULL) { + perror("malloc"); + exit(1); + } d->num = (*pnum)++; if (mode & MODE_THRU) d->num += DEV_NMAX;