[Demonstration 1]

[Buggy Method]
private void instantiatePieHours(int hoursDone, int hoursLeft) {
    pieHours = (PieChart) rootView.findViewById(R.id.pie_hours);
    pieHours.setNoDataTextDescription("TIMMAR DU LAGT");
    pieHours.setVisibility(View.VISIBLE);
    //Set up pie chart data
    Log.d("stats", "pieHours spent: " + getHoursSpent());
    Log.d("stats", "pieHours left: " + getMinutesLeft());
    ArrayList<Entry> pieEntries = new ArrayList<Entry>();
    Entry hoursLeftEntry = new Entry(hoursLeft, 1);
    Entry hoursDoneEntry = new Entry(hoursDone, 0);
    pieEntries.add(hoursLeftEntry);
    pieEntries.add(hoursDoneEntry);
    int[] colors = { Color.parseColor("#e5e5e5"), Color.parseColor("#B3E5FC") };
    PieDataSet pieDataSet = new PieDataSet(pieEntries, "Timmar");
    pieDataSet.setColors(colors);
    pieDataSet.setValueFormatter(new IntegerValueFormatter());
    ArrayList<PieDataSet> dataSets = new ArrayList<PieDataSet>();
    dataSets.add(pieDataSet);
    ArrayList<String> pieLabels = new ArrayList<String>();
    pieLabels.add("Kvar");
    pieLabels.add("Klara");
    PieData pieData = new PieData(pieLabels, pieDataSet);
    pieHours.setData(pieData);
    //Style pie chart data
    pieHours.setDescription("");
    pieHours.setCenterText("Timmar");
    pieHours.setDrawHoleEnabled(true);
    pieHours.setHoleColorTransparent(true);
    pieHours.getLegend().setEnabled(false);
    pieHours.setTouchEnabled(false);
    //Show pie chart data
    pieHours.invalidate();
}

[Buggy Hunk]
Log.d("stats", "pieHours left: " + getMinutesLeft());

[Patch]
Log.d("stats", "pieHours left: " + getHoursLeft());

[Demonstration 2]

[Buggy Method]
@RequestMapping(method = RequestMethod.POST)
public void handleRegister(@RequestBody @Validated @Valid User user, BindingResult bindingResult, Model model, HttpServletResponse response) {
    if (bindingResult.hasErrors()) {
        logger.warn("Validation of user register not success");
        response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
    }
    logger.info("Validation success");
    model.addAttribute("registeredUser");
    response.setStatus(HttpServletResponse.SC_OK);
}

[Buggy Hunk]
model.addAttribute("registeredUser");

[Patch]
model.addAttribute("registeredUser", user);

[Demonstration 3]

[Buggy Method]
private Resource transformToRdf(Model model, PropertyType type) throws RDFTransformException {
    Resource typeResource;
    List<Resource> typeList = model.listResourcesWithProperty(HAS_DOMAIN_PREDICATE, type.getDomainPredicate().toString()).toList();
    //If we've already created a resource for the property type return it otherwise create a new one
    if (typeList != null && !typeList.isEmpty()) {
        typeResource = typeList.get(0);
    } else {
        typeResource = model.createResource();
        typeResource.addProperty(RDF.type, PROPERTY_TYPE_TYPE);
        if (type.getLabel() != null) {
            typeResource.addProperty(RDFS.label, type.getLabel());
        }
        if (type.getDescription() != null) {
            typeResource.addProperty(RDFS.comment, type.getDescription());
        }
        if (type.getDomainPredicate() != null) {
            typeResource.addProperty(HAS_DOMAIN_PREDICATE, type.getDomainPredicate().toString());
        }
        typeResource.addLiteral(IS_READ_ONLY, type.isReadOnly());
        if (type.getPropertyValueType() != null) {
            typeResource.addProperty(HAS_PROPERTY_VALUE_TYPE, type.getPropertyValueType().toString());
        }
        if (type.getPropertyValueHint() != null) {
            typeResource.addProperty(HAS_PROPERTY_VALUE_HINT, type.getPropertyValueHint().toString());
        }
        if (type.getAllowedPropertyValues() != null && !type.getAllowedPropertyValues().isEmpty()) {
            for (PropertyValue value : type.getAllowedPropertyValues()) {
                typeResource.addProperty(HAS_ALLOWED_VALUE, transformToRdf(model, value));
            }
        }
        if (type.getPropertySubTypes() != null && !type.getPropertySubTypes().isEmpty()) {
            for (PropertyConstraint subType : type.getPropertySubTypes()) {
                transformToRdf(model, subType);
            }
        }
        if (type.getPropertyCategory() != null) {
            typeResource.addProperty(HAS_PROPERTY_CATEGORY, transformToRdf(model, type.getPropertyCategory()));
        }
    }
    return typeResource;
}

[Buggy Hunk]
transformToRdf(model, subType);

[Patch]
typeResource.addProperty(HAS_PROPERTY_TYPE, transformToRdf(model, subType));