Program: 74751
Project: 74751
Buggy source:
/** 
 * Iterate all the deeply contained actors of the container of this director exactly once. This method is not functional, since an iteration of the deeply contained actors may change state in their postfire() method. The actors are iterated in the order that they appear on the list returned by deepEntityList(), which is normally the order in which they were created. <p> This method is <i>not</i> synchronized on the workspace, so the caller should be. <p> In this base class, an attempt is made to fire each actor exactly once, in the order they were created.  Prefire is called once, and if prefire returns true, then fire is called once, followed by postfire.  The return value from postfire is ignored. If the container is not an instance of CompositeActor, however, then this method does nothing.
 * @exception IllegalActionException If any called method of oneof the associated actors throws it.
 */
public void fire() throws IllegalActionException {
  Nameable container=getContainer();
  if (container instanceof CompositeActor) {
    Iterator actors=((CompositeActor)container).deepEntityList().iterator();
    int iterationCount=1;
    while (actors.hasNext() && !_stopRequested) {
      Actor actor=(Actor)actors.next();
      if (_debugging) {
        _debug(new FiringEvent(this,actor,FiringEvent.BEFORE_ITERATE,iterationCount));
      }
      if (actor.iterate(1) == Actor.STOP_ITERATING) {
        if (_debugging) {
          _debug("String_Node_Str" + ((Nameable)actor).getFullName());
        }
        break;
      }
      if (_debugging) {
        _debug(new FiringEvent(this,actor,FiringEvent.AFTER_ITERATE,iterationCount));
      }
    }
  }
}

Fixed version (ground truth):
/** 
 * Iterate all the deeply contained actors of the container of this director exactly once. This method is not functional, since an iteration of the deeply contained actors may change state in their postfire() method. The actors are iterated in the order that they appear on the list returned by deepEntityList(), which is normally the order in which they were created. <p> This method is <i>not</i> synchronized on the workspace, so the caller should be. <p> In this base class, an attempt is made to fire each actor exactly once, in the order they were created.  Prefire is called once, and if prefire returns true, then fire is called once, followed by postfire.  The return value from postfire is ignored. If the container is not an instance of CompositeActor, however, then this method does nothing.
 * @exception IllegalActionException If any called method of oneof the associated actors throws it.
 */
public void fire() throws IllegalActionException {
  Nameable container=getContainer();
  if (container instanceof CompositeActor) {
    Iterator actors=((CompositeActor)container).deepEntityList().iterator();
    int iterationCount=1;
    while (actors.hasNext() && !_stopRequested) {
      Actor actor=(Actor)actors.next();
      if (_debugging) {
        _debug(new FiringEvent(this,actor,FiringEvent.BEFORE_ITERATE,iterationCount));
      }
      if (actor.iterate(1) == Executable.STOP_ITERATING) {
        if (_debugging) {
          _debug("String_Node_Str" + ((Nameable)actor).getFullName());
        }
        break;
      }
      if (_debugging) {
        _debug(new FiringEvent(this,actor,FiringEvent.AFTER_ITERATE,iterationCount));
      }
    }
  }
}