diff options
| author | Charles.Forsyth <devnull@localhost> | 2009-03-25 16:37:32 +0000 |
|---|---|---|
| committer | Charles.Forsyth <devnull@localhost> | 2009-03-25 16:37:32 +0000 |
| commit | e0a2b8d82a5521d9391ca8c6f055777954c76c2f (patch) | |
| tree | bed98eebad567e161db651e8a173f1a819169292 /emu/port/devdynld.c | |
| parent | d8150d92150b08ade63d7cd8b666cb26551110ff (diff) | |
x20090315-1636
Diffstat (limited to 'emu/port/devdynld.c')
| -rw-r--r-- | emu/port/devdynld.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/emu/port/devdynld.c b/emu/port/devdynld.c index 68084707..b447d797 100644 --- a/emu/port/devdynld.c +++ b/emu/port/devdynld.c @@ -119,7 +119,7 @@ devload(char *path) { int i; Dyndev *l; - Dev *dev; + Dev *dev, *curdev; char devname[32]; l = dlload(path, _exporttab, dyntabsize(_exporttab)); @@ -131,8 +131,11 @@ devload(char *path) dev = dynimport(l->o, devname, signof(*dev)); if(dev == nil) error("no devtab"); - if(devno(dev->dc, 1) >= 0) + curdev = devtabget(dev->dc, 1); + if(curdev != nil){ + devtabput(curdev); error("device loaded"); + } for(i = 0; devtab[i] != nil; i++) ; if(i >= ndevs || devtab[i+1] != nil) @@ -321,7 +324,9 @@ Dev dynlddevtab = { DEVCHAR, "dynld", + devreset, devinit, + devshutdown, dlattach, dlwalk, dlstat, |
