Allow 3-terminal MOS devices (e.g. VDMOS),
prevent crash upon user error
This commit is contained in:
parent
3180eacc53
commit
f429e0466d
|
|
@ -1811,7 +1811,7 @@ devmodtranslate(struct card *s, char *subname, wordlist * const orig_modnames)
|
||||||
tfree(name);
|
tfree(name);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
/* 4-7 terminal mos devices */
|
/* 3-7 terminal mos devices */
|
||||||
case 'm':
|
case 'm':
|
||||||
name = gettok(&t); /* get refdes */
|
name = gettok(&t); /* get refdes */
|
||||||
bxx_printf(&buffer, "%s ", name);
|
bxx_printf(&buffer, "%s ", name);
|
||||||
|
|
@ -1825,10 +1825,11 @@ devmodtranslate(struct card *s, char *subname, wordlist * const orig_modnames)
|
||||||
name = gettok_node(&t); /* get third attached netname */
|
name = gettok_node(&t); /* get third attached netname */
|
||||||
bxx_printf(&buffer, "%s ", name);
|
bxx_printf(&buffer, "%s ", name);
|
||||||
tfree(name);
|
tfree(name);
|
||||||
name = gettok_node(&t); /* get fourth attached netname */
|
name = gettok_node(&t);
|
||||||
bxx_printf(&buffer, "%s ", name);
|
|
||||||
tfree(name);
|
if (!name) {
|
||||||
name = gettok(&t);
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
found = 0;
|
found = 0;
|
||||||
while (!found) {
|
while (!found) {
|
||||||
|
|
@ -1841,7 +1842,7 @@ devmodtranslate(struct card *s, char *subname, wordlist * const orig_modnames)
|
||||||
if (!found) { /* name was not a model - was a netname */
|
if (!found) { /* name was not a model - was a netname */
|
||||||
bxx_printf(&buffer, "%s ", name);
|
bxx_printf(&buffer, "%s ", name);
|
||||||
tfree(name);
|
tfree(name);
|
||||||
name = gettok(&t);
|
name = gettok_node(&t);
|
||||||
if (name == NULL) {
|
if (name == NULL) {
|
||||||
name = copy(""); /* allow 'tfree' */
|
name = copy(""); /* allow 'tfree' */
|
||||||
break;
|
break;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue