X-Git-Url: http://rtime.felk.cvut.cz/gitweb/lincan.git/blobdiff_plain/8d418bf2d286085f0d4d893cdadde34d22458a3d..831ccb1f14f7472962fc2d185f32e18105209bd7:/lincan/src/finish.c diff --git a/lincan/src/finish.c b/lincan/src/finish.c index d25e936..5e789ae 100644 --- a/lincan/src/finish.c +++ b/lincan/src/finish.c @@ -14,7 +14,7 @@ #include "../include/finish.h" #include "../include/setup.h" - +extern int next_minor; /** * msgobj_done - destroys one CAN message object * @obj: pointer to CAN message object structure @@ -37,8 +37,11 @@ void msgobj_done(struct msgobj_t *obj) } if((obj->minor>=0)) { - if(objects_p[obj->minor] == obj) + if(objects_p[obj->minor] == obj){ objects_p[obj->minor] = NULL; + if (--next_minor<0) + next_minor=0; + } else CANMSG("msgobj_done: not registered as minor\n"); } @@ -127,7 +130,7 @@ void canhardware_done(struct canhardware_t *canhw) int i; struct candevice_t *candev; - for(i=0; inr_boards; i++){ + for(i=0; icandevice[i])==NULL) continue; candevice_done(candev);