Program: 191378
Project: 191378
Buggy source:
private RemoteInputView applyRemoteInput(View view,NotificationData.Entry entry,boolean hasRemoteInput,PendingIntent existingPendingIntent){
  View actionContainerCandidate=view.findViewById(com.android.internal.R.id.actions_container);
  if (actionContainerCandidate instanceof FrameLayout) {
    RemoteInputView existing=(RemoteInputView)view.findViewWithTag(RemoteInputView.VIEW_TAG);
    if (existing != null) {
      existing.onNotificationUpdate();
    }
    if (existing == null && hasRemoteInput) {
      ViewGroup actionContainer=(FrameLayout)actionContainerCandidate;
      RemoteInputView riv=RemoteInputView.inflate(mContext,actionContainer,entry,mRemoteInputController);
      riv.setVisibility(View.INVISIBLE);
      actionContainer.addView(riv,new LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.MATCH_PARENT));
      existing=riv;
    }
    if (hasRemoteInput) {
      int color=entry.notification.getNotification().color;
      if (color == Notification.COLOR_DEFAULT) {
        color=mContext.getColor(R.color.default_remote_input_background);
      }
      existing.setBackgroundColor(NotificationColorUtil.ensureTextBackgroundColor(color,mContext.getColor(R.color.remote_input_text_enabled),mContext.getColor(R.color.remote_input_hint)));
      if (existingPendingIntent != null || existing.isActive()) {
        Notification.Action[] actions=entry.notification.getNotification().actions;
        if (existingPendingIntent != null) {
          existing.setPendingIntent(existingPendingIntent);
        }
        if (existing.updatePendingIntentFromActions(actions)) {
          if (!existing.isActive()) {
            existing.focus();
          }
        }
 else {
          if (existing.isActive()) {
            existing.close();
          }
        }
      }
    }
    return existing;
  }
  return null;
}

Fixed version (ground truth):
private RemoteInputView applyRemoteInput(View view,NotificationData.Entry entry,boolean hasRemoteInput,PendingIntent existingPendingIntent){
  View actionContainerCandidate=view.findViewById(com.android.internal.R.id.actions_container);
  if (actionContainerCandidate instanceof FrameLayout) {
    RemoteInputView existing=(RemoteInputView)view.findViewWithTag(RemoteInputView.VIEW_TAG);
    if (existing != null) {
      existing.onNotificationUpdateOrReset();
    }
    if (existing == null && hasRemoteInput) {
      ViewGroup actionContainer=(FrameLayout)actionContainerCandidate;
      RemoteInputView riv=RemoteInputView.inflate(mContext,actionContainer,entry,mRemoteInputController);
      riv.setVisibility(View.INVISIBLE);
      actionContainer.addView(riv,new LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.MATCH_PARENT));
      existing=riv;
    }
    if (hasRemoteInput) {
      int color=entry.notification.getNotification().color;
      if (color == Notification.COLOR_DEFAULT) {
        color=mContext.getColor(R.color.default_remote_input_background);
      }
      existing.setBackgroundColor(NotificationColorUtil.ensureTextBackgroundColor(color,mContext.getColor(R.color.remote_input_text_enabled),mContext.getColor(R.color.remote_input_hint)));
      if (existingPendingIntent != null || existing.isActive()) {
        Notification.Action[] actions=entry.notification.getNotification().actions;
        if (existingPendingIntent != null) {
          existing.setPendingIntent(existingPendingIntent);
        }
        if (existing.updatePendingIntentFromActions(actions)) {
          if (!existing.isActive()) {
            existing.focus();
          }
        }
 else {
          if (existing.isActive()) {
            existing.close();
          }
        }
      }
    }
    return existing;
  }
  return null;
}