[Demonstration 1]

[Buggy Method]
@Override
public void onGrant() {
    if (!TextUtils.isEmpty(mCustomer.getPhone())) {
        Intent callIntent = new Intent(Intent.ACTION_CALL);
        callIntent.setData(Uri.parse("tel:" + mCustomer.getPhone()));
        if (ActivityCompat.checkSelfPermission(UserDetailActivity.this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
            return;
        }
        startActivity(callIntent);
    } else {
        Toast.makeText(UserDetailActivity.this, R.string.message_phone_number_empty, Toast.LENGTH_SHORT).show();
    }
}

[Buggy Hunk]
callIntent.setData(Uri.parse("tel:" + mCustomer.getPhone()));

[Patch]
callIntent.setData(Uri.parse("tel:" + (mCustomer.getPhone().startsWith("0") ? mCustomer.getPhone() : "0" + mCustomer.getPhone())));

[Demonstration 2]

[Buggy Method]
private void displayEarnItems(boolean value) {
    if (value) {
        //display horizontal list view
        earnRecyclerView.setVisibility(View.VISIBLE);
        earnView.setVisibility(View.GONE);
    } else {
        //hide horizontal list view
        earnRecyclerView.setVisibility(View.GONE);
        earnView.setVisibility(View.VISIBLE);
    }
}

[Buggy Hunk]
private void displayEarnItems(boolean value){

[Patch]
private void displayEarnItems(boolean value){ Log.d("MAIN", "display earn items :"+value);

[Demonstration 3]

[Buggy Method]
private void getTableSchema(Table table) {
    queryString.append(table.getSchema() == null ? table.getTableName() : table.getSchema().getSchemaName() + "." + table.getTableName());
}

[Buggy Hunk]
queryString.append(table.getSchema() == null

[Patch]
queryString.append(table.getSchema().getSchemaName() == null