Program: 13891
Project: 13891
Buggy source:
private void buildAndShowNotificationFromNoteData(Context context,Bundle data){
  if (data == null) {
    AppLog.e(T.NOTIFS,"String_Node_Str");
    return;
  }
  final String wpcomNoteID=data.getString(PUSH_ARG_NOTE_ID,"String_Node_Str");
  if (TextUtils.isEmpty(wpcomNoteID)) {
    AppLog.e(T.NOTIFS,"String_Node_Str");
    return;
  }
  NotificationsUtils.buildNoteObjectFromBundleAndSaveIt(data);
  EventBus.getDefault().post(new NotificationEvents.NotificationsChanged(true));
  NotificationsActions.downloadNoteAndUpdateDB(wpcomNoteID,null,null);
  String noteType=StringUtils.notNullStr(data.getString(PUSH_ARG_TYPE));
  String title=StringEscapeUtils.unescapeHtml(data.getString(PUSH_ARG_TITLE));
  if (title == null) {
    title=context.getString(R.string.app_name);
  }
  String message=StringEscapeUtils.unescapeHtml(data.getString(PUSH_ARG_MSG));
  long thisTime=System.currentTimeMillis();
  if (AppPrefs.getLastPushNotificationWpcomNoteId().equals(wpcomNoteID)) {
    long seconds=TimeUnit.MILLISECONDS.toSeconds(thisTime - AppPrefs.getLastPushNotificationTime());
    if (seconds <= 1) {
      AppLog.w(T.NOTIFS,"String_Node_Str");
      return;
    }
  }
  AppPrefs.setLastPushNotificationTime(thisTime);
  AppPrefs.setLastPushNotificationWpcomNoteId(wpcomNoteID);
  int pushId=0;
  for (  Integer id : sActiveNotificationsMap.keySet()) {
    if (id == null) {
      continue;
    }
    Bundle noteBundle=sActiveNotificationsMap.get(id);
    if (noteBundle != null && noteBundle.getString(PUSH_ARG_NOTE_ID,"String_Node_Str").equals(wpcomNoteID)) {
      pushId=id;
      sActiveNotificationsMap.put(pushId,data);
      break;
    }
  }
  if (pushId == 0) {
    pushId=PUSH_NOTIFICATION_ID + sActiveNotificationsMap.size();
    sActiveNotificationsMap.put(pushId,data);
  }
  if (NotificationsUtils.isNotificationsEnabled(context)) {
    Map<String,Object> properties=new HashMap<>();
    if (!TextUtils.isEmpty(noteType)) {
      if (noteType.equals(PUSH_TYPE_COMMENT)) {
        properties.put("String_Node_Str","String_Node_Str");
      }
 else {
        properties.put("String_Node_Str",noteType);
      }
    }
    bumpPushNotificationsAnalytics(Stat.PUSH_NOTIFICATION_RECEIVED,data,properties);
    AnalyticsTracker.flush();
  }
  NotificationCompat.Builder builder=getNotificationBuilder(context,title,message);
  Bitmap largeIconBitmap=getLargeIconBitmap(context,data.getString("String_Node_Str"),shouldCircularizeNoteIcon(noteType));
  if (largeIconBitmap != null) {
    builder.setLargeIcon(largeIconBitmap);
  }
  showSingleNotificationForBuilder(context,builder,noteType,wpcomNoteID,pushId,true);
  showGroupNotificationForBuilder(context,builder,wpcomNoteID,message,false);
}

Fixed version (ground truth):
private void buildAndShowNotificationFromNoteData(Context context,Bundle data){
  if (data == null) {
    AppLog.e(T.NOTIFS,"String_Node_Str");
    return;
  }
  final String wpcomNoteID=data.getString(PUSH_ARG_NOTE_ID,"String_Node_Str");
  if (TextUtils.isEmpty(wpcomNoteID)) {
    AppLog.e(T.NOTIFS,"String_Node_Str");
    return;
  }
  NotificationsUtils.buildNoteObjectFromBundleAndSaveIt(data);
  EventBus.getDefault().post(new NotificationEvents.NotificationsChanged(true));
  NotificationsActions.downloadNoteAndUpdateDB(wpcomNoteID,null,null);
  String noteType=StringUtils.notNullStr(data.getString(PUSH_ARG_TYPE));
  String title=StringEscapeUtils.unescapeHtml4(data.getString(PUSH_ARG_TITLE));
  if (title == null) {
    title=context.getString(R.string.app_name);
  }
  String message=StringEscapeUtils.unescapeHtml4(data.getString(PUSH_ARG_MSG));
  long thisTime=System.currentTimeMillis();
  if (AppPrefs.getLastPushNotificationWpcomNoteId().equals(wpcomNoteID)) {
    long seconds=TimeUnit.MILLISECONDS.toSeconds(thisTime - AppPrefs.getLastPushNotificationTime());
    if (seconds <= 1) {
      AppLog.w(T.NOTIFS,"String_Node_Str");
      return;
    }
  }
  AppPrefs.setLastPushNotificationTime(thisTime);
  AppPrefs.setLastPushNotificationWpcomNoteId(wpcomNoteID);
  int pushId=0;
  for (  Integer id : sActiveNotificationsMap.keySet()) {
    if (id == null) {
      continue;
    }
    Bundle noteBundle=sActiveNotificationsMap.get(id);
    if (noteBundle != null && noteBundle.getString(PUSH_ARG_NOTE_ID,"String_Node_Str").equals(wpcomNoteID)) {
      pushId=id;
      sActiveNotificationsMap.put(pushId,data);
      break;
    }
  }
  if (pushId == 0) {
    pushId=PUSH_NOTIFICATION_ID + sActiveNotificationsMap.size();
    sActiveNotificationsMap.put(pushId,data);
  }
  if (NotificationsUtils.isNotificationsEnabled(context)) {
    Map<String,Object> properties=new HashMap<>();
    if (!TextUtils.isEmpty(noteType)) {
      if (noteType.equals(PUSH_TYPE_COMMENT)) {
        properties.put("String_Node_Str","String_Node_Str");
      }
 else {
        properties.put("String_Node_Str",noteType);
      }
    }
    bumpPushNotificationsAnalytics(Stat.PUSH_NOTIFICATION_RECEIVED,data,properties);
    AnalyticsTracker.flush();
  }
  NotificationCompat.Builder builder=getNotificationBuilder(context,title,message);
  Bitmap largeIconBitmap=getLargeIconBitmap(context,data.getString("String_Node_Str"),shouldCircularizeNoteIcon(noteType));
  if (largeIconBitmap != null) {
    builder.setLargeIcon(largeIconBitmap);
  }
  showSingleNotificationForBuilder(context,builder,noteType,wpcomNoteID,pushId,true);
  showGroupNotificationForBuilder(context,builder,wpcomNoteID,message,false);
}