Program: 29608
Project: 29608
Buggy source:
public UnprocessedChangeEvents changed(PropertyChangeEvent[] propertyChangeEvents){
  if (logger.isLoggable(Level.FINE))   logger.fine("String_Node_Str" + spmd);
  StatsProviderRegistry spr=(spmd == null) ? null : spmd.getStatsProviderRegistry();
  if (logger.isLoggable(Level.FINE))   logger.fine("String_Node_Str" + spr);
  for (  PropertyChangeEvent event : propertyChangeEvents) {
    if (event == null)     continue;
    String propName=event.getPropertyName();
    Object oldVal=event.getOldValue();
    Object newVal=event.getNewValue();
    if (newVal == null || newVal.equals(oldVal))     continue;
    if (!ok(propName))     continue;
    if (event.getSource() instanceof ModuleMonitoringLevels) {
      String newEnabled=newVal.toString().toUpperCase();
      String oldEnabled=(oldVal == null) ? "String_Node_Str" : oldVal.toString().toUpperCase();
      if (logger.isLoggable(Level.FINE))       logger.log(Level.FINE,"String_Node_Str",new Object[]{propName,newEnabled,oldEnabled});
      if ((!newEnabled.equals(oldEnabled)) && (spr != null)) {
        handleLevelChange(propName,newEnabled);
      }
    }
 else     if (event.getSource() instanceof ContainerMonitoring) {
      ContainerMonitoring cm=(ContainerMonitoring)event.getSource();
      String newEnabled=newVal.toString().toUpperCase();
      String oldEnabled=(oldVal == null) ? "String_Node_Str" : oldVal.toString().toUpperCase();
      if (logger.isLoggable(Level.FINE))       logger.log(Level.FINE,"String_Node_Str",new Object[]{propName,newEnabled,oldEnabled});
      if ((!newEnabled.equals(oldEnabled)) && (spr != null)) {
        handleLevelChange(cm.getName(),newEnabled);
      }
    }
 else     if (event.getSource() instanceof MonitoringService) {
      boolean newEnabled=Boolean.parseBoolean(newVal.toString());
      boolean oldEnabled=(oldVal == null) ? !newEnabled : Boolean.parseBoolean(oldVal.toString());
      if (logger.isLoggable(Level.FINE))       logger.log(Level.FINE,"String_Node_Str",new Object[]{propName,newEnabled,oldEnabled});
      if (newEnabled != oldEnabled) {
        handleServiceChange(spr,propName,newEnabled);
      }
    }
  }
  return null;
}

Fixed version (ground truth):
public UnprocessedChangeEvents changed(PropertyChangeEvent[] propertyChangeEvents){
  if (logger.isLoggable(Level.FINE))   logger.fine("String_Node_Str" + spmd);
  StatsProviderRegistry spr=(spmd == null) ? null : spmd.getStatsProviderRegistry();
  if (logger.isLoggable(Level.FINE))   logger.fine("String_Node_Str" + spr);
  for (  PropertyChangeEvent event : propertyChangeEvents) {
    if (event == null)     continue;
    String propName=event.getPropertyName();
    Object oldVal=event.getOldValue();
    Object newVal=event.getNewValue();
    if (newVal == null || newVal.equals(oldVal))     continue;
    if (!ok(propName))     continue;
    if (event.getSource() instanceof ModuleMonitoringLevels) {
      String newEnabled=newVal.toString().toUpperCase(Locale.ENGLISH);
      String oldEnabled=(oldVal == null) ? "String_Node_Str" : oldVal.toString().toUpperCase(Locale.ENGLISH);
      if (logger.isLoggable(Level.FINE))       logger.log(Level.FINE,"String_Node_Str",new Object[]{propName,newEnabled,oldEnabled});
      if ((!newEnabled.equals(oldEnabled)) && (spr != null)) {
        handleLevelChange(propName,newEnabled);
      }
    }
 else     if (event.getSource() instanceof ContainerMonitoring) {
      ContainerMonitoring cm=(ContainerMonitoring)event.getSource();
      String newEnabled=newVal.toString().toUpperCase(Locale.ENGLISH);
      String oldEnabled=(oldVal == null) ? "String_Node_Str" : oldVal.toString().toUpperCase(Locale.ENGLISH);
      if (logger.isLoggable(Level.FINE))       logger.log(Level.FINE,"String_Node_Str",new Object[]{propName,newEnabled,oldEnabled});
      if ((!newEnabled.equals(oldEnabled)) && (spr != null)) {
        handleLevelChange(cm.getName(),newEnabled);
      }
    }
 else     if (event.getSource() instanceof MonitoringService) {
      boolean newEnabled=Boolean.parseBoolean(newVal.toString());
      boolean oldEnabled=(oldVal == null) ? !newEnabled : Boolean.parseBoolean(oldVal.toString());
      if (logger.isLoggable(Level.FINE))       logger.log(Level.FINE,"String_Node_Str",new Object[]{propName,newEnabled,oldEnabled});
      if (newEnabled != oldEnabled) {
        handleServiceChange(spr,propName,newEnabled);
      }
    }
  }
  return null;
}