Buggy code:
public class SMAEditorArtifactEventManager implements IArtifactEventListener { List < ISMAEditorEventHandler > handlers = new CopyOnWriteArrayList < ISMAEditorEventHandler > ( ) ; static SMAEditorArtifactEventManager instance = new SMAEditorArtifactEventManager ( ) ; private SMAEditorArtifactEventManager ( ) { } public static void add ( ISMAEditorEventHandler iWorldEventHandler ) { } public static void remove ( ISMAEditorEventHandler iWorldEventHandler ) { } @ Override public List < ? extends IEventFilter > getEventFilters ( ) { } @ Override public void handleArtifactEvent ( final ArtifactEvent artifactEvent , Sender sender ) { } private void safelyProcessHandler ( final ArtifactEvent artifactEvent , final ISMAEditorEventHandler handler ) throws OseeCoreException { final AbstractWorkflowArtifact awa = handler . getSMAEditor ( ) . getAwa ( ) ; boolean refreshed = false ; if ( artifactEvent . isDeletedPurged ( awa ) ) { handler . getSMAEditor ( ) . closeEditor ( ) ; } else if ( ( ( ( ( workflowModifiedOrReloaded ( artifactEvent , awa ) ) || ( workflowRelationIsAddedChangedOrDeleted ( artifactEvent , awa ) ) ) || ( workflowActionIsModifedOrReloaded ( artifactEvent , awa ) ) ) || ( workflowActionRelationIsAddedChangedOrDeleted ( artifactEvent , awa ) ) ) || ( teamWorkflowParallelConfigurationChanged ( artifactEvent , awa ) ) ) { refreshed = true ; Displays . ensureInDisplayThread ( new Runnable ( ) { @ Override public void run ( ) { handler . getSMAEditor ( ) . refreshPages ( ) ; } } ) ; } else if ( isReloaded ( artifactEvent , awa ) ) { SMAEditor . close ( Collections . singleton ( awa ) , false ) ; if ( ! ( awa . isDeleted ( ) ) ) { SMAEditor . editArtifact ( awa ) ; } } if ( ( ( ! refreshed ) && ( awa . isTeamWorkflow ( ) ) ) && ( ReviewManager . hasReviews ( ( ( TeamWorkFlowArtifact ) ( awa ) ) ) ) ) { try { for ( AbstractReviewArtifact reviewArt : ReviewManager . getReviews ( ( ( TeamWorkFlowArtifact ) ( awa ) ) ) ) { if ( artifactEvent . isHasEvent ( reviewArt ) ) { refreshed = true ; Displays . ensureInDisplayThread ( new Runnable ( ) { @ Override public void run ( ) { handler . getSMAEditor ( ) . refreshPages ( ) ; } } ) ; break ; } } } catch ( Exception ex ) { } } if ( ( ( ! refreshed ) && ( awa . isTeamWorkflow ( ) ) ) && ( ( ( TeamWorkFlowArtifact ) ( awa ) ) . hasTaskArtifacts ( ) ) ) { try { for ( TaskArtifact taskArt : ( ( TeamWorkFlowArtifact ) ( awa ) ) . getTaskArtifactsFromCurrentState ( ) ) { if ( artifactEvent . isHasEvent ( taskArt ) ) { refreshed = true ; Displays . ensureInDisplayThread ( new Runnable ( ) { @ Override public void run ( ) { handler . getSMAEditor ( ) . refreshPages ( ) ; } } ) ; break ; } } } catch ( Exception ex ) { } } if ( ! refreshed ) { try { for ( TeamWorkFlowArtifact teamWf : ActionManager . getTeams ( awa . getParentActionArtifact ( ) ) ) { ActionArtifact parentAction = teamWf . getParentActionArtifact ( ) ; <START_BUG> if ( ( ! ( awa . equals ( teamWf ) ) ) && ( ( artifactEvent . isHasEvent ( teamWf ) ) || ( ( parentAction != null ) && ( artifactEvent . isRelAddedChangedDeleted ( parentAction ) ) ) ) ) { <END_BUG> refreshed = true ; Displays . ensureInDisplayThread ( new Runnable ( ) { @ Override public void run ( ) { handler . getSMAEditor ( ) . refreshPages ( ) ; } } ) ; return ; } } } catch ( Exception ex ) { } } } private boolean teamWorkflowParallelConfigurationChanged ( ArtifactEvent artifactEvent , AbstractWorkflowArtifact awa ) { } private boolean workflowActionRelationIsAddedChangedOrDeleted ( final ArtifactEvent artifactEvent , AbstractWorkflowArtifact awa ) { } private boolean workflowActionIsModifedOrReloaded ( ArtifactEvent artifactEvent , AbstractWorkflowArtifact awa ) { } private boolean workflowRelationIsAddedChangedOrDeleted ( final ArtifactEvent artifactEvent , AbstractWorkflowArtifact awa ) { } private boolean workflowModifiedOrReloaded ( final ArtifactEvent artifactEvent , AbstractWorkflowArtifact awa ) { } private boolean isReloaded ( ArtifactEvent artifactEvent , AbstractWorkflowArtifact sma ) { } }

Fix:
if ( ( ! ( awa . equals ( teamWf ) ) ) && ( ( artifactEvent . isHasEvent ( teamWf ) ) && ( ( parentAction != null ) && ( artifactEvent . isRelAddedChangedDeleted ( parentAction ) ) ) ) ) {