[Demonstration 1]

[Buggy Method]
private void mySearchThread(final Activity a) {
    Runnable trainSearch = new Runnable() {

        public void run() {
            SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(getActivity());
            int score = sp.getInt("searchGame", 0) + 1;
            sp.edit().putInt("searchGame", score).commit();
            makeApiRequest();
            if (a != null)
                a.runOnUiThread(new Runnable() {

                    public void run() {
                        //
                        try {
                            fillData();
                            a.setProgressBarIndeterminateVisibility(false);
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                    }
                });
        }
    };
    Thread thread = new Thread(null, trainSearch, "MyThread");
    thread.start();
}

[Buggy Hunk]
a.setProgressBarIndeterminateVisibility(false);

[Patch]
getView().findViewById(R.id.progress).setVisibility(View.GONE);

[Demonstration 2]

[Buggy Method]
public void addDestructionCallback(String name, Runnable callback) {
    destructionCallbacks.put(name, callback);
}

[Buggy Hunk]
destructionCallbacks.put(name, callback);

[Patch]
destructionCallbacksByName.put(name, callback);

[Demonstration 3]

[Buggy Method]
@Override
protected void onProgressUpdate(String... message) {
    super.onProgressUpdate(message);
    int percentComplete = 0;
    percentComplete = Integer.parseInt(message[1]);
    dialog.setMessage(message[0]);
    dialog.setProgress(percentComplete);
    activity.displayDialog(dialog);
}

[Buggy Hunk]
activity.displayDialog(dialog);

[Patch]
dialog.show();