}
pd->depth++;
+ if (!pd->swtab[pd->state])
+ return;
for (sw = pd->swtab[pd->state]; sw->from == pd->state; sw++) /* find name in statetable */
if (!strcmp(sw->ename, name))
break;
-
if (sw->from != pd->state)
{
#if 1
return;
pd->depth++;
+ if (!pd->swtab[pd->state])
+ return;
for (sw = pd->swtab[pd->state]; sw->from == pd->state; sw++) /* find name in statetable */
if (!strcmp(sw->ename, name))
break;
}
pd->depth++;
- if (!(sw = pd->swtab[pd->state])) /* no statetable -> no substates */
+ if (!pd->swtab[pd->state]) /* no statetable -> no substates */
{
#if 0
- fprintf(stderr, "into unknown: [?]%s (from: ?, state %d)\n", name, pd->state);
+ fprintf(stderr, "into unknown: %s (from: %d)\n", name, pd->state);
#endif
return;
}
- for (; sw->from == pd->state; sw++) /* find name in statetable */
+ for (sw = pd->swtab[pd->state]; sw->from == pd->state; sw++) /* find name in statetable */
if (!strcmp(sw->ename, name))
break;
if (sw->from != pd->state)
{
#if 0
- fprintf(stderr, "into unknown: [%d]%s (from: %d, state %d)\n", sw->to, name, sw->from, pd->state);
- exit( 1 );
+ fprintf(stderr, "into unknown: %s (from: %d)\n", name, pd->state);
#endif
return;
}
int expire = 0;
#if 0
- fprintf(stderr, "start: [%d]%s\n", pd->state, name);
+ fprintf(stderr, "start: [%d]%s\n", pd->state, name);
#endif
if (pd->depth != pd->statedepth)
{
}
pd->depth++;
+ if (!pd->swtab[pd->state])
+ return;
for (sw = pd->swtab[pd->state]; sw->from == pd->state; sw++) /* find name in statetable */
if (!strcmp(sw->ename, name))
break;
if (sw->from != pd->state)
{
#if 1
- fprintf(stderr, "into unknown: [%d]%s (from: %d)\n", sw->to, name, sw->from);
+ fprintf(stderr, "into unknown: %s (from: %d)\n", name, pd->state);
exit( 1 );
#endif
return;
return;
pd->depth++;
+ if (!pd->swtab[pd->state])
+ return;
for (sw = pd->swtab[pd->state]; sw->from == pd->state; sw++)
if (!strcmp(sw->ename, name))
break;
/*const char *str; */
#if 0
- fprintf(stderr, "start: [%d]%s\n", pd->state, name);
+ fprintf(stderr, "start: [%d]%s\n", pd->state, name);
#endif
if (pd->depth != pd->statedepth)
{
}
pd->depth++;
+ if (!pd->swtab[pd->state])
+ return;
for (sw = pd->swtab[pd->state]; sw->from == pd->state; sw++) /* find name in statetable */
if (!strcmp(sw->ename, name))
break;
-
if (sw->from != pd->state)
{
#if 1
- fprintf(stderr, "into unknown: [%d]%s (from: %d)\n", sw->to, name, sw->from);
+ fprintf(stderr, "into unknown: %s (from: %d)\n", name, pd->state);
exit( 1 );
#endif
return;