Program: 12416
Project: 12416
Buggy source:
private void sendMessageToOfflineClient(String client,Client cc){
  if (!cc.supportAPNS()) {
    logger.error("String_Node_Str",client);
    message.setStatus(cc.getUserId(),new PushStatus(PushStatus.NoConnections));
    return;
  }
  int offlineMode=message.getOfflineMode().intValue();
  if (StringUtils.isBlank(cc.getDeviceToken()) || NULL.equalsIgnoreCase(cc.getDeviceToken())) {
    logger.error("String_Node_Str",client);
    if (offlineMode == PBAPNSMessage.OfflineModes.SendAfterOnline_VALUE) {
      message.setStatus(cc.getUserId(),new PushStatus(PushStatus.NO_DEVICE_TOKEN));
    }
 else {
      message.setStatus(cc.getUserId(),new PushStatus(PushStatus.Ignore));
    }
    return;
  }
  if (PBAPNSMessage.APNSModes.All_VALUE == message.getToMode()) {
    if (offlineMode == PBAPNSMessage.OfflineModes.APNS_VALUE) {
      if (PBAPNSMessage.APNSModes.Signined_VALUE == message.getApnsMode()) {
        if (ClientStatus.Offline == cc.getStatusId()) {
          message.setStatus(cc.getUserId(),new PushStatus(PushStatus.WaitOnline));
        }
 else {
          APNSKeeper.instance.push(this.product,cc,message);
        }
      }
 else {
        APNSKeeper.instance.push(this.product,cc,message);
      }
    }
 else     if (offlineMode == PBAPNSMessage.OfflineModes.SendAfterOnline_VALUE) {
      message.setStatus(cc.getUserId(),new PushStatus(PushStatus.WaitOnline));
    }
  }
 else {
    message.setStatus(cc.getUserId(),new PushStatus(PushStatus.Ignore));
  }
}

Fixed version (ground truth):
private void sendMessageToOfflineClient(String client,Client cc){
  int offlineMode=message.getOfflineMode().intValue();
  if (!cc.supportAPNS()) {
    logger.error("String_Node_Str",client);
    if (offlineMode == PBAPNSMessage.OfflineModes.SendAfterOnline_VALUE) {
      message.setStatus(client,new PushStatus(PushStatus.WaitOnline));
    }
 else {
      message.setStatus(client,new PushStatus(PushStatus.NoConnections));
    }
    return;
  }
  if (StringUtils.isBlank(cc.getDeviceToken()) || NULL.equalsIgnoreCase(cc.getDeviceToken())) {
    logger.error("String_Node_Str",client);
    if (offlineMode == PBAPNSMessage.OfflineModes.SendAfterOnline_VALUE) {
      message.setStatus(cc.getUserId(),new PushStatus(PushStatus.NO_DEVICE_TOKEN));
    }
 else {
      message.setStatus(cc.getUserId(),new PushStatus(PushStatus.Ignore));
    }
    return;
  }
  if (PBAPNSMessage.APNSModes.All_VALUE == message.getToMode()) {
    if (offlineMode == PBAPNSMessage.OfflineModes.APNS_VALUE) {
      if (PBAPNSMessage.APNSModes.Signined_VALUE == message.getApnsMode()) {
        if (ClientStatus.Offline == cc.getStatusId()) {
          message.setStatus(cc.getUserId(),new PushStatus(PushStatus.WaitOnline));
        }
 else {
          APNSKeeper.instance.push(this.product,cc,message);
        }
      }
 else {
        APNSKeeper.instance.push(this.product,cc,message);
      }
    }
 else     if (offlineMode == PBAPNSMessage.OfflineModes.SendAfterOnline_VALUE) {
      message.setStatus(cc.getUserId(),new PushStatus(PushStatus.WaitOnline));
    }
 else {
      message.setStatus(cc.getUserId(),new PushStatus(PushStatus.Ignore));
    }
  }
 else {
    message.setStatus(cc.getUserId(),new PushStatus(PushStatus.Ignore));
  }
}