Program: 15159
Project: 15159
Buggy source:
@SuppressWarnings("String_Node_Str") protected void moderateComments(String newStatus){
  for (int i=0; i < checkedComments.size(); i++) {
    if (checkedComments.get(i).toString().equals("String_Node_Str")) {
      client=new XMLRPCClient(WordPress.currentBlog.getUrl(),WordPress.currentBlog.getHttpuser(),WordPress.currentBlog.getHttppassword());
      Comment listRow=(Comment)getListView().getItemAtPosition(i);
      int curCommentID=listRow.commentID;
      Map<String,String> contentHash, postHash=new HashMap<String,String>();
      contentHash=(Map<String,String>)allComments.get(curCommentID);
      postHash.put("String_Node_Str",newStatus);
      postHash.put("String_Node_Str",contentHash.get("String_Node_Str"));
      postHash.put("String_Node_Str",contentHash.get("String_Node_Str"));
      postHash.put("String_Node_Str",contentHash.get("String_Node_Str"));
      postHash.put("String_Node_Str",contentHash.get("String_Node_Str"));
      Object[] params={WordPress.currentBlog.getBlogId(),WordPress.currentBlog.getUsername(),WordPress.currentBlog.getPassword(),curCommentID,postHash};
      Object result=null;
      try {
        result=(Object)client.call("String_Node_Str",params);
        boolean bResult=Boolean.parseBoolean(result.toString());
        if (bResult) {
          checkedComments.set(i,"String_Node_Str");
          listRow.status=newStatus;
          model.set(i,listRow);
          WordPress.wpDB.updateCommentStatus(WordPress.currentBlog.getId(),listRow.commentID,newStatus);
        }
      }
 catch (      XMLRPCException e) {
        moderateErrorMsg=getResources().getText(R.string.error_moderate_comment).toString();
      }
    }
  }
  getActivity().dismissDialog(ID_DIALOG_MODERATING);
  Thread action=new Thread(){
    public void run(){
      if (moderateErrorMsg == "String_Node_Str") {
        String msg=getResources().getText(R.string.comment_moderated).toString();
        if (checkedCommentTotal > 1)         msg=getResources().getText(R.string.comments_moderated).toString();
        Toast.makeText(getActivity().getApplicationContext(),msg,Toast.LENGTH_SHORT).show();
        checkedCommentTotal=0;
        hideModerationBar();
        getListView().invalidateViews();
      }
 else {
        if (!getActivity().isFinishing()) {
          checkedCommentTotal=0;
          hideModerationBar();
          getListView().invalidateViews();
          FragmentTransaction ft=getFragmentManager().beginTransaction();
          WPAlertDialogFragment alert=WPAlertDialogFragment.newInstance(moderateErrorMsg);
          alert.show(ft,"String_Node_Str");
        }
        moderateErrorMsg="String_Node_Str";
      }
    }
  }
;
  getActivity().runOnUiThread(action);
  pd=new ProgressDialog(getActivity().getApplicationContext());
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") protected void moderateComments(String newStatus){
  for (int i=0; i < checkedComments.size(); i++) {
    if (checkedComments.get(i).toString().equals("String_Node_Str")) {
      client=new XMLRPCClient(WordPress.currentBlog.getUrl(),WordPress.currentBlog.getHttpuser(),WordPress.currentBlog.getHttppassword());
      Comment listRow=(Comment)getListView().getItemAtPosition(i);
      int curCommentID=listRow.commentID;
      Map<String,String> contentHash, postHash=new HashMap<String,String>();
      contentHash=(Map<String,String>)allComments.get(curCommentID);
      if (contentHash.get("String_Node_Str").equals(newStatus)) {
        checkedComments.set(i,"String_Node_Str");
        continue;
      }
      postHash.put("String_Node_Str",newStatus);
      postHash.put("String_Node_Str",contentHash.get("String_Node_Str"));
      postHash.put("String_Node_Str",contentHash.get("String_Node_Str"));
      postHash.put("String_Node_Str",contentHash.get("String_Node_Str"));
      postHash.put("String_Node_Str",contentHash.get("String_Node_Str"));
      Object[] params={WordPress.currentBlog.getBlogId(),WordPress.currentBlog.getUsername(),WordPress.currentBlog.getPassword(),curCommentID,postHash};
      Object result=null;
      try {
        result=(Object)client.call("String_Node_Str",params);
        boolean bResult=Boolean.parseBoolean(result.toString());
        if (bResult) {
          checkedComments.set(i,"String_Node_Str");
          listRow.status=newStatus;
          contentHash.put("String_Node_Str",newStatus);
          model.set(i,listRow);
          WordPress.wpDB.updateCommentStatus(WordPress.currentBlog.getId(),listRow.commentID,newStatus);
        }
      }
 catch (      XMLRPCException e) {
        moderateErrorMsg=getResources().getText(R.string.error_moderate_comment).toString();
      }
    }
  }
  getActivity().dismissDialog(ID_DIALOG_MODERATING);
  Thread action=new Thread(){
    public void run(){
      if (moderateErrorMsg == "String_Node_Str") {
        String msg=getResources().getText(R.string.comment_moderated).toString();
        if (checkedCommentTotal > 1)         msg=getResources().getText(R.string.comments_moderated).toString();
        Toast.makeText(getActivity().getApplicationContext(),msg,Toast.LENGTH_SHORT).show();
        checkedCommentTotal=0;
        hideModerationBar();
        getListView().invalidateViews();
      }
 else {
        if (!getActivity().isFinishing()) {
          checkedCommentTotal=0;
          hideModerationBar();
          getListView().invalidateViews();
          FragmentTransaction ft=getFragmentManager().beginTransaction();
          WPAlertDialogFragment alert=WPAlertDialogFragment.newInstance(moderateErrorMsg);
          alert.show(ft,"String_Node_Str");
        }
        moderateErrorMsg="String_Node_Str";
      }
    }
  }
;
  getActivity().runOnUiThread(action);
  pd=new ProgressDialog(getActivity().getApplicationContext());
}