Skip to content

EXRAIL START() Not Passing Loco to New Task #483

@kallelix

Description

@kallelix

Hi,

I've encountered an issue with EXRAIL: According to the documentation, there are several references stating that START() passes the locomotive from the current task to the new one — for example:
https://dcc-ex.com/exrail/getting-started.html#drive-away-feature

However, this doesn’t seem to work as expected. I looked into the current implementation of START():
case OPCODE_START: { int newPc=routeLookup->find(operand); if (newPc<0) break; new RMFT2(newPc); } break;

Not surprisingly, this doesn’t pass the loco to the new task. I tried modifying it like this:

case OPCODE_START: { int newPc=routeLookup->find(operand); if (newPc<0) break; RMFT2* newtask=new RMFT2(newPc); // create new task newtask->loco=loco; } break;
With this change, it works as expected.

Is this the intended behavior, or is this an oversight?

Regards,
Kristian

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions