diff options
-rw-r--r-- | usr.sbin/pccard/pccardd/file.c | 1 | ||||
-rw-r--r-- | usr.sbin/pccard/pccardd/pccardd.c | 10 |
2 files changed, 10 insertions, 1 deletions
diff --git a/usr.sbin/pccard/pccardd/file.c b/usr.sbin/pccard/pccardd/file.c index 2d15704..4857faf 100644 --- a/usr.sbin/pccard/pccardd/file.c +++ b/usr.sbin/pccard/pccardd/file.c @@ -1053,6 +1053,7 @@ file_include(char *incl) /* save line number of the current config file */ configfiles[includes].lineno = lineno; + lineno = 1; /* now we start parsing new config file */ includes++; diff --git a/usr.sbin/pccard/pccardd/pccardd.c b/usr.sbin/pccard/pccardd/pccardd.c index d476513..ec481e9 100644 --- a/usr.sbin/pccard/pccardd/pccardd.c +++ b/usr.sbin/pccard/pccardd/pccardd.c @@ -130,8 +130,11 @@ main(int argc, char *argv[]) int count, dodebug = 0; int doverbose = 0; int delay = 0; + int irq_arg[16]; + int irq_specified = 0; int i; + bzero(irq_arg, sizeof(irq_arg)); debug_level = 0; pccard_init_sleep = 5000000; cards = last_card = 0; @@ -154,7 +157,8 @@ main(int argc, char *argv[]) fprintf(stderr, "%s: -i number\n", argv[0]); exit(1); } - pool_irq[i] = 1; + irq_arg[i] = 1; + irq_specified = 1; break; case 'z': delay = 1; @@ -177,6 +181,10 @@ main(int argc, char *argv[]) mem_avail = bit_alloc(MEMBLKS); mem_init = bit_alloc(MEMBLKS); readfile(config_file); + if (irq_specified) { + bcopy(irq_arg, pool_irq, sizeof(irq_arg)); + bcopy(irq_arg, irq_init, sizeof(irq_arg)); + } if (doverbose) dump_config_file(); log_setup(); |