[Demonstration 1]

[Buggy Method]
@Override
public void submitSignatureForLogsLoaded(JSONObject signature) {
    progressDialog.dismiss();
    if (signature != null) {
        //Toast.makeText(getActivity(),signature.toString(), Toast.LENGTH_SHORT).show();
        alertDialog("Logs successfully updated");
    } else {
        Toast.makeText(getActivity(), "Error in submitting signature.", Toast.LENGTH_SHORT).show();
    }
}

[Buggy Hunk]
alertDialog("Logs successfully updated");

[Patch]
alertDialog(getResources().getString(R.string.success_log_approve));

[Demonstration 2]

[Buggy Method]
@Override
protected void onDraw(Canvas canvas) {
    if (touchedRecIndex != -1 && weatherTouchRecFs.length > 0) {
        trendPaint.setAlpha(80);
        canvas.drawCircle(weatherTouchRecFs[touchedRecIndex].centerX(), weatherTouchRecFs[touchedRecIndex].centerY(), clickFactor * weatherTouchRecFs[touchedRecIndex].width() / 2, trendPaint);
        trendPaint.setAlpha(255);
    }
    canvas.save();
    canvas.translate(0, height - DEFAULT_BOTTOM_PADDING);
    canvas.scale(1, -1);
    trendPaint.setStyle(Paint.Style.STROKE);
    trendPaint.setStrokeWidth(STROKE_WIDTH1);
    trendPaint.setAlpha(255);
    canvas.drawPath(trendPathDraw, trendPaint);
    trendPaint2.setColor(COLORS[1]);
    trendPaint2.setStyle(Paint.Style.FILL);
    canvas.drawPath(trendPathBelowDraw, trendPaint2);
    if (drawWeatherFlag) {
        trendPaint2.setColor(COLORS[2]);
        trendPaint2.setStyle(Paint.Style.STROKE);
        trendPaint2.setStrokeWidth(STROKE_WIDTH1 / 3f);
        canvas.drawLine(trendPtsDraw[0], -DEFAULT_BOTTOM_PADDING, trendPtsDraw[trendPtsDraw.length - 2], -DEFAULT_BOTTOM_PADDING, trendPaint2);
        for (int i = 0; i < trendPtsDraw.length; i += 2) {
            trendPaint.setStyle(Paint.Style.FILL);
            trendPaint.setAlpha(weatherTipPaint.weatherTipPaintAlphas.get(i / 2));
            trendPaint.setStrokeWidth(STROKE_WIDTH2);
            canvas.drawPoints(trendPtsDraw, i, 2, trendPaint);
            trendPaint2.setColor(COLORS[0]);
            trendPaint2.setAlpha((int) (weatherTipPaint.weatherTipPaintAlphas.get(i / 2) / 255f * 37));
            canvas.drawLine(trendPtsDraw[i], trendPtsDraw[i + 1], trendPtsDraw[i], -DEFAULT_BOTTOM_PADDING, trendPaint2);
            if (drawWeather) {
                int rendererSaveCount = canvas.save();
                canvas.translate(trendPtsDraw[i] - WEATHER_VIEW_WIDTH_HEIGHT / 2, height - DEFAULT_BOTTOM_PADDING - X_SIGN_Y);
                canvas.scale(1, -1);
                try {
                    weatherRenderers[i / 2].setPaintsAlpha(weatherTipPaint.weatherTipPaintAlphas.get(i / 2)).draw(canvas);
                } catch (Exception e) {
                }
                canvas.restoreToCount(rendererSaveCount);
            }
            if (drawExtend) {
                canvas.save();
                canvas.translate(trendPtsDraw[i] - WEATHER_VIEW_WIDTH_HEIGHT / 2, height - DEFAULT_BOTTOM_PADDING - X_SIGN_Y - WEATHER_VIEW_WIDTH_HEIGHT - TEXT_SIZE - EXTEND_MARGIN);
                canvas.scale(1, -1);
                try {
                    extendRenderers[i / 2].setPaintsAlpha(weatherTipPaint.weatherTipPaintAlphas.get(i / 2)).draw(canvas);
                } catch (Exception e) {
                }
                canvas.restore();
            }
            if (drawExtend2) {
                canvas.save();
                canvas.translate(trendPtsDraw[i] - WEATHER_VIEW_WIDTH_HEIGHT / 2, height - DEFAULT_BOTTOM_PADDING - X_SIGN_Y - WEATHER_VIEW_WIDTH_HEIGHT - TEXT_SIZE - EXTEND_MARGIN - EXTEND_HEIGHT - 2 * EXTEND_MARGIN);
                canvas.scale(1, -1);
                try {
                    extendRenderers2[i / 2].setPaintsAlpha(weatherTipPaint.weatherTipPaintAlphas.get(i / 2)).draw(canvas);
                } catch (Exception e) {
                }
                canvas.restore();
            }
            if (trendPointDesc != null) {
                int canvasScaleCount = canvas.save();
                canvas.scale(1, -1);
                trendPaint.setTextSize(TEXT_SIZE);
                float textY;
                if ((textY = -trendPtsDraw[i + 1] - DISTANCE_VALUE1) < -(DEFAULT_HEIGHT - DEFAULT_TOP_PADDING + DEFAULT_BOTTOM_PADDING - DISTANCE_VALUE2 * DEFAULT_BOTTOM_PADDING)) {
                    textY = -trendPtsDraw[i + 1] + DISTANCE_VALUE3;
                }
                canvas.drawText(trendPointDesc[i / 2], trendPtsDraw[i] - trendPaint.measureText(trendPointDesc[i / 2]) / 2, textY, trendPaint);
                canvas.restoreToCount(canvasScaleCount);
            }
        }
    }
    canvas.restore();
    if (drawWeatherFlag && xCoordinateSigns != null) {
        for (int i = 0; i < trendPtsDraw.length; i += 2) {
            trendPaint.setAlpha(weatherTipPaint.weatherTipPaintAlphas.get(i / 2));
            canvas.drawText(xCoordinateSigns[i / 2], trendPtsDraw[i] - trendPaint.measureText(xCoordinateSigns[i / 2]) / 2, X_SIGN_Y, trendPaint);
            if (topPointDesc != null) {
                canvas.drawText((String) topPointDesc[i / 2][1], trendPtsDraw[i] - trendPaint.measureText((String) topPointDesc[i / 2][1]) / 2, X_SIGN_Y + WEATHER_VIEW_WIDTH_HEIGHT + TEXT_SIZE / 2f, trendPaint);
            }
        }
    }
}

[Buggy Hunk]
if ((textY = -trendPtsDraw[i + 1] - DISTANCE_VALUE1) < -(DEFAULT_HEIGHT - DEFAULT_TOP_PADDING + DEFAULT_BOTTOM_PADDING - DISTANCE_VALUE2 * DEFAULT_BOTTOM_PADDING)) {

[Patch]
if ((textY = -trendPtsDraw[i + 1] - DISTANCE_VALUE1) < -(DEFAULT_HEIGHT - DEFAULT_TOP_PADDING - DEFAULT_BOTTOM_PADDING)) {

[Demonstration 3]

[Buggy Method]
public Order updateItemToCart(Integer orderId, Integer itemId, Integer quantity) throws ContentNotFoundException, RequestFailException {
    Order order = (Order) Storage.read(ContentType.ORDER, orderId);
    if (order != null) {
        if (order.addItemToCart((Item) Storage.read(ContentType.ITEM, itemId), quantity)) {
            return order;
        } else {
            throw new RequestFailException("Resquest failed : abort. Please check parameters validity.");
        }
    } else {
        throw new ContentNotFoundException("The specified order does not exist");
    }
}

[Buggy Hunk]
return order;

[Patch]
return Storage.merge(ContentType.ORDER, order);