Program: 8378
Project: 8378
Buggy source:
public View getView(int position,View convertView,ViewGroup parent){
  ImportKeysListEntry entry=mData.get(position);
  ViewHolder holder;
  if (convertView == null) {
    holder=new ViewHolder();
    convertView=mInflater.inflate(R.layout.import_keys_list_entry,null);
    holder.mMainUserId=(TextView)convertView.findViewById(R.id.mainUserId);
    holder.mMainUserIdRest=(TextView)convertView.findViewById(R.id.mainUserIdRest);
    holder.mKeyId=(TextView)convertView.findViewById(R.id.keyId);
    holder.mFingerprint=(TextView)convertView.findViewById(R.id.fingerprint);
    holder.mAlgorithm=(TextView)convertView.findViewById(R.id.algorithm);
    holder.mStatus=(TextView)convertView.findViewById(R.id.status);
    convertView.setTag(holder);
  }
 else {
    holder=(ViewHolder)convertView.getTag();
  }
  String userId=entry.userIds.get(0);
  String[] userIdSplit=PgpKeyHelper.splitUserId(userId);
  if (userIdSplit[0] != null) {
    if (entry.secretKey) {
      userIdSplit[0]=mActivity.getString(R.string.secret_key) + "String_Node_Str" + userIdSplit[0];
      holder.mMainUserId.setTextColor(Color.RED);
    }
    holder.mMainUserId.setText(userIdSplit[0]);
  }
 else {
    holder.mMainUserId.setText(R.string.user_id_no_name);
  }
  if (userIdSplit[1] != null) {
    holder.mMainUserIdRest.setText(userIdSplit[1]);
    holder.mMainUserIdRest.setVisibility(View.VISIBLE);
  }
 else {
    holder.mMainUserIdRest.setVisibility(View.GONE);
  }
  holder.mKeyId.setText(entry.hexKeyId);
  if (entry.fingerPrint != null) {
    holder.mFingerprint.setText(mActivity.getString(R.string.fingerprint) + "String_Node_Str" + entry.fingerPrint);
    holder.mFingerprint.setVisibility(View.VISIBLE);
  }
 else {
    holder.mFingerprint.setVisibility(View.GONE);
  }
  holder.mAlgorithm.setText("String_Node_Str" + entry.bitStrength + "String_Node_Str"+ entry.algorithm);
  if (entry.revoked) {
    holder.mStatus.setText(R.string.revoked);
  }
 else {
    holder.mStatus.setVisibility(View.GONE);
  }
  LinearLayout ll=(LinearLayout)convertView.findViewById(R.id.list);
  if (entry.userIds.size() == 1) {
    ll.setVisibility(View.GONE);
  }
 else {
    boolean first=true;
    boolean second=true;
    for (    String uid : entry.userIds) {
      if (first) {
        first=false;
        continue;
      }
      if (!second) {
        View sep=new View(mActivity);
        sep.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,1));
        sep.setBackgroundResource(android.R.drawable.divider_horizontal_dark);
        ll.addView(sep);
      }
      TextView uidView=(TextView)mInflater.inflate(R.layout.import_keys_list_entry_user_id,null);
      uidView.setText(uid);
      ll.addView(uidView);
      second=false;
    }
  }
  CheckBox cBox=(CheckBox)convertView.findViewById(R.id.selected);
  cBox.setChecked(entry.isSelected());
  return convertView;
}

Fixed version (ground truth):
public View getView(int position,View convertView,ViewGroup parent){
  ImportKeysListEntry entry=mData.get(position);
  ViewHolder holder;
  if (convertView == null) {
    holder=new ViewHolder();
    convertView=mInflater.inflate(R.layout.import_keys_list_entry,null);
    holder.mMainUserId=(TextView)convertView.findViewById(R.id.mainUserId);
    holder.mMainUserIdRest=(TextView)convertView.findViewById(R.id.mainUserIdRest);
    holder.mKeyId=(TextView)convertView.findViewById(R.id.keyId);
    holder.mFingerprint=(TextView)convertView.findViewById(R.id.fingerprint);
    holder.mAlgorithm=(TextView)convertView.findViewById(R.id.algorithm);
    holder.mStatus=(TextView)convertView.findViewById(R.id.status);
    convertView.setTag(holder);
  }
 else {
    holder=(ViewHolder)convertView.getTag();
  }
  String userId=entry.userIds.get(0);
  String[] userIdSplit=PgpKeyHelper.splitUserId(userId);
  if (userIdSplit[0] != null) {
    if (entry.secretKey) {
      userIdSplit[0]=mActivity.getString(R.string.secret_key) + "String_Node_Str" + userIdSplit[0];
      holder.mMainUserId.setTextColor(Color.RED);
    }
    holder.mMainUserId.setText(userIdSplit[0]);
  }
 else {
    holder.mMainUserId.setText(R.string.user_id_no_name);
  }
  if (userIdSplit[1] != null) {
    holder.mMainUserIdRest.setText(userIdSplit[1]);
    holder.mMainUserIdRest.setVisibility(View.VISIBLE);
  }
 else {
    holder.mMainUserIdRest.setVisibility(View.GONE);
  }
  holder.mKeyId.setText(entry.hexKeyId);
  if (entry.fingerPrint != null) {
    holder.mFingerprint.setText(mActivity.getString(R.string.fingerprint) + "String_Node_Str" + entry.fingerPrint);
    holder.mFingerprint.setVisibility(View.VISIBLE);
  }
 else {
    holder.mFingerprint.setVisibility(View.GONE);
  }
  holder.mAlgorithm.setText("String_Node_Str" + entry.bitStrength + "String_Node_Str"+ entry.algorithm);
  if (entry.revoked) {
    holder.mStatus.setText(R.string.revoked);
  }
 else {
    holder.mStatus.setVisibility(View.GONE);
  }
  LinearLayout ll=(LinearLayout)convertView.findViewById(R.id.list);
  ll.removeAllViews();
  if (entry.userIds.size() == 1) {
    ll.setVisibility(View.GONE);
  }
 else {
    boolean first=true;
    boolean second=true;
    for (    String uid : entry.userIds) {
      if (first) {
        first=false;
        continue;
      }
      if (!second) {
        View sep=new View(mActivity);
        sep.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,1));
        sep.setBackgroundResource(android.R.drawable.divider_horizontal_dark);
        ll.addView(sep);
      }
      TextView uidView=(TextView)mInflater.inflate(R.layout.import_keys_list_entry_user_id,null);
      uidView.setText(uid);
      ll.addView(uidView);
      second=false;
    }
  }
  CheckBox cBox=(CheckBox)convertView.findViewById(R.id.selected);
  cBox.setChecked(entry.isSelected());
  return convertView;
}