Program: 14715
Project: 14715
Buggy source:
private static <S extends Automata.State,P extends HasFullName<P>>List<Callable<CheckedListenableFuture<P>>> makeTransitionCallables(final HasStateMachine<P,S,?> hasFsm,final S... toStates){
  final List<Callable<CheckedListenableFuture<P>>> callables=Lists.newArrayList();
  final StateMachine<P,S,?> fsm=hasFsm.getStateMachine();
  if (toStates.length > 0) {
    for (    final S toState : toStates) {
      callables.add(new Callable<CheckedListenableFuture<P>>(){
        @Override public String toString(){
          return Automata.class.getSimpleName() + "String_Node_Str" + hasFsm.getFullName()+ "String_Node_Str"+ fsm.getState()+ "String_Node_Str"+ toState;
        }
        @Override public CheckedListenableFuture<P> call(){
          S fromState=fsm.getState();
          try {
            CheckedListenableFuture<P> res=fsm.transition(toState);
            res.get();
            Logs.extreme().debug(fsm.toString() + "String_Node_Str" + fromState+ "String_Node_Str"+ toState);
            return res;
          }
 catch (          final Exception ex) {
            Logs.extreme().debug(fsm.toString() + "String_Node_Str" + fromState+ "String_Node_Str"+ toState);
            Exceptions.maybeInterrupted(ex);
            Logs.extreme().error(ex,ex);
            throw Exceptions.toUndeclared(ex);
          }
        }
      }
);
    }
  }
 else {
    callables.add(new Callable<CheckedListenableFuture<P>>(){
      @Override public String toString(){
        return Automata.class.getSimpleName() + "String_Node_Str" + hasFsm.getFullName()+ "String_Node_Str"+ fsm.getState();
      }
      @Override public CheckedListenableFuture<P> call(){
        CheckedListenableFuture<P> ret=Futures.predestinedFuture(hasFsm.getStateMachine().getParent());
        return ret;
      }
    }
);
  }
  return callables;
}

Fixed version (ground truth):
private static <S extends Automata.State,P extends HasFullName<P>>List<Callable<CheckedListenableFuture<P>>> makeTransitionCallables(final HasStateMachine<P,S,?> hasFsm,final S... toStates){
  final List<Callable<CheckedListenableFuture<P>>> callables=Lists.newArrayList();
  final StateMachine<P,S,?> fsm=hasFsm.getStateMachine();
  if (toStates.length > 0) {
    for (    final S toState : toStates) {
      callables.add(new Callable<CheckedListenableFuture<P>>(){
        @Override public String toString(){
          return Automata.class.getSimpleName() + "String_Node_Str" + hasFsm.getFullName()+ "String_Node_Str"+ fsm.getState()+ "String_Node_Str"+ toState;
        }
        @Override public CheckedListenableFuture<P> call(){
          S fromState=fsm.getState();
          try {
            CheckedListenableFuture<P> res=fsm.transition(toState);
            res.get();
            Logs.extreme().debug(fsm.toString() + "String_Node_Str" + fromState+ "String_Node_Str"+ toState);
            return res;
          }
 catch (          final Exception ex) {
            Logs.extreme().debug(fsm.toString() + "String_Node_Str" + fromState+ "String_Node_Str"+ toState);
            Exceptions.maybeInterrupted(ex);
            Logs.extreme().error(ex,ex);
            return Futures.predestinedFailedFuture(ex);
          }
        }
      }
);
    }
  }
 else {
    callables.add(new Callable<CheckedListenableFuture<P>>(){
      @Override public String toString(){
        return Automata.class.getSimpleName() + "String_Node_Str" + hasFsm.getFullName()+ "String_Node_Str"+ fsm.getState();
      }
      @Override public CheckedListenableFuture<P> call(){
        CheckedListenableFuture<P> ret=Futures.predestinedFuture(hasFsm.getStateMachine().getParent());
        return ret;
      }
    }
);
  }
  return callables;
}