[Demonstration 1]

[Buggy Method]
private void handleLoginAnswer(Boolean success) {
    if (//TODO- CHANGE THE NULL CONDITION, JUST FOR CHECKS
    success || success == null) {
        LoggedInUser.SetLoggedInUser(mEmail);
        LoggedInUser.SetLoggedInPassword(mPassword);
        Toast.makeText(getApplicationContext(), "Redirecting...", Toast.LENGTH_SHORT).show();
        Intent i = new Intent(LoginActivity.this, MainActivity.class);
        finish();
        startActivity(i);
        //finish();
    } else if (success == false) {
        mPasswordView.setError(getString(R.string.error_incorrect_password));
        mPasswordView.requestFocus();
    } else {
        Toast.makeText(getApplicationContext(), "Connection Failure!", Toast.LENGTH_SHORT).show();
    }
}

[Buggy Hunk]
if (success  || success == null)//TODO- CHANGE THE NULL CONDITION, JUST FOR CHECKS

[Patch]
if (success == null || (success))//TODO- CHANGE THE NULL CONDITION, JUST FOR CHECKS

[Demonstration 2]

[Buggy Method]
@Override
public void onActionResult(boolean success, int value) {
    onSizeSeeked(-value);
    if (success) {
        mPlayController.pendingRunWithDelay(PlayEngine.this, getSpeedDelay());
    }
}

[Buggy Hunk]
if (success) {

[Patch]
if (success && getSeekSize() != 0) {

[Demonstration 3]

[Buggy Method]
private void scanClass(Class<?> clazz) {
    ResourceInfo resourceInfo = null;
    try {
        resourceInfo = new ResourceInfo(clazz.newInstance(), clazz.getAnnotation(Path.class).value());
    } catch (Exception e) {
        e.printStackTrace();
    }
    if (resourceInfo == null)
        return;
    for (Method method : clazz.getMethods()) {
        if (method.isAnnotationPresent(Path.class)) /* && method.getParameterCount() == 1*/
        {
            if (method.getParameterTypes()[0].isAssignableFrom(Request.class)) {
                RequestMethod requestMethod = RequestMethod.GET;
                if (method.isAnnotationPresent(POST.class))
                    requestMethod = RequestMethod.POST;
                else if (method.isAnnotationPresent(DELETE.class))
                    requestMethod = RequestMethod.DELETE;
                else if (method.isAnnotationPresent(PUT.class))
                    requestMethod = RequestMethod.PUT;
                ResourceInfo.Entry resEntry;
                String path = method.getAnnotation(Path.class).value();
                String copyPath = path;
                // If path parameters are present, remove them to get the root path
                if (path.contains("{"))
                    path = path.substring(0, path.indexOf("{") - 1);
                resourceInfo.add(path, (method.isAnnotationPresent(Produces.class)) ? resEntry = new ResourceInfo.Entry(method, method.getAnnotation(Produces.class).value().type(), (method.isAnnotationPresent(Consumes.class)) ? method.getAnnotation(Consumes.class).value().type() : ContentType.ALL.type(), requestMethod) : (resEntry = new ResourceInfo.Entry(method)));
                if (method.getParameterCount() > 1) {
                    for (Parameter parameter : method.getParameters()) {
                        if (parameter.isAnnotationPresent(FormParam.class)) {
                            String postKey = parameter.getAnnotation(FormParam.class).value();
                            resEntry.addPostKey(postKey);
                        }
                    }
                }
                // Getting path variables
                String[] splitted = copyPath.split("/");
                List<String> rawParams = new ArrayList<>();
                for (String p : splitted) {
                    if (!p.isEmpty()) {
                        if (p.startsWith("{") && p.endsWith("}")) {
                            p = p.replaceAll("\\{|\\}", "");
                            rawParams.add(p);
                        }
                    }
                }
                if (rawParams.size() > 0) {
                    if (rawParams.size() != method.getParameterCount() - 1)
                        throw new IllegalArgumentException("the path parameter count is not equal with the method parameter count of method " + method.getName());
                    rawParams.forEach(resEntry::addPathKey);
                }
            }
        }
    }
    this.resourceInfo.put(resourceInfo.rootPath(), resourceInfo);
}

[Buggy Hunk]
resourceInfo.add(path, (method.isAnnotationPresent(Produces.class)) ? resEntry = new ResourceInfo.Entry(method, method.getAnnotation(Produces.class).value().type(), (method.isAnnotationPresent(Consumes.class)) ? method.getAnnotation(Consumes.class).value().type() : ContentType.ALL.type(), requestMethod) : (resEntry = new ResourceInfo.Entry(method)));

[Patch]
resourceInfo.add(path, (method.isAnnotationPresent(Produces.class)) ? resEntry = new ResourceInfo.Entry(method, method.getAnnotation(Produces.class).value().type(), (method.isAnnotationPresent(Consumes.class)) ? method.getAnnotation(Consumes.class).value().type() : ContentType.ALL.type(), requestMethod) : (resEntry = new ResourceInfo.Entry(method, requestMethod)));