Program: 172569
Project: 172569
Buggy source:
public PasswordDialog show(){
  if (title == null || message == null) {
    throw new RuntimeException("String_Node_Str");
  }
  View view=inflater.inflate(R.layout.password_dialog,null);
  ((TextView)view.findViewById(R.id.password_dialog_title)).setText(title);
  ((TextView)view.findViewById(R.id.password_dialog_message)).setText(message);
  final EditText input=view.findViewById(R.id.password_dialog_input);
  input.setInputType(passwordType);
  dialog=builder.setView(view).setPositiveButton(R.string.password_confirm,new DialogInterface.OnClickListener(){
    @Override public void onClick(    DialogInterface dialogInterface,    int i){
    }
  }
).setNegativeButton(R.string.password_cancel,new DialogInterface.OnClickListener(){
    @Override public void onClick(    DialogInterface dialogInterface,    int i){
      if (callback != null) {
        callback.onPasswordCancel();
      }
    }
  }
).create();
  if (dialog.getWindow() != null && (enterAnimation != NO_ANIMATION || exitAnimation != NO_ANIMATION)) {
    int style=FingerprintDialog.getStyle(enterAnimation,exitAnimation);
    if (style == -1) {
      Log.w(TAG,"String_Node_Str");
    }
 else {
      dialog.getWindow().getAttributes().windowAnimations=style;
    }
    if (!darkBackground) {
      dialog.getWindow().setDimAmount(0.0f);
    }
  }
  dialog.setCanceledOnTouchOutside(cancelOnTouchOutside);
  dialog.setCancelable(cancelOnPressBack);
  dialog.show();
  dialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener(new View.OnClickListener(){
    @Override public void onClick(    View v){
      if (callback != null) {
        String password=input.getText().toString();
        if (callback.onPasswordCheck(password)) {
          dialog.dismiss();
          token.continueAuthentication();
          tryCounter=0;
        }
 else {
          input.setError(context.getResources().getString(R.string.password_incorrect));
          tryCounter++;
          if (counterCallback != null && tryCounter == limit) {
            counterCallback.onTryLimitReached();
          }
        }
      }
    }
  }
);
  return this;
}

Fixed version (ground truth):
public PasswordDialog show(){
  if (title == null || message == null) {
    throw new RuntimeException("String_Node_Str");
  }
  View view=inflater.inflate(R.layout.password_dialog,null);
  ((TextView)view.findViewById(R.id.password_dialog_title)).setText(title);
  ((TextView)view.findViewById(R.id.password_dialog_message)).setText(message);
  final EditText input=view.findViewById(R.id.password_dialog_input);
  input.setInputType(passwordType);
  dialog=builder.setView(view).setPositiveButton(R.string.password_confirm,new DialogInterface.OnClickListener(){
    @Override public void onClick(    DialogInterface dialogInterface,    int i){
    }
  }
).setNegativeButton(R.string.password_cancel,new DialogInterface.OnClickListener(){
    @Override public void onClick(    DialogInterface dialogInterface,    int i){
      if (callback != null) {
        callback.onPasswordCancel();
      }
    }
  }
).create();
  if (dialog.getWindow() != null) {
    if (enterAnimation != NO_ANIMATION || exitAnimation != NO_ANIMATION) {
      int style=FingerprintDialog.getStyle(enterAnimation,exitAnimation);
      if (style == -1) {
        Log.w(TAG,"String_Node_Str");
      }
 else {
        dialog.getWindow().getAttributes().windowAnimations=style;
      }
    }
    if (!darkBackground) {
      dialog.getWindow().setDimAmount(0.0f);
    }
  }
  dialog.setCanceledOnTouchOutside(cancelOnTouchOutside);
  dialog.setCancelable(cancelOnPressBack);
  dialog.show();
  dialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener(new View.OnClickListener(){
    @Override public void onClick(    View v){
      if (callback != null) {
        String password=input.getText().toString();
        if (callback.onPasswordCheck(password)) {
          dialog.dismiss();
          token.continueAuthentication();
          tryCounter=0;
        }
 else {
          input.setError(context.getResources().getString(R.string.password_incorrect));
          tryCounter++;
          if (counterCallback != null && tryCounter == limit) {
            counterCallback.onTryLimitReached();
          }
        }
      }
    }
  }
);
  return this;
}