nus-yam/ex-repair huggingface dataset:
Program: 77495
Project: 77495
Buggy source:
public void testJointDataSetType() throws Exception {
  openDesign(filename1);
  JointDataSetHandle jointds1=designHandle.findJointDataSet("String_Node_Str");
  jointds1.addDataSet("String_Node_Str");
  jointds1.addDataSet("String_Node_Str");
  assertEquals(2,jointds1.getListProperty(JointDataSet.DATA_SETS_PROP).size());
  JointDataSetHandle jointds2=designHandle.findJointDataSet("String_Node_Str");
  jointds2.addDataSet("String_Node_Str");
  jointds2.addDataSet("String_Node_Str");
  assertEquals(2,jointds2.getListProperty(JointDataSet.DATA_SETS_PROP).size());
  JointDataSetHandle jointds3=designHandle.findJointDataSet("String_Node_Str");
  jointds3.addDataSet("String_Node_Str");
  assertEquals(1,jointds3.getListProperty(JointDataSet.DATA_SETS_PROP).size());
  Iterator joinConditionsIterator=jointds3.joinConditionsIterator();
  JoinConditionHandle joinConditionHandle=(JoinConditionHandle)joinConditionsIterator.next();
  joinConditionHandle.setLeftDataSet("String_Node_Str");
  joinConditionHandle.setLeftDataSet("String_Node_Str");
}

Fixed version (ground truth):
public void testJointDataSetType() throws Exception {
  openDesign(filename1);
  JointDataSetHandle jointds1=designHandle.findJointDataSet("String_Node_Str");
  jointds1.addDataSet("String_Node_Str");
  jointds1.addDataSet("String_Node_Str");
  assertEquals(2,jointds1.getListProperty(JointDataSet.DATA_SETS_PROP).size());
  JointDataSetHandle jointds2=designHandle.findJointDataSet("String_Node_Str");
  jointds2.addDataSet("String_Node_Str");
  jointds2.addDataSet("String_Node_Str");
  assertEquals(2,jointds2.getListProperty(JointDataSet.DATA_SETS_PROP).size());
  JointDataSetHandle jointds3=designHandle.findJointDataSet("String_Node_Str");
  jointds3.addDataSet("String_Node_Str");
  assertEquals(1,jointds3.getListProperty(JointDataSet.DATA_SETS_PROP).size());
}
Program: 77496
Project: 77496
Buggy source:
/** 
 * Gets symbolic name of this module if defined. This property is needed when search resources in fragments. Usually it should be the plug-in id of the host plug-in.
 * @return 
 */
public String getSymbolicName(){
  return this.getStringProperty(SYMBOLIC_NAME_PROP);
}

Fixed version (ground truth):
/** 
 * Gets symbolic name of this module if defined. This property is needed when search resources in fragments. Usually it should be the plug-in id of the host plug-in.
 * @return
 */
public String getSymbolicName(){
  return this.getStringProperty(SYMBOLIC_NAME_PROP);
}
Program: 77497
Project: 77497
Buggy source:
/** 
 * Reloads all libraries this module included. <p> Call this method cautiously ONLY on the condition that the library file is REALLY changed outside. After reload successfully, the command stack is cleared.  {@link #reloadLibrary(LibraryHandle)}
 * @throws SemanticException 
 * @throws DesignFileException 
 */
public void reloadLibraries() throws SemanticException, DesignFileException {
  for (Iterator iter=getLibraries().iterator(); iter.hasNext(); ) {
    LibraryHandle library=(LibraryHandle)iter.next();
    reloadLibrary(library);
  }
}

Fixed version (ground truth):
/** 
 * Reloads all libraries this module included. <p> Call this method cautiously ONLY on the condition that the library file is REALLY changed outside. After reload successfully, the command stack is cleared.  {@link #reloadLibrary(LibraryHandle)}
 * @throws SemanticException
 * @throws DesignFileException
 */
public void reloadLibraries() throws SemanticException, DesignFileException {
  for (Iterator iter=getLibraries().iterator(); iter.hasNext(); ) {
    LibraryHandle library=(LibraryHandle)iter.next();
    reloadLibrary(library);
  }
}
Program: 77498
Project: 77498
Buggy source:
/** 
 * Sets symbolic name of this module. This property is needed when search resources in fragments. Usually it should be the plug-in id of the host plug-in.
 * @param symbolicName 
 * @throws SemanticException 
 */
public void setSymbolicName(String symbolicName) throws SemanticException {
  setStringProperty(SYMBOLIC_NAME_PROP,symbolicName);
}

Fixed version (ground truth):
/** 
 * Sets symbolic name of this module. This property is needed when search resources in fragments. Usually it should be the plug-in id of the host plug-in.
 * @param symbolicName
 * @throws SemanticException
 */
public void setSymbolicName(String symbolicName) throws SemanticException {
  setStringProperty(SYMBOLIC_NAME_PROP,symbolicName);
}
Program: 77499
Project: 77499
Buggy source:
public boolean isDelete(){
  boolean bool=false;
  if (getModel() instanceof DesignElementHandle) {
    if (!(getModel() instanceof ModuleHandle)) {
      bool=((DesignElementHandle)getModel()).getContainer() == null;
    }
  }
  return bool;
}

Fixed version (ground truth):
public boolean isDelete(){
  boolean bool=false;
  if (getModel() instanceof DesignElementHandle) {
    if (!(getModel() instanceof ModuleHandle)) {
      bool=((DesignElementHandle)getModel()).getContainer() == null || ((DesignElementHandle)getModel()).getRoot() == null;
    }
  }
  return bool;
}
Program: 77500
Project: 77500
Buggy source:
private boolean matchType(ResultSetColumnHandle column){
  if (style.equals(DesignChoiceConstants.PARAM_TYPE_STRING) || DesignChoiceConstants.COLUMN_DATA_TYPE_ANY.equals(column.getDataType())) {
    return true;
  }
  if (DesignChoiceConstants.COLUMN_DATA_TYPE_DATETIME.equals(column.getDataType())) {
    return style.equals(DesignChoiceConstants.PARAM_TYPE_DATETIME);
  }
 else   if (DesignChoiceConstants.COLUMN_DATA_TYPE_DECIMAL.equals(column.getDataType())) {
    return style.equals(DesignChoiceConstants.PARAM_TYPE_DECIMAL);
  }
 else   if (DesignChoiceConstants.COLUMN_DATA_TYPE_FLOAT.equals(column.getDataType())) {
    return style.equals(DesignChoiceConstants.PARAM_TYPE_FLOAT);
  }
 else   if (DesignChoiceConstants.COLUMN_DATA_TYPE_INTEGER.equals(column.getDataType())) {
    return style.equals(DesignChoiceConstants.PARAM_TYPE_FLOAT) || style.equals(DesignChoiceConstants.PARAM_TYPE_DECIMAL);
  }
  return false;
}

Fixed version (ground truth):
private boolean matchType(ResultSetColumnHandle column){
  if (style.equals(DesignChoiceConstants.PARAM_TYPE_STRING) || DesignChoiceConstants.COLUMN_DATA_TYPE_ANY.equals(column.getDataType())) {
    return true;
  }
  if (DesignChoiceConstants.COLUMN_DATA_TYPE_DATETIME.equals(column.getDataType())) {
    return style.equals(DesignChoiceConstants.PARAM_TYPE_DATETIME);
  }
 else   if (DesignChoiceConstants.COLUMN_DATA_TYPE_DECIMAL.equals(column.getDataType())) {
    return style.equals(DesignChoiceConstants.PARAM_TYPE_DECIMAL) || style.equals(DesignChoiceConstants.PARAM_TYPE_INTEGER);
  }
 else   if (DesignChoiceConstants.COLUMN_DATA_TYPE_FLOAT.equals(column.getDataType())) {
    return style.equals(DesignChoiceConstants.PARAM_TYPE_FLOAT);
  }
 else   if (DesignChoiceConstants.COLUMN_DATA_TYPE_INTEGER.equals(column.getDataType())) {
    return style.equals(DesignChoiceConstants.PARAM_TYPE_INTEGER);
  }
  return false;
}
Program: 77501
Project: 77501
Buggy source:
private String format(String string){
  if (canBeNull() && string == null) {
    return LABEL_NULL;
  }
  if (StringUtil.isBlank(string) || formatCategroy == null) {
    return string;
  }
  try {
    String pattern=formatPattern;
    if (formatPattern == null) {
      if (DesignChoiceConstants.STRING_FORMAT_TYPE_CUSTOM.equals(formatCategroy) || DesignChoiceConstants.DATETIEM_FORMAT_TYPE_CUSTOM.equals(formatCategroy) || DesignChoiceConstants.NUMBER_FORMAT_TYPE_CUSTOM.equals(formatCategroy)) {
        return string;
      }
      pattern=formatCategroy;
    }
    if (DesignChoiceConstants.PARAM_TYPE_DATETIME.equals(getSelectedDataType())) {
      DateFormatter formatter=new DateFormatter(STANDARD_DATE_TIME_PATTERN);
      Date date=formatter.parse(string);
      formatter.applyPattern(pattern);
      string=formatter.format(date);
    }
 else     if (DesignChoiceConstants.PARAM_TYPE_FLOAT.equals(getSelectedDataType())) {
      string=new NumberFormatter(pattern).format(DataTypeUtil.toDouble(string).doubleValue());
    }
 else     if (DesignChoiceConstants.PARAM_TYPE_DECIMAL.equals(getSelectedDataType())) {
      string=new NumberFormatter(pattern).format(DataTypeUtil.toBigDecimal(string));
    }
 else     if (DesignChoiceConstants.PARAM_TYPE_STRING.equals(getSelectedDataType())) {
      string=new StringFormatter(pattern).format(string);
    }
  }
 catch (  BirtException e) {
  }
catch (  ParseException e) {
  }
  return string;
}

Fixed version (ground truth):
private String format(String string){
  if (canBeNull() && string == null) {
    return LABEL_NULL;
  }
  if (StringUtil.isBlank(string) || formatCategroy == null) {
    return string;
  }
  try {
    String pattern=formatPattern;
    if (formatPattern == null) {
      if (DesignChoiceConstants.STRING_FORMAT_TYPE_CUSTOM.equals(formatCategroy) || DesignChoiceConstants.DATETIEM_FORMAT_TYPE_CUSTOM.equals(formatCategroy) || DesignChoiceConstants.NUMBER_FORMAT_TYPE_CUSTOM.equals(formatCategroy)) {
        return string;
      }
      pattern=formatCategroy;
    }
    if (DesignChoiceConstants.PARAM_TYPE_DATETIME.equals(getSelectedDataType())) {
      Date date=DataTypeUtil.toDate(string,ULocale.US);
      DateFormatter formatter=new DateFormatter(pattern);
      string=formatter.format(date);
    }
 else     if (DesignChoiceConstants.PARAM_TYPE_FLOAT.equals(getSelectedDataType())) {
      string=new NumberFormatter(pattern).format(DataTypeUtil.toDouble(string).doubleValue());
    }
 else     if (DesignChoiceConstants.PARAM_TYPE_DECIMAL.equals(getSelectedDataType())) {
      string=new NumberFormatter(pattern).format(DataTypeUtil.toBigDecimal(string));
    }
 else     if (DesignChoiceConstants.PARAM_TYPE_STRING.equals(getSelectedDataType())) {
      string=new StringFormatter(pattern).format(string);
    }
  }
 catch (  BirtException e) {
  }
  return string;
}
Program: 77502
Project: 77502
Buggy source:
private String convertToStandardFormat(String string){
  if (string != null && DesignChoiceConstants.PARAM_TYPE_DATETIME.equals(getSelectedDataType())) {
    try {
      string=new DateFormatter(STANDARD_DATE_TIME_PATTERN).format(DataTypeUtil.toDate(string,ULocale.US));
    }
 catch (    BirtException e) {
    }
  }
  return string;
}

Fixed version (ground truth):
private String convertToStandardFormat(String string){
  if (string != null && DesignChoiceConstants.PARAM_TYPE_DATETIME.equals(getSelectedDataType())) {
    try {
      string=new DateFormatter(STANDARD_DATE_TIME_PATTERN,ULocale.US).format(DataTypeUtil.toDate(string,ULocale.US));
    }
 catch (    BirtException e) {
    }
  }
  return string;
}
Program: 77503
Project: 77503
Buggy source:
private boolean isDefaultChoice(SelectionChoice choice){
  String choiceValue=choice.getValue();
  String defaultValue=convertToStandardFormat(this.defaultValue);
{
    if (canBeNull() && choiceValue == null && defaultValue == null) {
      return true;
    }
    return choiceValue != null && isEqual(choiceValue,defaultValue);
  }
}

Fixed version (ground truth):
private boolean isDefaultChoice(SelectionChoice choice){
  String choiceValue=choice.getValue();
  String defaultValue=convertToStandardFormat(this.defaultValue);
  if (canBeNull() && choiceValue == null && defaultValue == null) {
    return true;
  }
  return choiceValue != null && isEqual(choiceValue,defaultValue);
}
Program: 77504
Project: 77504
Buggy source:
/** 
 * @param request
 */
protected void handlerLoadMasterPage(ReportRequest request){
  Object handle=request.getSelectionModelList().get(0);
  if (getGraphicalViewer().getContents().getModel() != handle) {
    getGraphicalViewer().setContents(handle);
  }
}

Fixed version (ground truth):
/** 
 * @param request
 */
protected void handlerLoadMasterPage(ReportRequest request){
  Object handle=request.getSelectionModelList().get(0);
  if (getGraphicalViewer().getContents().getModel() != handle) {
    getGraphicalViewer().setContents(handle);
    hookModelEventManager(handle);
  }
}
Program: 77505
Project: 77505
Buggy source:
/** 
 * Hook the root.
 * @param obj
 */
public void hookRoot(Object obj){
  if (root == obj) {
    return;
  }
  unhookRoot(root);
  listenerList.clear();
  if (obj instanceof DesignElementHandle) {
    getListenerElementVisitor().addListener((DesignElementHandle)obj);
  }
  this.root=obj;
}

Fixed version (ground truth):
/** 
 * Hook the root.
 * @param obj
 */
public void hookRoot(Object obj){
  if (root == obj) {
    return;
  }
  unhookRoot(root);
  if (obj instanceof DesignElementHandle) {
    getListenerElementVisitor().addListener(((DesignElementHandle)obj).getModuleHandle());
  }
  this.root=obj;
}
Program: 77506
Project: 77506
Buggy source:
/** 
 * @param focus
 * @param info
 */
protected void contentChange(Object focus,Map info){
  if (getViewer() == null || !getViewer().getControl().isVisible()) {
    return;
  }
  Object obj=getViewer().getEditPartRegistry().get(focus);
  if (obj instanceof ReportElementEditPart && !((ReportElementEditPart)obj).isDelete()) {
    ((ReportElementEditPart)obj).contentChange(info);
    return;
  }
  List temp=new ArrayList();
  getEditPartsFormModel(this,focus,temp);
  int size=temp.size();
  for (int i=0; i < size; i++) {
    Object part=temp.get(i);
    if (part instanceof ReportElementEditPart && !((ReportElementEditPart)part).isDelete()) {
      ((ReportElementEditPart)part).contentChange(info);
    }
  }
}

Fixed version (ground truth):
/** 
 * @param focus
 * @param info
 */
protected void contentChange(Object focus,Map info){
  if (getViewer() == null) {
    return;
  }
  Object obj=getViewer().getEditPartRegistry().get(focus);
  if (obj instanceof ReportElementEditPart && !((ReportElementEditPart)obj).isDelete()) {
    ((ReportElementEditPart)obj).contentChange(info);
    return;
  }
  List temp=new ArrayList();
  getEditPartsFormModel(this,focus,temp);
  int size=temp.size();
  for (int i=0; i < size; i++) {
    Object part=temp.get(i);
    if (part instanceof ReportElementEditPart && !((ReportElementEditPart)part).isDelete()) {
      ((ReportElementEditPart)part).contentChange(info);
    }
  }
}
Program: 77507
Project: 77507
Buggy source:
/** 
 * @param focus
 * @param info
 */
protected void propertyChange(Object focus,Map info){
  Object obj=getViewer().getEditPartRegistry().get(focus);
  if (obj instanceof ReportElementEditPart && !((ReportElementEditPart)obj).isDelete()) {
    ((ReportElementEditPart)obj).propertyChange(info);
    return;
  }
  List temp=new ArrayList();
  getEditPartsFormModel(this,focus,temp);
  int size=temp.size();
  for (int i=0; i < size; i++) {
    Object part=temp.get(i);
    if (part instanceof ReportElementEditPart && !((ReportElementEditPart)part).isDelete()) {
      ((ReportElementEditPart)part).propertyChange(info);
    }
  }
}

Fixed version (ground truth):
/** 
 * @param focus
 * @param info
 */
protected void propertyChange(Object focus,Map info){
  if (getViewer() == null) {
    return;
  }
  Object obj=getViewer().getEditPartRegistry().get(focus);
  if (obj instanceof ReportElementEditPart && !((ReportElementEditPart)obj).isDelete()) {
    ((ReportElementEditPart)obj).propertyChange(info);
    return;
  }
  List temp=new ArrayList();
  getEditPartsFormModel(this,focus,temp);
  int size=temp.size();
  for (int i=0; i < size; i++) {
    Object part=temp.get(i);
    if (part instanceof ReportElementEditPart && !((ReportElementEditPart)part).isDelete()) {
      ((ReportElementEditPart)part).propertyChange(info);
    }
  }
}
Program: 77508
Project: 77508
Buggy source:
public void run(){
  runModelChange();
  notifyModelChange(getFocus());
}

Fixed version (ground truth):
public void run(){
  if (isDispose()) {
    return;
  }
  runModelChange();
  notifyModelChange(getFocus());
}
Program: 77509
Project: 77509
Buggy source:
private boolean isEqual(String value1,String value2){
  Object v1=null;
  Object v2=null;
  try {
    v1=getValue(value1);
    v2=getValue(value2);
  }
 catch (  BirtException e) {
  }
  if (v1 == null) {
    return v2 == null;
  }
  if (v1 instanceof Double && v2 instanceof Double) {
    return ((Double)v1).compareTo(v2) == 0;
  }
  if (v1 instanceof BigDecimal && v2 instanceof BigDecimal) {
    return ((BigDecimal)v1).compareTo(v2) == 0;
  }
  if (v1 instanceof Integer && v2 instanceof Integer) {
    return ((Integer)v1).compareTo(v2) == 0;
  }
  return v1.equals(v2);
}

Fixed version (ground truth):
private boolean isEqual(String value1,String value2){
  Object v1=null;
  Object v2=null;
  try {
    v1=getValue(value1);
    v2=getValue(value2);
  }
 catch (  BirtException e) {
  }
  if (v1 == null) {
    return v2 == null;
  }
  if (v1 instanceof Double && v2 instanceof Double) {
    return ((Double)v1).compareTo((Double)v2) == 0;
  }
  if (v1 instanceof BigDecimal && v2 instanceof BigDecimal) {
    return ((BigDecimal)v1).compareTo((BigDecimal)v2) == 0;
  }
  if (v1 instanceof Integer && v2 instanceof Integer) {
    return ((Integer)v1).compareTo((Integer)v2) == 0;
  }
  return v1.equals(v2);
}
Program: 77510
Project: 77510
Buggy source:
private int getErrorLIine(){
  IEditorInput input=getEditorInput();
  if (!(input instanceof IPathEditorInput)) {
    return 0;
  }
  IPath path=((IPathEditorInput)input).getPath();
  try {
    if (path.toOSString().endsWith(IReportEditorContants.LIBRARY_FILE_EXTENTION)) {
      try {
        SessionHandleAdapter.getInstance().getSessionHandle().openLibrary(path.toOSString());
      }
 catch (      DesignFileException e) {
        return getExpetionErrorLine(e);
      }
    }
 else {
      try {
        SessionHandleAdapter.getInstance().getSessionHandle().openDesign(path.toOSString(),new FileInputStream(path.toFile()));
      }
 catch (      DesignFileException e) {
        return getExpetionErrorLine(e);
      }
    }
  }
 catch (  FileNotFoundException e) {
    return 0;
  }
  return -1;
}

Fixed version (ground truth):
private int getErrorLIine(){
  IEditorInput input=getEditorInput();
  if (!(input instanceof IPathEditorInput)) {
    return 0;
  }
  IPath path=((IPathEditorInput)input).getPath();
  try {
    if (path.toOSString().endsWith(IReportEditorContants.LIBRARY_FILE_EXTENTION)) {
      LibraryHandle library=null;
      try {
        library=SessionHandleAdapter.getInstance().getSessionHandle().openLibrary(path.toOSString());
      }
 catch (      DesignFileException e) {
        return getExpetionErrorLine(e);
      }
 finally {
        if (library != null) {
          library.close();
        }
      }
    }
 else {
      ReportDesignHandle report=null;
      try {
        report=SessionHandleAdapter.getInstance().getSessionHandle().openDesign(path.toOSString(),new FileInputStream(path.toFile()));
      }
 catch (      DesignFileException e) {
        return getExpetionErrorLine(e);
      }
 finally {
        if (report != null) {
          report.close();
        }
      }
    }
  }
 catch (  FileNotFoundException e) {
    return 0;
  }
  return -1;
}
Program: 77511
Project: 77511
Buggy source:
/** 
 * Returns if the property need to be hiden under some cases.
 * @param propName the property name to check
 * @return true if the property need to be hiden under some cases, falseotherwise.
 */
private boolean needHide(String propName){
}

Fixed version (ground truth):
/** 
 * Returns if the property need to be hiden under some cases.
 * @param propName the property name to check
 * @return true if the property need to be hiden under some cases, falseotherwise.
 */
private boolean needHide(String propName){
  if (!(ReportItemHandle.BOOKMARK_PROP.equals(propName) || ReportItemHandle.TOC_PROP.equals(propName) || StyleHandle.PAGE_BREAK_AFTER_PROP.equals(propName)|| StyleHandle.PAGE_BREAK_BEFORE_PROP.equals(propName)|| CellHandle.DROP_PROP.equals(propName)))   return false;
  for (int i=0; i < elements.size(); i++) {
    DesignElementHandle current=((DesignElementHandle)elements.get(i));
    DesignElementHandle container=current.getContainer();
    if (CellHandle.DROP_PROP.equals(propName)) {
      if (current instanceof CellHandle) {
        if (container == null) {
          continue;
        }
        if (!(container.getContainer() instanceof GroupHandle))         return true;
      }
    }
 else {
      while (container != null) {
        if (container instanceof MasterPageHandle)         return true;
        container=container.getContainer();
      }
    }
  }
  return false;
}
Program: 77512
Project: 77512
Buggy source:
public void write(byte b[],int off,int len) throws IOException {
  while (len > 0) {
    int ret=currentBuffer.write(b,off,len);
    len-=ret;
    off+=ret;
    if (len > 0)     currentBuffer=getBuffer(currentBuffer.getOffset() + IOUtil.RA_STREAM_BUFFER_LENGTH);
  }
}

Fixed version (ground truth):
public void write(byte b[],int off,int len) throws IOException {
  while (len > 0) {
    int ret=currentBuffer.write(b,off,len);
    len-=ret;
    off+=ret;
    if (len > 0) {
      currentBuffer=getBuffer(currentBuffer.getOffset() + IOUtil.RA_STREAM_BUFFER_LENGTH);
      currentBuffer.setBufCur(0);
    }
  }
}
Program: 77513
Project: 77513
Buggy source:
/** 
 * Reloads the library with the given library file path. If the library already is included, reload it. If the library is not included, exception will be thrown. <p> Call this method cautiously ONLY on the condition that the library file is REALLY changed outside. After reload successfully, the command stack is cleared.
 * @param libraryToReload the library instance
 * @throws SemanticException if error is encountered when handling <code>IncludeLibrary</code> structure list. Or it maybe because that the given library is not found in the design. Or that the library has descedents in the current module
 * @throws DesignFileException if the library file is not found, or has fatal error.
 */
public void reloadLibrary(LibraryHandle libraryToReload) throws SemanticException, DesignFileException {
  if (libraryToReload == null)   return;
  LibraryCommand command=new LibraryCommand(module);
  command.reloadLibrary(libraryToReload.getLocation());
}

Fixed version (ground truth):
/** 
 * Reloads the library with the given library file path. If the library already is included directly or indirectly(that is, the reload path could be the path of grandson of this module), reload it. If the library is not included, exception will be thrown. <p> Call this method cautiously ONLY on the condition that the library file is REALLY changed outside. After reload successfully, the command stack is cleared.
 * @param reloadPath this is supposed to be an absolute path, not in url form.
 * @throws SemanticException if error is encountered when handling <code>IncludeLibrary</code> structure list. Or it maybe because that the given library is not found in the design. Or that the library has descedents in the current module
 * @throws DesignFileException if the library file is not found, or has fatal error.
 */
public void reloadLibrary(String reloadPath) throws SemanticException, DesignFileException {
  if (StringUtil.isEmpty(reloadPath))   return;
  String path=null;
  try {
    path=new File(reloadPath).toURL().toString();
  }
 catch (  MalformedURLException e) {
    DesignParserException ex=new DesignParserException(new String[]{path},DesignParserException.DESIGN_EXCEPTION_FILE_NOT_FOUND);
    List exceptionList=new ArrayList();
    exceptionList.add(ex);
    throw new DesignFileException(path,exceptionList);
  }
  LibraryCommand command=new LibraryCommand(module);
  command.reloadLibrary(path);
}
Program: 77515
Project: 77515
Buggy source:
/** 
 * Get next available buffer for the data from position offset.
 * @param offset
 * @return
 * @throws IOException
 */
private RAStreamBuffer getBuffer(long offset) throws IOException {
  RAStreamBuffer buffer=(RAStreamBuffer)bufferMap.get(offset);
  if (buffer != null)   return buffer;
  if (totalBuffer < IOUtil.MAX_NUMBER_OF_STREAM_BUFFER) {
    buffer=new RAStreamBuffer(this.randomFile);
    buffer.resetBuffer(offset);
    totalBuffer++;
    bufferList.add(buffer);
    bufferMap.put(offset,buffer);
    return buffer;
  }
  buffer=(RAStreamBuffer)bufferList.get(0);
  buffer.flushBuffer();
  bufferMap.remove(buffer.getOffset());
  buffer.resetBuffer(offset);
  bufferMap.put(offset,buffer);
  bufferList.remove(0);
  bufferList.add(buffer);
  return buffer;
}

Fixed version (ground truth):
/** 
 * Get next available buffer for the data from position offset.
 * @param offset
 * @return
 * @throws IOException
 */
private RAStreamBuffer getBuffer(long offset) throws IOException {
  Long offsetKey=new Long(offset);
  RAStreamBuffer buffer=(RAStreamBuffer)bufferMap.get(offsetKey);
  if (buffer != null)   return buffer;
  if (totalBuffer < IOUtil.MAX_NUMBER_OF_STREAM_BUFFER) {
    buffer=new RAStreamBuffer(this.randomFile);
    buffer.resetBuffer(offset);
    totalBuffer++;
    bufferList.add(buffer);
    bufferMap.put(offsetKey,buffer);
    return buffer;
  }
  buffer=(RAStreamBuffer)bufferList.get(0);
  buffer.flushBuffer();
  bufferMap.remove(new Long(buffer.getOffset()));
  buffer.resetBuffer(offset);
  bufferMap.put(offsetKey,buffer);
  bufferList.remove(0);
  bufferList.add(buffer);
  return buffer;
}
Program: 77516
Project: 77516
Buggy source:
/** 
 * Sets the column name.
 * @param columnName the column name to set
 */
public void setColumnName(String columnName){
  setPropertySilently(ColumnHint.COLUMN_NAME_MEMBER,columnName);
}

Fixed version (ground truth):
/** 
 * Sets the column name.
 * @param columnName the column name to set
 * @throws SemanticException value required exception.
 */
public void setColumnName(String columnName) throws SemanticException {
  setProperty(ColumnHint.COLUMN_NAME_MEMBER,columnName);
}
Program: 77517
Project: 77517
Buggy source:
/** 
 * Sets the aggregateOn expression used to define this computed column.
 * @param aggregateOn the aggregateOn expression to set
 * @deprecated by {@link #setAggregateOn(String)}            
 */
public void setAggregrateOn(String aggregateOn){
  setAggregateOn(aggregateOn);
}

Fixed version (ground truth):
/** 
 * Sets the aggregateOn expression used to define this computed column.
 * @param aggregateOn the aggregateOn expression to set
 * @deprecated by {@link #setAggregateOn(String)}
 */
public void setAggregrateOn(String aggregateOn){
  setAggregateOn(aggregateOn);
}
Program: 77518
Project: 77518
Buggy source:
/** 
 * Sets the expression used to define this computed column.
 * @param expression the expression to set
 */
public void setExpression(String expression){
  setPropertySilently(ComputedColumn.EXPRESSION_MEMBER,expression);
}

Fixed version (ground truth):
/** 
 * Sets the expression used to define this computed column.
 * @param expression the expression to set
 * @throws SemanticException value required exception
 */
public void setExpression(String expression) throws SemanticException {
  setProperty(ComputedColumn.EXPRESSION_MEMBER,expression);
}
Program: 77519
Project: 77519
Buggy source:
/** 
 * Sets the custom color name.
 * @param name the custom color name to set
 */
public void setName(String name){
  setPropertySilently(CustomColor.NAME_MEMBER,name);
}

Fixed version (ground truth):
/** 
 * Sets the custom color name.
 * @param name the custom color name to set
 * @throws SemanticException value required exception
 */
public void setName(String name) throws SemanticException {
  setProperty(CustomColor.NAME_MEMBER,name);
}
Program: 77520
Project: 77520
Buggy source:
/** 
 * Sets the color value.
 * @param colorValue the color value to be set.
 */
public void setColor(String colorValue){
  setPropertySilently(CustomColor.COLOR_MEMBER,colorValue);
}

Fixed version (ground truth):
/** 
 * Sets the color value.
 * @param colorValue the color value to be set.
 * @throws SemanticException value required exception
 */
public void setColor(String colorValue) throws SemanticException {
  setProperty(CustomColor.COLOR_MEMBER,colorValue);
}
Program: 77521
Project: 77521
Buggy source:
/** 
 * Sets the parameter name.
 * @param name the name to set
 */
public void setName(String name){
  String oldName=getName();
  setPropertySilently(DataSetParameter.NAME_MEMBER,name);
  if (oldName != null) {
    updateParamBindings(oldName,name);
  }
}

Fixed version (ground truth):
/** 
 * Sets the parameter name.
 * @param name the name to set
 * @throws SemanticException value required exception
 */
public void setName(String name) throws SemanticException {
  String oldName=getName();
  setProperty(DataSetParameter.NAME_MEMBER,name);
  if (oldName != null) {
    updateParamBindings(oldName,name);
  }
}
Program: 77522
Project: 77522
Buggy source:
/** 
 * Sets the embedded image name. This name is used to identify an embedded image by image item.
 * @param name the embedded image name to set
 */
public void setName(String name){
  setPropertySilently(EmbeddedImage.NAME_MEMBER,name);
}

Fixed version (ground truth):
/** 
 * Sets the embedded image name. This name is used to identify an embedded image by image item.
 * @param name the embedded image name to set
 * @throws SemanticException value required exception
 */
public void setName(String name) throws SemanticException {
  setProperty(EmbeddedImage.NAME_MEMBER,name);
}
Program: 77523
Project: 77523
Buggy source:
/** 
 * Returns the qualified name of this element. The qualified name is the  name of this element if this element is in module user is editing.
 * @return the qualified name of thie element.
 */
public String getQualifiedName(){
  if (getName() == null)   return null;
  Module module=getModule();
  if (module instanceof Library) {
    String namespace=((Library)module).getNamespace();
    return StringUtil.buildQualifiedReference(namespace,getName());
  }
  return getName();
}

Fixed version (ground truth):
/** 
 * Returns the qualified name of this element. The qualified name is the name of this element if this element is in module user is editing.
 * @return the qualified name of thie element.
 */
public String getQualifiedName(){
  if (getName() == null)   return null;
  Module module=getModule();
  if (module instanceof Library) {
    String namespace=((Library)module).getNamespace();
    return StringUtil.buildQualifiedReference(namespace,getName());
  }
  return getName();
}
Program: 77524
Project: 77524
Buggy source:
/** 
 * Sets the filter expression.
 * @param filterExpr the filter expression to set
 * @deprecated Replaced by the method {@link #setExpr(String)}
 */
public void setFilterExpr(String filterExpr){
  setExpr(filterExpr);
}

Fixed version (ground truth):
/** 
 * Sets the filter expression.
 * @param filterExpr the filter expression to set
 * @throws SemanticException value required exception
 * @deprecated Replaced by the method {@link #setExpr(String)}
 */
public void setFilterExpr(String filterExpr) throws SemanticException {
  setExpr(filterExpr);
}
Program: 77525
Project: 77525
Buggy source:
/** 
 * Sets the filter expression.
 * @param filterExpr the filter expression to set
 */
public void setExpr(String filterExpr){
  setPropertySilently(FilterCondition.EXPR_MEMBER,filterExpr);
}

Fixed version (ground truth):
/** 
 * Sets the filter expression.
 * @param filterExpr the filter expression to set
 * @throws SemanticException value required exception
 */
public void setExpr(String filterExpr) throws SemanticException {
  setProperty(FilterCondition.EXPR_MEMBER,filterExpr);
}
Program: 77526
Project: 77526
Buggy source:
/** 
 * Sets the right expression value of this condition.
 * @param rightExpression the right expression to set
 */
public void setRightExpression(String rightExpression){
  setPropertySilently(JoinCondition.RIGHT_EXPRESSION_MEMBER,rightExpression);
}

Fixed version (ground truth):
/** 
 * Sets the right expression value of this condition.
 * @param rightExpression the right expression to set
 * @throws SemanticException value required exception
 */
public void setRightExpression(String rightExpression) throws SemanticException {
  setProperty(JoinCondition.RIGHT_EXPRESSION_MEMBER,rightExpression);
}
Program: 77527
Project: 77527
Buggy source:
/** 
 * Sets the left expression value of this condition.
 * @param leftExpression the left expression to set
 */
public void setLeftExpression(String leftExpression){
  setPropertySilently(JoinCondition.LEFT_EXPRESSION_MEMBER,leftExpression);
}

Fixed version (ground truth):
/** 
 * Sets the left expression value of this condition.
 * @param leftExpression the left expression to set
 * @throws SemanticException value required exception
 */
public void setLeftExpression(String leftExpression) throws SemanticException {
  setProperty(JoinCondition.LEFT_EXPRESSION_MEMBER,leftExpression);
}
Program: 77528
Project: 77528
Buggy source:
/** 
 * Sets the left data set value of this condition.
 * @param leftDataset the left data set to set
 */
public void setLeftDataSet(String leftDataset){
  setPropertySilently(JoinCondition.LEFT_DATASET_MEMBER,leftDataset);
}

Fixed version (ground truth):
/** 
 * Sets the left data set value of this condition.
 * @param leftDataset the left data set to set
 * @throws SemanticException value required exception
 */
public void setLeftDataSet(String leftDataset) throws SemanticException {
  setProperty(JoinCondition.LEFT_DATASET_MEMBER,leftDataset);
}
Program: 77529
Project: 77529
Buggy source:
/** 
 * Sets the right data set value of this condition.
 * @param rightDataset the right data set to set
 */
public void setRightDataSet(String rightDataset){
  setPropertySilently(JoinCondition.RIGHT_DATASET_MEMBER,rightDataset);
}

Fixed version (ground truth):
/** 
 * Sets the right data set value of this condition.
 * @param rightDataset the right data set to set
 * @throws SemanticException value required exception
 */
public void setRightDataSet(String rightDataset) throws SemanticException {
  setProperty(JoinCondition.RIGHT_DATASET_MEMBER,rightDataset);
}
Program: 77530
Project: 77530
Buggy source:
public Object visitListItem(ListItemDesign list,Object value){
  BaseQueryDefinition query=prepareVisit(list);
  if (query == null) {
    pushCurrentCondition(true);
    handleListingBand(list.getHeader(),value);
    popCurrentCondition();
    pushCurrentCondition(true);
    handleListingBand(list.getFooter(),value);
    popCurrentCondition();
  }
 else {
    pushReportItemQuery(query);
    transformExpressions(list);
    pushCurrentCondition(true);
    handleListingBand(list.getHeader(),value);
    SlotHandle groupsSlot=((ListHandle)list.getHandle()).getGroups();
    for (int i=0; i < list.getGroupCount(); i++) {
      handleListingGroup(list.getGroup(i),(GroupHandle)groupsSlot.get(i),value);
    }
    popCurrentCondition();
    BandDesign detail=list.getDetail();
    if (detail != null && detail.getContentCount() != 0) {
      query.setUsesDetails(true);
    }
    pushCurrentCondition(false);
    handleListingBand(list.getDetail(),value);
    popCurrentCondition();
    pushCurrentCondition(true);
    handleListingBand(list.getFooter(),value);
    popCurrentCondition();
    popReportItemQuery();
  }
  finishVisit(query);
  return value;
}

Fixed version (ground truth):
public Object visitListItem(ListItemDesign list,Object value){
  BaseQueryDefinition query=prepareVisit(list);
  if (query == null) {
    pushCurrentCondition(true);
    handleListingBand(list.getHeader(),value);
    popCurrentCondition();
    pushCurrentCondition(true);
    handleListingBand(list.getFooter(),value);
    popCurrentCondition();
  }
 else {
    pushReportItemQuery(query);
    transformExpressions(list);
    pushCurrentCondition(true);
    handleListingBand(list.getHeader(),value);
    SlotHandle groupsSlot=((ListHandle)list.getHandle()).getGroups();
    for (int i=0; i < list.getGroupCount(); i++) {
      handleListingGroup(list.getGroup(i),(GroupHandle)groupsSlot.get(i),value);
    }
    popCurrentCondition();
    BandDesign detail=list.getDetail();
    if (detail == null || detail.getContentCount() == 0) {
      query.setUsesDetails(false);
    }
    pushCurrentCondition(false);
    handleListingBand(list.getDetail(),value);
    popCurrentCondition();
    pushCurrentCondition(true);
    handleListingBand(list.getFooter(),value);
    popCurrentCondition();
    popReportItemQuery();
  }
  finishVisit(query);
  return value;
}
Program: 77531
Project: 77531
Buggy source:
public Object visitTableItem(TableItemDesign table,Object value){
  BaseQueryDefinition query=prepareVisit(table);
  if (query == null) {
    pushCurrentCondition(true);
    handleListingBand(table.getHeader(),value);
    popCurrentCondition();
    pushCurrentCondition(true);
    handleListingBand(table.getFooter(),value);
    popCurrentCondition();
  }
 else {
    transformExpressions(table);
    for (int i=0; i < table.getColumnCount(); i++) {
      handleColumn(table.getColumn(i));
    }
    pushCurrentCondition(true);
    handleListingBand(table.getHeader(),value);
    SlotHandle groupsSlot=((TableHandle)table.getHandle()).getGroups();
    for (int i=0; i < table.getGroupCount(); i++) {
      handleListingGroup(table.getGroup(i),(GroupHandle)groupsSlot.get(i),value);
    }
    popCurrentCondition();
    BandDesign detail=table.getDetail();
    if (detail != null && detail.getContentCount() != 0) {
      query.setUsesDetails(true);
    }
    pushCurrentCondition(false);
    handleListingBand(table.getDetail(),value);
    popCurrentCondition();
    pushCurrentCondition(true);
    handleListingBand(table.getFooter(),value);
    popCurrentCondition();
  }
  finishVisit(query);
  return value;
}

Fixed version (ground truth):
public Object visitTableItem(TableItemDesign table,Object value){
  BaseQueryDefinition query=prepareVisit(table);
  if (query == null) {
    pushCurrentCondition(true);
    handleListingBand(table.getHeader(),value);
    popCurrentCondition();
    pushCurrentCondition(true);
    handleListingBand(table.getFooter(),value);
    popCurrentCondition();
  }
 else {
    transformExpressions(table);
    for (int i=0; i < table.getColumnCount(); i++) {
      handleColumn(table.getColumn(i));
    }
    pushCurrentCondition(true);
    handleListingBand(table.getHeader(),value);
    SlotHandle groupsSlot=((TableHandle)table.getHandle()).getGroups();
    for (int i=0; i < table.getGroupCount(); i++) {
      handleListingGroup(table.getGroup(i),(GroupHandle)groupsSlot.get(i),value);
    }
    popCurrentCondition();
    BandDesign detail=table.getDetail();
    if (detail == null || detail.getContentCount() == 0) {
      query.setUsesDetails(false);
    }
    pushCurrentCondition(false);
    handleListingBand(table.getDetail(),value);
    popCurrentCondition();
    pushCurrentCondition(true);
    handleListingBand(table.getFooter(),value);
    popCurrentCondition();
  }
  finishVisit(query);
  return value;
}
Program: 77532
Project: 77532
Buggy source:
public Object[] getChildren(Object parentElement){
  if (parentElement instanceof File) {
    File file=(File)parentElement;
    if (!file.exists()) {
      return new Object[]{Messages.getString("String_Node_Str")};
    }
    if (file.isDirectory()) {
      File[] children=file.listFiles(filter);
      List folderList=new ArrayList();
      List fileList=new ArrayList();
      for (int i=0; i < children.length; i++) {
        if (children[i].isDirectory()) {
          folderList.add(children[i]);
        }
 else {
          fileList.add(children[i]);
        }
      }
      folderList.addAll(fileList);
      return folderList.toArray();
    }
 else {
      try {
        LibraryHandle library=SessionHandleAdapter.getInstance().getSessionHandle().openLibrary(file.getAbsolutePath());
        Object[] rtns=super.getChildren(library);
        library.close();
        return rtns;
      }
 catch (      DesignFileException e) {
      }
    }
  }
  return super.getChildren(parentElement);
}

Fixed version (ground truth):
public Object[] getChildren(Object parentElement){
  if (parentElement instanceof File) {
    File file=(File)parentElement;
    if (!file.exists()) {
      return new Object[]{Messages.getString("String_Node_Str")};
    }
    if (file.isDirectory()) {
      File[] children=file.listFiles(filter);
      List folderList=new ArrayList();
      List fileList=new ArrayList();
      for (int i=0; i < children.length; i++) {
        if (children[i].isDirectory()) {
          folderList.add(children[i]);
        }
 else {
          fileList.add(children[i]);
        }
      }
      folderList.addAll(fileList);
      return folderList.toArray();
    }
 else {
      LibraryHandle library=null;
      try {
        library=SessionHandleAdapter.getInstance().getSessionHandle().openLibrary(file.getAbsolutePath());
        Object[] rtns=super.getChildren(library);
        return rtns;
      }
 catch (      DesignFileException e) {
      }
 finally {
        if (library != null)         library.close();
      }
    }
  }
  return super.getChildren(parentElement);
}
Program: 77534
Project: 77534
Buggy source:
private IChoiceSet getFormatChoiceSet(String type){
  IChoiceSet choiceSet=null;
  if (DesignChoiceConstants.PARAM_TYPE_STRING.equals(type)) {
    choiceSet=DEUtil.getMetaDataDictionary().getChoiceSet(DesignChoiceConstants.CHOICE_STRING_FORMAT_TYPE);
  }
 else   if (DesignChoiceConstants.PARAM_TYPE_DATETIME.equals(type)) {
    choiceSet=DEUtil.getMetaDataDictionary().getChoiceSet(DesignChoiceConstants.CHOICE_DATETIME_FORMAT_TYPE);
  }
 else   if (DesignChoiceConstants.PARAM_TYPE_DECIMAL.equals(type) || DesignChoiceConstants.PARAM_TYPE_FLOAT.equals(type)) {
    choiceSet=DEUtil.getMetaDataDictionary().getChoiceSet(DesignChoiceConstants.CHOICE_NUMBER_FORMAT_TYPE);
  }
  return choiceSet;
}

Fixed version (ground truth):
private IChoiceSet getFormatChoiceSet(String type){
  IChoiceSet choiceSet=null;
  if (DesignChoiceConstants.PARAM_TYPE_STRING.equals(type)) {
    choiceSet=DEUtil.getMetaDataDictionary().getChoiceSet(DesignChoiceConstants.CHOICE_STRING_FORMAT_TYPE);
  }
 else   if (DesignChoiceConstants.PARAM_TYPE_DATETIME.equals(type)) {
    choiceSet=DEUtil.getMetaDataDictionary().getChoiceSet(DesignChoiceConstants.CHOICE_DATETIME_FORMAT_TYPE);
  }
 else   if (DesignChoiceConstants.PARAM_TYPE_DECIMAL.equals(type) || DesignChoiceConstants.PARAM_TYPE_FLOAT.equals(type) || DesignChoiceConstants.PARAM_TYPE_INTEGER.equals(type)) {
    choiceSet=DEUtil.getMetaDataDictionary().getChoiceSet(DesignChoiceConstants.CHOICE_NUMBER_FORMAT_TYPE);
  }
  return choiceSet;
}
Program: 77535
Project: 77535
Buggy source:
public IResultIterator getResultIterator() throws DataException {
  if (queryService == null)   throw new DataException(ResourceConstants.RESULT_CLOSED);
  if (iterator == null) {
    this.queryService.initAutoBinding();
    this.queryService.validateQueryColumBinding();
    iterator=new ResultIterator(new ResultService(context,this),queryService.executeQuery(),this.queryScope);
  }
  logger.logp(Level.FINE,QueryResults.class.getName(),"String_Node_Str","String_Node_Str");
  return iterator;
}

Fixed version (ground truth):
public IResultIterator getResultIterator() throws DataException {
  if (queryService == null)   throw new DataException(ResourceConstants.RESULT_CLOSED);
  if (iterator == null) {
    this.queryService.initAutoBinding();
    this.queryService.validateQueryColumBinding();
    if (queryService.getQueryDefn().usesDetails() == true)     iterator=new ResultIterator(new ResultService(context,this),queryService.executeQuery(),this.queryScope);
 else     iterator=new ResultIterator2(new ResultService(context,this),queryService.executeQuery(),this.queryScope);
  }
  logger.logp(Level.FINE,QueryResults.class.getName(),"String_Node_Str","String_Node_Str");
  return iterator;
}
Program: 77536
Project: 77536
Buggy source:
public boolean next() throws BirtException {
  checkStarted();
  boolean hasNext=false;
  if (state == BEFORE_FIRST_ROW) {
    state=ON_ROW;
    hasNext=odiResult.getCurrentResult() != null;
  }
 else {
    hasNext=odiResult.next();
  }
  if (useDetails == false && hasNext) {
    savedStartingGroupLevel=odiResult.getStartingGroupLevel();
    odiResult.last(lowestGroupLevel);
  }
  logger.logp(Level.FINE,ResultIterator.class.getName(),"String_Node_Str","String_Node_Str");
  if (!hasNext)   state=AFTER_LAST_ROW;
  return hasNext;
}

Fixed version (ground truth):
public boolean next() throws BirtException {
  checkStarted();
  boolean hasNext=false;
  if (state == BEFORE_FIRST_ROW) {
    state=ON_ROW;
    hasNext=odiResult.getCurrentResult() != null;
  }
 else {
    hasNext=hasNextRow();
  }
  if (hasNext)   this.prepareCurrentRow();
  if (!hasNext)   state=AFTER_LAST_ROW;
  return hasNext;
}
Program: 77537
Project: 77537
Buggy source:
public int getStartingGroupLevel() throws DataException {
  if (useDetails == false) {
    logger.logp(Level.FINE,ResultIterator.class.getName(),"String_Node_Str","String_Node_Str");
    return savedStartingGroupLevel;
  }
  logger.logp(Level.FINE,ResultIterator.class.getName(),"String_Node_Str","String_Node_Str");
  return odiResult.getStartingGroupLevel();
}

Fixed version (ground truth):
public int getStartingGroupLevel() throws DataException {
  return odiResult.getStartingGroupLevel();
}
Program: 77538
Project: 77538
Buggy source:
public int getRowId() throws BirtException {
  checkStarted();
  if (rowIDUtil == null)   rowIDUtil=new RowIDUtil();
  return rowIDUtil.getRowID(this.odiResult);
}

Fixed version (ground truth):
public int getRowId() throws BirtException {
  checkStarted();
  if (rowIDUtil == null)   rowIDUtil=new RowIDUtil();
  return rowIDUtil.getRowID(this.odiResult,getRowIndex());
}
Program: 77539
Project: 77539
Buggy source:
public int getEndingGroupLevel() throws DataException {
  logger.logp(Level.FINE,ResultIterator.class.getName(),"String_Node_Str","String_Node_Str");
  return odiResult.getEndingGroupLevel();
}

Fixed version (ground truth):
public int getEndingGroupLevel() throws DataException {
  return odiResult.getEndingGroupLevel();
}
Program: 77540
Project: 77540
Buggy source:
public Object getValue(String exprName) throws BirtException {
  checkStarted();
  logger.logp(Level.FINE,ResultIterator.class.getName(),"String_Node_Str","String_Node_Str" + LogUtil.toString(exprName));
  if (this.resultService.getBindingExpr(exprName) == null && this.resultService.getAutoBindingExpr(exprName) == null)   throw new DataException(ResourceConstants.INVALID_BOUND_COLUMN_NAME,exprName);
  int currRowIndex=this.odiResult.getCurrentResultIndex();
  if (lastRowIndex < currRowIndex) {
    if (bindingColumnsEvalUtil == null) {
      bindingColumnsEvalUtil=new BindingColumnsEvalUtil(this.odiResult,this.scope,this.getRdSaveHelper(),this.resultService.getAllBindingExprs(),this.resultService.getAllAutoBindingExprs());
    }
    lastRowIndex=currRowIndex;
    boundColumnValueMap=bindingColumnsEvalUtil.getColumnsValue();
  }
  Object exprValue=boundColumnValueMap.get(exprName);
  if (exprValue instanceof BirtException)   throw (BirtException)exprValue;
  return exprValue;
}

Fixed version (ground truth):
public Object getValue(String exprName) throws BirtException {
  checkStarted();
  logger.logp(Level.FINE,ResultIterator.class.getName(),"String_Node_Str","String_Node_Str" + LogUtil.toString(exprName));
  if (this.resultService.getBindingExpr(exprName) == null && this.resultService.getAutoBindingExpr(exprName) == null)   throw new DataException(ResourceConstants.INVALID_BOUND_COLUMN_NAME,exprName);
  if (this.isFirstRowPepared == false)   this.prepareCurrentRow();
  Object exprValue=boundColumnValueMap.get(exprName);
  if (exprValue instanceof BirtException)   throw (BirtException)exprValue;
  return exprValue;
}
Program: 77541
Project: 77541
Buggy source:
public void moveTo(int rowIndex) throws BirtException {
  checkStarted();
  if (state == BEFORE_FIRST_ROW)   state=ON_ROW;
  int currRowIndex=odiResult.getCurrentResultIndex();
  if (rowIndex < 0 || rowIndex >= this.odiResult.getRowCount())   throw new DataException(ResourceConstants.INVALID_ROW_INDEX,new Integer(rowIndex));
 else   if (rowIndex < currRowIndex)   throw new DataException(ResourceConstants.BACKWARD_SEEK_ERROR);
 else   if (rowIndex == currRowIndex)   return;
  int gapRows=rowIndex - currRowIndex;
  for (int i=0; i < gapRows; i++)   this.next();
}

Fixed version (ground truth):
public void moveTo(int rowIndex) throws BirtException {
  checkStarted();
  if (state == BEFORE_FIRST_ROW) {
    this.prepareCurrentRow();
    state=ON_ROW;
  }
  int currRowIndex=odiResult.getCurrentResultIndex();
  if (rowIndex < 0 || rowIndex >= this.odiResult.getRowCount())   throw new DataException(ResourceConstants.INVALID_ROW_INDEX,new Integer(rowIndex));
 else   if (rowIndex < currRowIndex)   throw new DataException(ResourceConstants.BACKWARD_SEEK_ERROR);
 else   if (rowIndex == currRowIndex)   return;
  int gapRows=rowIndex - currRowIndex;
  for (int i=0; i < gapRows; i++)   this.next();
}