[Demonstration 1]

[Buggy Method]
public static ZhihuDaily create(String baseUrl) {
    if (zhihuDaily == null) {
        synchronized (ZhihuDailyClient.class) {
            if (zhihuDaily == null) {
                zhihuDaily = createZhihuDaily(baseUrl);
            }
        }
    }
    return zhihuDaily;
}

[Buggy Hunk]
public static ZhihuDaily create(String baseUrl) {

[Patch]
public static ZhihuDaily create(final String baseUrl) {

[Demonstration 2]

[Buggy Method]
private void processScanResult(ScanResult result) {
    if (result.getDevice().getName() == null || !result.getDevice().getName().startsWith("SLBeacon")) {
        return;
    }
    String macAddress = result.getDevice().getAddress();
    resultsReporter.reportBleScan(result.getRssi(), macAddress);
}

[Buggy Hunk]
resultsReporter.reportBleScan(result.getRssi(), macAddress);

[Patch]
resultsReporter.reportBleScan(result.getRssi(), macAddress, result.getDevice().getName());

[Demonstration 3]

[Buggy Method]
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    new GetData(getApplicationContext()).execute();
    Button createNewEvent = (Button) findViewById(R.id.createNewEvent);
    assert createNewEvent != null;
    createNewEvent.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            startActivity(new Intent(MainActivity.this, Pop.class));
        }
    });
}

[Buggy Hunk]
new GetData(getApplicationContext()).execute();

[Patch]
new GetData().execute();