[Demonstration 1]

[Buggy Method]
@Override
public int getCount() {
    super.getCount();
    return MainFragment.getReviewList().size();
}

[Buggy Hunk]
return MainFragment.getReviewList().size();

[Patch]
return mShowUserReviews ? mReviewList.size() : MainFragment.getReviewList().size();

[Demonstration 2]

[Buggy Method]
private String[] genCoditionStatements(String[] varTyps, String[] varNams, String[] varVals) {
    if (varTyps == null || varTyps.length == 0)
        return null;
    else {
        String[] returnStr = new String[2];
        returnStr[0] = "";
        returnStr[1] = "";
        String[] temp = new String[2];
        for (int i = 0; i < varTyps.length; i++) {
            //need handle the case where we do not care about the type and value
            if (varVals[i] == null) {
                continue;
            }
            if (varVals[i].startsWith("$$"))
                temp = genCoditionStatement(varTyps[i], varNams[i], varVals[i].substring(2, varVals[i].length()), 1);
            else
                temp = genCoditionStatement(varTyps[i], varNams[i], varVals[i], 0);
            if (temp != null) {
                if (temp[0] != null)
                    returnStr[0] += temp[0] + " && ";
                if (temp[1] != null)
                    returnStr[1] += temp[1] + " && ";
            }
        }
        returnStr[0] = trimLastPunctuation(returnStr[0], " && ");
        returnStr[1] = trimLastPunctuation(returnStr[1], " && ");
        return returnStr;
    }
}

[Buggy Hunk]
if (varVals[i].startsWith("$$"))

[Patch]
if (varVals[i].startsWith("$$")&&!varVals[i].startsWith("$$$"))

[Demonstration 3]

[Buggy Method]
public static void hideDecoderFragment() {
    try {
        MainActivity app = MainActivity.app;
        if (app == null)
            return;
        decoderFragmentOn = false;
        new Handler().postDelayed(new Runnable() {

            @Override
            public void run() {
                BRAnimator.multiplePressingAvailable = true;
            }
        }, 300);
        final FragmentManager fragmentManager = app.getFragmentManager();
        FragmentDecoder fragmentDecoder = (FragmentDecoder) fragmentManager.findFragmentByTag(FragmentDecoder.class.getName());
        if (fragmentDecoder == null)
            return;
        fragmentManager.beginTransaction().setCustomAnimations(R.animator.from_top, R.animator.to_bottom).remove(fragmentDecoder).commit();
        CustomPagerAdapter.adapter.showFragments(true, app);
        app.activityButtonsEnable(true);
    } catch (Exception e) {
        e.printStackTrace();
    }
}

[Buggy Hunk]
MainActivity app = MainActivity.app;

[Patch]
final MainActivity app = MainActivity.app;