Program: 24329
Project: 24329
Buggy source:
private void process_user_feed(AlertDialog edit_dialog,String new_group,String URL_check,String feed_name,String spinner_group,String mode){
  boolean found=false, new_group_mode=false;
  if (new_group.length() > 0) {
    new_group_mode=true;
    for (    String group : current_groups) {
      if ((group.toLowerCase()).equals(new_group))       found=true;
    }
    String[] words=new_group.split("String_Node_Str");
    new_group="String_Node_Str";
    if (words.length == 1) {
      char cap=Character.toUpperCase(words[0].charAt(0));
      new_group+=cap + words[0].substring(1,words[0].length());
    }
 else {
      for (int i=0; i < words.length - 1; i++) {
        char cap=Character.toUpperCase(words[i].charAt(0));
        new_group+=cap + words[i].substring(1,words[i].length()) + "String_Node_Str";
      }
      char cap=Character.toUpperCase(words[words.length - 1].charAt(0));
      new_group+=cap + words[words.length - 1].substring(1,words[words.length - 1].length());
    }
  }
 else   new_group=spinner_group;
  Boolean rss=false;
  check_finished=-1;
  if (!URL_check.contains("String_Node_Str")) {
    new check_feed_exists().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,"String_Node_Str" + URL_check);
    while (check_finished == -1) {
    }
    if (check_finished == 0) {
      check_finished=-1;
      new check_feed_exists().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,"String_Node_Str" + URL_check);
      while (check_finished == -1) {
      }
      if (check_finished == 1)       URL_check="String_Node_Str" + URL_check;
    }
 else     if (check_finished == 1)     URL_check="String_Node_Str" + URL_check;
  }
 else {
    new check_feed_exists().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,URL_check);
    while (check_finished == -1) {
    }
  }
  if (check_finished == 1)   rss=true;
  if (rss != null && !rss)   toast_message("String_Node_Str",false);
 else {
    if ((!found) && (new_group_mode))     add_group(new_group);
    if (feed_name.isEmpty())     feed_name=feed_title;
    feed_name=illegal_file_chars.matcher(feed_name).replaceAll("String_Node_Str");
    if (mode.equals("String_Node_Str"))     edit_feed(current_title,feed_name,URL_check,current_group,new_group);
 else     add_feed(feed_name,URL_check,new_group);
    edit_dialog.dismiss();
  }
}

Fixed version (ground truth):
private static void process_user_feed(AlertDialog edit_dialog,String new_group,String URL_check,String feed_name,String spinner_group,String mode){
  boolean found=false, new_group_mode=false;
  if (new_group.length() > 0) {
    new_group_mode=true;
    for (    String group : current_groups) {
      if ((group.toLowerCase()).equals(new_group))       found=true;
    }
    String[] words=new_group.split("String_Node_Str");
    new_group="String_Node_Str";
    if (words.length == 1) {
      char cap=Character.toUpperCase(words[0].charAt(0));
      new_group+=cap + words[0].substring(1,words[0].length());
    }
 else {
      for (int i=0; i < words.length - 1; i++) {
        char cap=Character.toUpperCase(words[i].charAt(0));
        new_group+=cap + words[i].substring(1,words[i].length()) + "String_Node_Str";
      }
      char cap=Character.toUpperCase(words[words.length - 1].charAt(0));
      new_group+=cap + words[words.length - 1].substring(1,words[words.length - 1].length());
    }
  }
 else   new_group=spinner_group;
  Boolean rss=false;
  check_finished=-1;
  if (!URL_check.contains("String_Node_Str")) {
    new check_feed_exists().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,"String_Node_Str" + URL_check);
    while (check_finished == -1) {
    }
    if (check_finished == 0) {
      check_finished=-1;
      new check_feed_exists().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,"String_Node_Str" + URL_check);
      while (check_finished == -1) {
      }
      if (check_finished == 1)       URL_check="String_Node_Str" + URL_check;
    }
 else     if (check_finished == 1)     URL_check="String_Node_Str" + URL_check;
  }
 else {
    new check_feed_exists().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,URL_check);
    while (check_finished == -1) {
    }
  }
  if (check_finished == 1)   rss=true;
  if (rss != null && !rss)   toast_message("String_Node_Str",false);
 else {
    if ((!found) && (new_group_mode))     add_group(new_group);
    if (feed_name.isEmpty())     feed_name=feed_title;
    feed_name=illegal_file_chars.matcher(feed_name).replaceAll("String_Node_Str");
    if (mode.equals("String_Node_Str"))     edit_feed(current_title,feed_name,URL_check,current_group,new_group);
 else     add_feed(feed_name,URL_check,new_group);
    edit_dialog.dismiss();
  }
}