[Demonstration 1]

[Buggy Method]
@Override
public int hashCode() {
    return name.hashCode();
}

[Buggy Hunk]
return name.hashCode();

[Patch]
return id.hashCode();

[Demonstration 2]

[Buggy Method]
@Override
protected void onResume() {
    super.onResume();
    String order = Utility.getOrderPreference(this);
    // update the location in our second pane using the fragment manager
    MoviesFragment mf = (MoviesFragment) getSupportFragmentManager().findFragmentById(R.id.fragment_container);
    if (null != mf) {
        if (TextUtils.equals(order, getString(R.string.pref_order_favorites))) {
            mf.initLoader();
        } else if (!TextUtils.equals(order, mOrder) || mOrder == null) {
            mf.fetchMovieList(order, 1, true);
        }
    }
    mOrder = order;
}

[Buggy Hunk]
} else if (!TextUtils.equals(order, mOrder) || mOrder == null) {

[Patch]
} else if (!TextUtils.equals(order, mOrder)) {

[Demonstration 3]

[Buggy Method]
@Test
void defineAnonymousClass() {
    Class<?> clazz = new SunUnsafeClassLoader().defineAnonymousClass(getClass(), CLASS_BYTES, new Object[0]);
    assertTrue(clazz.isAnonymousClass());
    assertEquals(getClass(), clazz.getEnclosingClass());
    assertNull(clazz.getName());
    testInstantiation(clazz);
}

[Buggy Hunk]
void defineAnonymousClass() {

[Patch]
void defineAnonymousClass() throws InstantiationException, IllegalAccessException {