172c172
< if (system->isMemAddr(pkt->getAddr())) {
---
> if (pkt && system->isMemAddr(pkt->getAddr())) {
178c178
< } else {
---
> } else if (pkt) {
231a232,241
> // Has the generator run out of work? In that case, force a
> // transition if a transition period hasn't been configured.
> while (activeGenerator &&
> nextPacketTick == MaxTick && nextTransitionTick == MaxTick) {
> transition();
> }
>
> if (!activeGenerator)
> return;
>
235,236d244
< if (nextEventTick == MaxTick)
< return;