[Demonstration 1]

[Buggy Method]
@Override
public void detectAndSendChanges() {
    super.detectAndSendChanges();
    for (int i = 0; i < listeners.size(); ++i) {
        updateContainer(listeners.get(i));
    }
    cookCost = infuser.cookCost;
    cookTime = infuser.cookTime;
}

[Buggy Hunk]
updateContainer(listeners.get(i));

[Patch]
updateContainer(listeners.get(i), false);

[Demonstration 2]

[Buggy Method]
public void update() {
    this.borrow.setBorrowUntil(this.date3);
    try {
        this.oBorrowBean.update(this.borrow);
        getAll();
    } catch (final Exception e) {
        this.logger.error(e);
        this.exceptionHandler.showMessage(e);
    }
}

[Buggy Hunk]
this.oBorrowBean.update(this.borrow);

[Patch]
this.borrowService.update(this.borrow);

[Demonstration 3]

[Buggy Method]
void getKeyFromData(String result) {
    int index = result.indexOf("<paste_key>") + "<paste_key>".length();
    String s = "";
    while (result.charAt(index) != '<') {
        s += result.charAt(index++);
    }
    pasteKey = s;
    Log.d("TEST", pasteKey);
}

[Buggy Hunk]
while(result.charAt(index) != '<'){

[Patch]
while(index < result.length() && result.charAt(index) != '<'){