Buggy code:
public abstract class Application { public static final String CONFIGURATION = "configuration" ; public static final String CONTEXTPATH = "contextpath" ; public static final String DEPLOYMENT = "deployment" ; public static final String DEVELOPMENT = "development" ; private static final Map < String , Application > applicationKeyToApplication = new HashMap < String , Application > ( 1 ) ; private static final ThreadLocal < Application > current = new ThreadLocal < Application > ( ) ; private static final Logger log = LoggerFactory . getLogger ( Application . class ) ; public static Application get ( ) { } public static Application get ( String applicationKey ) { } public static void set ( final Application application ) { } public static void unset ( ) { } private IComponentInstantiationListener [ ] componentInstantiationListeners = new IComponentInstantiationListener [ 0 ] ; private String configurationType ; private List < IInitializer > initializers = new ArrayList < IInitializer > ( ) ; private final MarkupCache markupCache ; private MetaDataEntry [ ] metaData ; private final String name ; private IRequestLogger requestLogger ; private ISessionStore sessionStore ; private Settings settings ; private boolean settingsAccessible ; private final SharedResources sharedResources ; public Application ( ) { } public final void addComponentInstantiationListener ( final IComponentInstantiationListener listener ) { if ( listener == null ) { throw new IllegalArgumentException ( "argument<seq2seq4repair_space>listener<seq2seq4repair_space>may<seq2seq4repair_space>not<seq2seq4repair_space>be<seq2seq4repair_space>null" ) ; } for ( IComponentInstantiationListener element : componentInstantiationListeners ) { <START_BUG> if ( listener == element ) { <END_BUG> return ; } } final IComponentInstantiationListener [ ] newListeners = new IComponentInstantiationListener [ ( componentInstantiationListeners . length ) + 1 ] ; System . arraycopy ( componentInstantiationListeners , 0 , newListeners , 0 , componentInstantiationListeners . length ) ; newListeners [ componentInstantiationListeners . length ] = listener ; componentInstantiationListeners = newListeners ; } public final void configure ( final String configurationType ) { } public final void configure ( final String configurationType , final IResourceFinder resourceFinder ) { } public final void configure ( final String configurationType , final String resourceFolder ) { } public abstract String getApplicationKey ( ) { } public IApplicationSettings getApplicationSettings ( ) { } public String getConfigurationType ( ) { } public IDebugSettings getDebugSettings ( ) { } public IFrameworkSettings getFrameworkSettings ( ) { } public abstract Class < ? extends Page > getHomePage ( ) { } public final MarkupCache getMarkupCache ( ) { } public IMarkupSettings getMarkupSettings ( ) { } public final < T extends Serializable > T getMetaData ( final MetaDataKey < T > key ) { } public final String getName ( ) { } public IPageSettings getPageSettings ( ) { } public IRequestCycleSettings getRequestCycleSettings ( ) { } public final IRequestLogger getRequestLogger ( ) { } protected IRequestLogger newRequestLogger ( ) { } public IResourceSettings getResourceSettings ( ) { } public IRequestLoggerSettings getRequestLoggerSettings ( ) { } public ISecuritySettings getSecuritySettings ( ) { } public ISessionSettings getSessionSettings ( ) { } public final ISessionStore getSessionStore ( ) { } public final SharedResources getSharedResources ( ) { } public final void initializeComponents ( ) { } public final void removeComponentInstantiationListener ( final IComponentInstantiationListener listener ) { } public void sessionDestroyed ( String sessionId ) { } public final synchronized < M extends Serializable > void setMetaData ( final MetaDataKey < M > key , final M object ) { } protected void destroy ( ) { } protected abstract ISessionFactory getSessionFactory ( ) { } protected void init ( ) { } protected void internalDestroy ( ) { } protected void internalInit ( ) { } protected abstract ISessionStore newSessionStore ( ) { } final void notifyComponentInstantiationListeners ( final Component component ) { } private final void addInitializer ( String className ) { } private final void callDestroyers ( ) { } private final void callInitializers ( ) { } private Settings getSettings ( ) { } private final void load ( final Properties properties ) { } }

Fix:
if ( listener . equals ( element ) ) {