Program: 79046
Project: 79046
Buggy source:
protected boolean isOKPressed(Object model){
  if (model instanceof IStructuredSelection) {
    for (Iterator itor=((IStructuredSelection)model).iterator(); itor.hasNext(); ) {
      Object obj=itor.next();
      if (!isOKPressed(obj)) {
        return false;
      }
    }
    return true;
  }
 else   if (model instanceof DesignElementHandle) {
    DesignElementHandle handle=(DesignElementHandle)model;
    if (handle instanceof ParameterGroupHandle) {
      if (((ParameterGroupHandle)handle).getParameters().getCount() > 0) {
        if (!MessageDialog.openQuestion(PlatformUI.getWorkbench().getDisplay().getActiveShell(),CONFIRM_PARAM_DELETE_TITLE,CONFIRM_PARAM_DELETE_MESSAGE)) {
          return false;
        }
      }
    }
    ArrayList referenceList=new ArrayList();
    for (Iterator itor=handle.clientsIterator(); itor.hasNext(); ) {
      referenceList.add(itor.next());
    }
    if (!referenceList.isEmpty()) {
      DeleteWarningDialog dialog=new DeleteWarningDialog(PlatformUI.getWorkbench().getDisplay().getActiveShell(),DLG_REFERENCE_FOUND_TITLE,referenceList);
      dialog.setPreString(DEUtil.getDisplayLabel(handle) + DLG_HAS_FOLLOWING_CLIENTS_MSG);
      dialog.setSufString(DLG_CONFIRM_MSG);
      return dialog.open() != Dialog.CANCEL;
    }
    return true;
  }
  return true;
}

Fixed version (ground truth):
protected boolean isOKPressed(Object model){
  if (model instanceof IStructuredSelection) {
    for (Iterator itor=((IStructuredSelection)model).iterator(); itor.hasNext(); ) {
      Object obj=itor.next();
      if (!isOKPressed(obj)) {
        return false;
      }
    }
    return true;
  }
 else   if (model instanceof DesignElementHandle) {
    DesignElementHandle handle=(DesignElementHandle)model;
    if (handle instanceof ParameterGroupHandle) {
      if (((ParameterGroupHandle)handle).getParameters().getCount() > 0) {
        if (!MessageDialog.openQuestion(PlatformUI.getWorkbench().getDisplay().getActiveShell(),CONFIRM_PARAM_DELETE_TITLE,CONFIRM_PARAM_DELETE_MESSAGE)) {
          return false;
        }
        for (Iterator iter=((ParameterGroupHandle)handle).getParameters().iterator(); iter.hasNext(); ) {
          Object obj=iter.next();
          if (obj instanceof ParameterHandle) {
            ParameterHandle parameter=(ParameterHandle)obj;
            ConfigVariable cv=parameter.getModuleHandle().findConfigVariable(parameter.getName());
            try {
              if (cv != null) {
                parameter.getModuleHandle().getPropertyHandle(ReportDesignHandle.CONFIG_VARS_PROP).removeItem(cv);
              }
            }
 catch (            SemanticException e) {
              ExceptionHandler.handle(e);
            }
          }
        }
      }
    }
    ArrayList referenceList=new ArrayList();
    for (Iterator itor=handle.clientsIterator(); itor.hasNext(); ) {
      referenceList.add(itor.next());
    }
    if (!referenceList.isEmpty()) {
      DeleteWarningDialog dialog=new DeleteWarningDialog(PlatformUI.getWorkbench().getDisplay().getActiveShell(),DLG_REFERENCE_FOUND_TITLE,referenceList);
      dialog.setPreString(DEUtil.getDisplayLabel(handle) + DLG_HAS_FOLLOWING_CLIENTS_MSG);
      dialog.setSufString(DLG_CONFIRM_MSG);
      return dialog.open() != Dialog.CANCEL;
    }
    return true;
  }
  return true;
}