Program: 14255
Project: 14255
Buggy source:
/** 
 * Gets available post formats via XML-RPC. Since both self-hosted and .com sites retrieve the format list via XML-RPC there is no need to implement this in the sub-classes.
 */
private void fetchPostFormats(){
  XMLRPCClientInterface client=instantiateInterface();
  if (client == null)   return;
  Map<String,String> args=new HashMap<>();
  args.put(ApiHelper.Params.SHOW_SUPPORTED_POST_FORMATS,"String_Node_Str");
  Object[] params={mBlog.getRemoteBlogId(),mBlog.getUsername(),mBlog.getPassword(),args};
  client.callAsync(new XMLRPCCallback(){
    @Override public void onSuccess(    long id,    Object result){
      credentialsVerified(true);
      if (result != null && result instanceof HashMap) {
        Map<?,?> resultMap=(HashMap<?,?>)result;
        Map allFormats;
        Object[] supportedFormats;
        if (resultMap.containsKey("String_Node_Str")) {
          allFormats=(Map)resultMap.get("String_Node_Str");
          supportedFormats=(Object[])resultMap.get("String_Node_Str");
        }
 else {
          allFormats=resultMap;
          supportedFormats=allFormats.keySet().toArray();
        }
        mRemoteSettings.postFormats=new HashMap<>();
        for (        Object supportedFormat : supportedFormats) {
          if (allFormats.containsKey(supportedFormat)) {
            mRemoteSettings.postFormats.put(supportedFormat.toString(),allFormats.get(supportedFormat).toString());
          }
        }
        mSettings.postFormats=new HashMap<>(mRemoteSettings.postFormats);
        notifyUpdatedOnUiThread(null);
      }
    }
    @Override public void onFailure(    long id,    Exception error){
    }
  }
,ApiHelper.Methods.GET_POST_FORMATS,params);
}

Fixed version (ground truth):
/** 
 * Gets available post formats via XML-RPC. Since both self-hosted and .com sites retrieve the format list via XML-RPC there is no need to implement this in the sub-classes.
 */
private void fetchPostFormats(){
  XMLRPCClientInterface client=instantiateInterface();
  if (client == null)   return;
  Map<String,String> args=new HashMap<>();
  args.put(ApiHelper.Params.SHOW_SUPPORTED_POST_FORMATS,"String_Node_Str");
  Object[] params={mBlog.getRemoteBlogId(),mBlog.getUsername(),mBlog.getPassword(),args};
  client.callAsync(new XMLRPCCallback(){
    @Override public void onSuccess(    long id,    Object result){
      credentialsVerified(true);
      if (result != null && result instanceof HashMap) {
        Map<?,?> resultMap=(HashMap<?,?>)result;
        Map allFormats;
        Object[] supportedFormats;
        if (resultMap.containsKey("String_Node_Str")) {
          allFormats=(Map)resultMap.get("String_Node_Str");
          supportedFormats=(Object[])resultMap.get("String_Node_Str");
        }
 else {
          allFormats=resultMap;
          supportedFormats=allFormats.keySet().toArray();
        }
        mRemoteSettings.postFormats=new HashMap<>();
        mRemoteSettings.postFormats.put("String_Node_Str","String_Node_Str");
        for (        Object supportedFormat : supportedFormats) {
          if (allFormats.containsKey(supportedFormat)) {
            mRemoteSettings.postFormats.put(supportedFormat.toString(),allFormats.get(supportedFormat).toString());
          }
        }
        mSettings.postFormats=new HashMap<>(mRemoteSettings.postFormats);
        notifyUpdatedOnUiThread(null);
      }
    }
    @Override public void onFailure(    long id,    Exception error){
    }
  }
,ApiHelper.Methods.GET_POST_FORMATS,params);
}