[Demonstration 1]

[Buggy Method]
List<Listener> listeners(String event) {
    LinkedList<Listener> callbacks = this.callbacks.get(event);
    return callbacks != null ? new ArrayList<>(callbacks) : new ArrayList<>(0);
}

[Buggy Hunk]
new ArrayList<>(callbacks) : new ArrayList<>(0);

[Patch]
new ArrayList<Listener>(callbacks) : new ArrayList<Listener>(0);

[Demonstration 2]

[Buggy Method]
public void actionPerformed(ActionEvent e) {
    if (e.getSource() == reset) {
        deck = new Deck();
        user.played = new ArrayList<>();
        house.played = new ArrayList<>();
    } else {
        if (!(deck.draw() == null)) {
            user.add(deck.draw());
            if (house.sum() < 17) {
                house.add(deck.draw());
            }
        }
    }
    update();
}

[Buggy Hunk]
if (!(deck.draw() == null)) {

[Patch]
if (!deck.cards.isEmpty()) {

[Demonstration 3]

[Buggy Method]
private void moveDown() {
    if (focused != -1 && focused != l.size() - 1) {
        tasks.moveDown(focused);
        setFocus(focused, false);
        focused++;
        update();
        //setFocus(focused, true);
    } else if (focused == -1)
        Util.message(getResources().getString(R.string.lv_please_select), this);
    else
        Util.message(getResources().getString(R.string.lv_cant_down), this);
}

[Buggy Hunk]
if (focused != -1 && focused != l.size() - 1) {

[Patch]
if (focused != -1 && focused != tasks.size() - 1) {