[Demonstration 1]

[Buggy Method]
public void updateUser(String email, Map<String, String> modifiedAttrs) {
    TypedQuery<User> query = em.createQuery("SELECT u FROM User u WHERE u.emailId = :email", User.class);
    User user = query.setParameter("email", email).getSingleResult();
    em.getTransaction().begin();
    for (Map.Entry<String, String> entry : modifiedAttrs.entrySet()) {
        if (entry.getKey().equals("address"))
            user.setAddress(entry.getValue());
        else if (entry.getKey().equals("city"))
            user.setCity(entry.getKey());
        else if (entry.getKey().equals("fName"))
            user.setFName(entry.getValue());
        else if (entry.getKey().equals("lName"))
            user.setLName(entry.getValue());
        else if (entry.getKey().equals("password"))
            user.setPassword(entry.getValue());
        else if (entry.getKey().equals("phone"))
            user.setPhone(entry.getValue());
        else if (entry.getKey().equals("zipCode"))
            user.setZipCode(entry.getValue());
    }
    em.getTransaction().commit();
    em.close();
}

[Buggy Hunk]
user.setCity(entry.getKey());

[Patch]
user.setCity(entry.getValue());

[Demonstration 2]

[Buggy Method]
@Override
public void createUser(Profile profile) {
    final String username = profile.getUuid();
    final String password = passwordEncoder.encode(RandomStringUtils.randomAlphanumeric(8));
    // Creates the user
    final Users user = new Users();
    user.setUsername(username);
    user.setPassword(password);
    user.setEnabled(Boolean.TRUE);
    // Creates the profile
    final UserProfile userProfile = new UserProfile();
    userProfile.setUserId(profile.getUuid());
    userProfile.setEmail(profile.getUserProfile().getEmail());
    userProfile.setFirstname(profile.getUserProfile().getFirstName());
    userProfile.setLastname(profile.getUserProfile().getLastName());
    userProfile.setName(profile.getUserProfile().getName());
    userProfile.setUsername(profile.getUserProfile().getUsername());
    userProfile.setImageUrl(profile.getImageUrl());
    userProfile.setSocialType(profile.getSocialType());
    // Creates the authority
    final Authority auth = new Authority();
    auth.setAuthority("ROLE_ADMIN");
    user.setUserProfile(userProfile);
    user.setAuthorities(new ArrayList<>(1));
    user.getAuthorities().add(auth);
    this.em.persist(user);
}

[Buggy Hunk]
auth.setAuthority("ROLE_ADMIN");

[Patch]
auth.setId(new AuthorityId(username, "ROLE_ADMIN"));

[Demonstration 3]

[Buggy Method]
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    mPresenter.result(requestCode, resultCode);
}

[Buggy Hunk]
mPresenter.result(requestCode, resultCode);

[Patch]
getPresenter().result(requestCode, resultCode);