Program: 45470
Project: 45470
Buggy source:
/** 
 * {@inheritDoc}
 */
@Override public void setStatus(CellStatus status,boolean increasing){
  super.setStatus(status,increasing);
  WlAvatarCharacter pendingAvatar=null;
  logger.info("String_Node_Str" + status + "String_Node_Str"+ increasing);
  if (status == CellStatus.ACTIVE && increasing == true) {
    boundsDebugger.add(this);
    if (cellMoveListener != null) {
      MovableComponent mc=cell.getComponent(MovableComponent.class);
      if (mc == null) {
        logger.severe("String_Node_Str" + ((AvatarCell)cell).getName());
      }
 else {
        mc.removeServerCellMoveListener(cellMoveListener);
      }
      cellMoveListener=null;
    }
    if (avatarCharacter == null) {
      AvatarConfigComponent configComp=cell.getComponent(AvatarConfigComponent.class);
      AvatarConfigInfo avatarConfigInfo=null;
      if (configComp != null) {
        avatarConfigInfo=configComp.getAvatarConfigInfo();
      }
      logger.info("String_Node_Str" + avatarConfigInfo);
      pendingAvatar=loadAvatar(avatarConfigInfo);
    }
 else {
      ClientContextJME.getWorldManager().removeEntity(avatarCharacter);
      pendingAvatar=null;
    }
    logger.info("String_Node_Str");
    changeAvatar(pendingAvatar);
    if (cellMoveListener == null) {
      cellMoveListener=new CellMoveListener(){
        public void cellMoved(        CellTransform transform,        CellMoveSource source){
          if (source == CellMoveSource.REMOTE) {
            if (avatarCharacter != null) {
              if (avatarCharacter.getModelInst() == null) {
                logger.severe("String_Node_Str");
                Thread.dumpStack();
                return;
              }
              avatarCharacter.getModelInst().setTransform(new PTransform(transform.getRotation(null),transform.getTranslation(null),new Vector3f(1,1,1)));
            }
          }
        }
      }
;
    }
    cell.getComponent(MovableComponent.class).addServerCellMoveListener(cellMoveListener);
    avatarUIEventListener=new AvatarUIEventListener();
    ClientContext.getInputManager().addGlobalEventListener(avatarUIEventListener);
    collisionChangeRequestListener=new CollisionChangeRequestListener();
    ClientContext.getInputManager().addGlobalEventListener(collisionChangeRequestListener);
  }
 else   if (status == CellStatus.DISK && !increasing) {
    boundsDebugger.remove(this);
    ClientContext.getInputManager().removeGlobalEventListener(avatarUIEventListener);
    ClientContext.getInputManager().removeGlobalEventListener(collisionChangeRequestListener);
    cell.getComponent(MovableComponent.class).removeServerCellMoveListener(cellMoveListener);
    avatarUIEventListener=null;
    cellMoveListener=null;
    collisionChangeRequestListener=null;
  }
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 */
@Override public void setStatus(CellStatus status,boolean increasing){
  super.setStatus(status,increasing);
  WlAvatarCharacter pendingAvatar=null;
  logger.info("String_Node_Str" + status + "String_Node_Str"+ increasing);
  if (status == CellStatus.ACTIVE && increasing == true) {
    BoundsDebugger.getInstance().add(this);
    if (cellMoveListener != null) {
      MovableComponent mc=cell.getComponent(MovableComponent.class);
      if (mc == null) {
        logger.severe("String_Node_Str" + ((AvatarCell)cell).getName());
      }
 else {
        mc.removeServerCellMoveListener(cellMoveListener);
      }
      cellMoveListener=null;
    }
    if (avatarCharacter == null) {
      AvatarConfigComponent configComp=cell.getComponent(AvatarConfigComponent.class);
      AvatarConfigInfo avatarConfigInfo=null;
      if (configComp != null) {
        avatarConfigInfo=configComp.getAvatarConfigInfo();
      }
      logger.info("String_Node_Str" + avatarConfigInfo);
      pendingAvatar=loadAvatar(avatarConfigInfo);
    }
 else {
      ClientContextJME.getWorldManager().removeEntity(avatarCharacter);
      pendingAvatar=null;
    }
    logger.info("String_Node_Str");
    changeAvatar(pendingAvatar);
    if (cellMoveListener == null) {
      cellMoveListener=new CellMoveListener(){
        public void cellMoved(        CellTransform transform,        CellMoveSource source){
          if (source == CellMoveSource.REMOTE) {
            if (avatarCharacter != null) {
              if (avatarCharacter.getModelInst() == null) {
                logger.severe("String_Node_Str");
                Thread.dumpStack();
                return;
              }
              avatarCharacter.getModelInst().setTransform(new PTransform(transform.getRotation(null),transform.getTranslation(null),new Vector3f(1,1,1)));
            }
          }
        }
      }
;
    }
    cell.getComponent(MovableComponent.class).addServerCellMoveListener(cellMoveListener);
    avatarUIEventListener=new AvatarUIEventListener();
    ClientContext.getInputManager().addGlobalEventListener(avatarUIEventListener);
    collisionChangeRequestListener=new CollisionChangeRequestListener();
    ClientContext.getInputManager().addGlobalEventListener(collisionChangeRequestListener);
  }
 else   if (status == CellStatus.DISK && !increasing) {
    BoundsDebugger.getInstance().remove(this);
    ClientContext.getInputManager().removeGlobalEventListener(avatarUIEventListener);
    ClientContext.getInputManager().removeGlobalEventListener(collisionChangeRequestListener);
    cell.getComponent(MovableComponent.class).removeServerCellMoveListener(cellMoveListener);
    avatarUIEventListener=null;
    cellMoveListener=null;
    collisionChangeRequestListener=null;
  }
}