Program: 22623
Project: 22623
Buggy source:
private Intent makeIntent() throws URISyntaxException {
  Intent intent=new Intent();
  boolean hasIntentInfo=false;
  mDebugOption=false;
  mWaitOption=false;
  Uri data=null;
  String type=null;
  String opt;
  while ((opt=nextOption()) != null) {
    if (opt.equals("String_Node_Str")) {
      intent.setAction(nextArgRequired());
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      data=Uri.parse(nextArgRequired());
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      type=nextArgRequired();
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addCategory(nextArgRequired());
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str") || opt.equals("String_Node_Str")) {
      String key=nextArgRequired();
      String value=nextArgRequired();
      intent.putExtra(key,value);
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      String key=nextArgRequired();
      intent.putExtra(key,(String)null);
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      String key=nextArgRequired();
      String value=nextArgRequired();
      intent.putExtra(key,Integer.valueOf(value));
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      String key=nextArgRequired();
      String value=nextArgRequired();
      intent.putExtra(key,Boolean.valueOf(value));
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      String str=nextArgRequired();
      ComponentName cn=ComponentName.unflattenFromString(str);
      if (cn == null)       throw new IllegalArgumentException("String_Node_Str" + str);
      intent.setComponent(cn);
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      String str=nextArgRequired();
      intent.setFlags(Integer.decode(str).intValue());
    }
 else     if (opt.equals("String_Node_Str")) {
      mDebugOption=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      mWaitOption=true;
    }
 else {
      System.err.println("String_Node_Str" + opt);
      showUsage();
      return null;
    }
  }
  intent.setDataAndType(data,type);
  String uri=nextArg();
  if (uri != null) {
    Intent oldIntent=intent;
    intent=Intent.getIntent(uri);
    if (oldIntent.getAction() != null) {
      intent.setAction(oldIntent.getAction());
    }
    if (oldIntent.getData() != null || oldIntent.getType() != null) {
      intent.setDataAndType(oldIntent.getData(),oldIntent.getType());
    }
    Set cats=oldIntent.getCategories();
    if (cats != null) {
      Iterator it=cats.iterator();
      while (it.hasNext()) {
        intent.addCategory((String)it.next());
      }
    }
    hasIntentInfo=true;
  }
  if (!hasIntentInfo)   throw new IllegalArgumentException("String_Node_Str");
  return intent;
}

Fixed version (ground truth):
private Intent makeIntent() throws URISyntaxException {
  Intent intent=new Intent();
  boolean hasIntentInfo=false;
  mDebugOption=false;
  mWaitOption=false;
  Uri data=null;
  String type=null;
  String opt;
  while ((opt=nextOption()) != null) {
    if (opt.equals("String_Node_Str")) {
      intent.setAction(nextArgRequired());
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      data=Uri.parse(nextArgRequired());
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      type=nextArgRequired();
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addCategory(nextArgRequired());
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str") || opt.equals("String_Node_Str")) {
      String key=nextArgRequired();
      String value=nextArgRequired();
      intent.putExtra(key,value);
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      String key=nextArgRequired();
      intent.putExtra(key,(String)null);
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      String key=nextArgRequired();
      String value=nextArgRequired();
      intent.putExtra(key,Integer.valueOf(value));
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      String key=nextArgRequired();
      String value=nextArgRequired();
      intent.putExtra(key,Boolean.valueOf(value));
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      String str=nextArgRequired();
      ComponentName cn=ComponentName.unflattenFromString(str);
      if (cn == null)       throw new IllegalArgumentException("String_Node_Str" + str);
      intent.setComponent(cn);
      hasIntentInfo=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      String str=nextArgRequired();
      intent.setFlags(Integer.decode(str).intValue());
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_DEBUG_LOG_RESOLUTION);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_ACTIVITY_NO_USER_ACTION);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_ACTIVITY_PREVIOUS_IS_TOP);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY);
    }
 else     if (opt.equals("String_Node_Str")) {
      intent.addFlags(Intent.FLAG_RECEIVER_REPLACE_PENDING);
    }
 else     if (opt.equals("String_Node_Str")) {
      mDebugOption=true;
    }
 else     if (opt.equals("String_Node_Str")) {
      mWaitOption=true;
    }
 else {
      System.err.println("String_Node_Str" + opt);
      showUsage();
      return null;
    }
  }
  intent.setDataAndType(data,type);
  String uri=nextArg();
  if (uri != null) {
    Intent oldIntent=intent;
    intent=Intent.getIntent(uri);
    if (oldIntent.getAction() != null) {
      intent.setAction(oldIntent.getAction());
    }
    if (oldIntent.getData() != null || oldIntent.getType() != null) {
      intent.setDataAndType(oldIntent.getData(),oldIntent.getType());
    }
    Set cats=oldIntent.getCategories();
    if (cats != null) {
      Iterator it=cats.iterator();
      while (it.hasNext()) {
        intent.addCategory((String)it.next());
      }
    }
    hasIntentInfo=true;
  }
  if (!hasIntentInfo)   throw new IllegalArgumentException("String_Node_Str");
  return intent;
}