[Demonstration 1]

[Buggy Method]
public void play(World world) {
    for (Player player : world.getPlayers()) User.toUser(player).play(this);
}

[Buggy Hunk]
for (Player player : world.getPlayers()) User.toUser(player).play(this);

[Patch]
for (Player player : world.getPlayers()) if (this.canSee(player.getLocation())) User.toUser(player).send(this.getPacket());

[Demonstration 2]

[Buggy Method]
public Assignment createAssignment(Assignment assignment) throws AssignmentStorageException, AssignmentAccessException, UserAccessException {
    Assignment auxAssignment = null;
    if (assignment.getId() == null) {
        auxAssignment = save(assignment);
        if (auxAssignment.getUser() != null) {
            User user = auxAssignment.getUser();
            mailService.sendEmail(user.getEmailAddress(), messageSource.getMessage("email.subject.new.assignment.assigned", null, LocaleContextHolder.getLocale()), messageSource.getMessage("email.message.new.assignment.assigned", new String[] { assignment.getAssignmentName() }, LocaleContextHolder.getLocale()));
        }
        mailService.sendEmailToAdminsWithAssignmentDetails(messageSource.getMessage("email.subject.new.assignment.created", null, LocaleContextHolder.getLocale()), messageSource.getMessage("email.message.new.assignment.created", null, LocaleContextHolder.getLocale()), assignment);
    }
    return auxAssignment;
}

[Buggy Hunk]
User user = auxAssignment.getUser();

[Patch]
User user = userService.findById(auxAssignment.getUser().getId());

[Demonstration 3]

[Buggy Method]
@Override
public void playMessage(String messageKey) {
    String message = messageSource.getMessage(messageKey, null, LocaleContextHolder.getLocale());
    super.playMessage(message);
}

[Buggy Hunk]
String message = messageSource.getMessage(messageKey, null, LocaleContextHolder.getLocale());

[Patch]
String message = messageSource.getMessage(messageKey, null, getLanguage().getLocale());