Program: 13375
Project: 13375
Buggy source:
@Override public void onBindViewHolder(ViewHolder viewHolder,int position){
  PluginBrowserViewHolder holder=(PluginBrowserViewHolder)viewHolder;
  ImmutablePluginModel plugin=(ImmutablePluginModel)getItem(position);
  if (plugin == null) {
    return;
  }
  holder.mNameText.setText(plugin.getDisplayName());
  holder.mAuthorText.setText(plugin.getAuthorName());
  holder.mIcon.setImageUrl(plugin.getIcon(),ImageType.PLUGIN_ICON);
  if (plugin.isInstalled()) {
    @StringRes int textResId;
    @ColorRes int colorResId;
    @DrawableRes int drawableResId;
    if (PluginUtils.isUpdateAvailable(plugin)) {
      textResId=R.string.plugin_needs_update;
      colorResId=R.color.alert_yellow;
      drawableResId=R.drawable.plugin_update_available_icon;
    }
 else     if (plugin.isActive()) {
      textResId=R.string.plugin_active;
      colorResId=R.color.alert_green;
      drawableResId=R.drawable.ic_checkmark_green_24dp;
    }
 else {
      textResId=R.string.plugin_inactive;
      colorResId=R.color.grey;
      drawableResId=R.drawable.ic_cross_grey_600_24dp;
    }
    holder.mStatusText.setText(textResId);
    holder.mStatusText.setTextColor(getResources().getColor(colorResId));
    holder.mStatusIcon.setImageResource(drawableResId);
    holder.mStatusContainer.setVisibility(View.VISIBLE);
    holder.mRatingBar.setVisibility(View.GONE);
  }
 else {
    holder.mStatusContainer.setVisibility(View.GONE);
    holder.mRatingBar.setVisibility(View.VISIBLE);
    holder.mRatingBar.setRating(plugin.getAverageStarRating());
  }
}

Fixed version (ground truth):
@Override public void onBindViewHolder(ViewHolder viewHolder,int position){
  PluginBrowserViewHolder holder=(PluginBrowserViewHolder)viewHolder;
  ImmutablePluginModel plugin=(ImmutablePluginModel)getItem(position);
  if (plugin == null) {
    return;
  }
  holder.mNameText.setText(plugin.getDisplayName());
  holder.mAuthorText.setText(plugin.getAuthorName());
  holder.mIcon.setImageUrl(plugin.getIcon(),ImageType.PLUGIN_ICON);
  if (plugin.isInstalled()) {
    @StringRes int textResId;
    @ColorRes int colorResId;
    @DrawableRes int drawableResId;
    boolean isAutoManaged=PluginUtils.isAutoManaged(mViewModel.getSite(),plugin);
    if (isAutoManaged) {
      textResId=R.string.plugin_auto_managed;
      colorResId=R.color.alert_green;
      drawableResId=R.color.transparent;
    }
 else     if (PluginUtils.isUpdateAvailable(plugin)) {
      textResId=R.string.plugin_needs_update;
      colorResId=R.color.alert_yellow;
      drawableResId=R.drawable.plugin_update_available_icon;
    }
 else     if (plugin.isActive()) {
      textResId=R.string.plugin_active;
      colorResId=R.color.alert_green;
      drawableResId=R.drawable.ic_checkmark_green_24dp;
    }
 else {
      textResId=R.string.plugin_inactive;
      colorResId=R.color.grey;
      drawableResId=R.drawable.ic_cross_grey_600_24dp;
    }
    holder.mStatusText.setText(textResId);
    holder.mStatusText.setTextColor(getResources().getColor(colorResId));
    holder.mStatusIcon.setVisibility(isAutoManaged ? View.GONE : View.VISIBLE);
    holder.mStatusIcon.setImageResource(drawableResId);
    holder.mStatusContainer.setVisibility(View.VISIBLE);
    holder.mRatingBar.setVisibility(View.GONE);
  }
 else {
    holder.mStatusContainer.setVisibility(View.GONE);
    holder.mRatingBar.setVisibility(View.VISIBLE);
    holder.mRatingBar.setRating(plugin.getAverageStarRating());
  }
}