Program: 56591
Project: 56591
Buggy source:
protected void renderProperties(ContentRenderer renderer) throws IOException {
  super.renderProperties(renderer);
  if (_showToolbar) {
    renderer.render("String_Node_Str",convertActionDisabledToJSON(_actionDisabled));
    renderer.render("String_Node_Str",_showToolbar);
  }
  renderer.render("String_Node_Str",_showFormulabar);
  XSheet sheet=this.getSelectedXSheet();
  if (sheet == null) {
    return;
  }
  if (_showContextMenu) {
    renderer.render("String_Node_Str",_showContextMenu);
  }
  if (_clientCacheDisabled)   renderer.render("String_Node_Str",_clientCacheDisabled);
  if (_maxRenderedCellSize != DEFAULT_MAX_RENDERED_CELL_SIZE)   renderer.render("String_Node_Str",_maxRenderedCellSize);
  List<LinkedHashMap<String,String>> sheetLabels=getSheetLabels();
  if (sheetLabels != null) {
    renderer.render("String_Node_Str",sheetLabels);
  }
  if (_showSheetbar)   renderer.render("String_Node_Str",_showSheetbar);
  if (!getLinkToNewTab()) {
    renderer.render("String_Node_Str",false);
  }
  Map afmap=convertAutoFilterToJSON(sheet.getAutoFilter());
  if (afmap != null) {
    renderer.render("String_Node_Str",afmap);
  }
 else {
    renderer.render("String_Node_Str",(String)null);
  }
  int rowHeight=getRowheight();
  if (rowHeight != DEFAULT_ROW_HEIGHT) {
    renderer.render("String_Node_Str",getRowheight());
  }
  renderer.render("String_Node_Str",getColumnwidth());
  if (_hideGridlines) {
    renderer.render("String_Node_Str",!_hideGridlines);
  }
  if (_protectSheet)   renderer.render("String_Node_Str",_protectSheet);
  renderer.render("String_Node_Str",isHidecolumnhead() ? 1 : this.getTopheadheight());
  renderer.render("String_Node_Str",isHiderowhead() ? 1 : this.getLeftheadwidth());
  if (_cellpadding != DEFAULT_CELL_PADDING)   renderer.render("String_Node_Str",_cellpadding);
  String sheetId=getSelectedSheetId();
  String css=getDynamicMediaURI(this,_cssVersion++,"String_Node_Str" + this.getUuid() + "String_Node_Str"+ sheetId,"String_Node_Str");
  renderer.render("String_Node_Str",new JavaScriptValue("String_Node_Str" + css + "String_Node_Str"+ this.getUuid()+ "String_Node_Str"));
  renderer.render("String_Node_Str",css);
  int maxRows=getMaxrows();
  if (maxRows != DEFAULT_MAX_ROWS) {
    renderer.render("String_Node_Str",maxRows);
  }
  int maxCols=getMaxcolumns();
  if (maxCols != DEFAULT_MAX_COLUMNS) {
    renderer.render("String_Node_Str",maxCols);
  }
  int rowFreeze=getRowfreeze();
  if (rowFreeze != DEFAULT_ROW_FREEZE) {
    renderer.render("String_Node_Str",rowFreeze);
  }
  int colFreeze=getColumnfreeze();
  if (colFreeze != DEFAULT_COLUMN_FREEZE) {
    renderer.render("String_Node_Str",colFreeze);
  }
  renderer.render("String_Node_Str",getSelectedSheetId());
  renderer.render("String_Node_Str",getRectStr(_focusRect));
  renderer.render("String_Node_Str",getRectStr(_selectionRect));
  if (_highlightRect != null) {
    renderer.render("String_Node_Str",getRectStr(_highlightRect));
  }
  HeaderPositionHelper colHelper=getColumnPositionHelper(sheet);
  HeaderPositionHelper rowHelper=getRowPositionHelper(sheet);
  renderer.render("String_Node_Str",getSizeHelperStr(colHelper));
  renderer.render("String_Node_Str",getSizeHelperStr(rowHelper));
  MergeMatrixHelper mmhelper=getMergeMatrixHelper(sheet);
  Iterator iter=mmhelper.getRanges().iterator();
  StringBuffer merr=new StringBuffer();
  while (iter.hasNext()) {
    MergedRect block=(MergedRect)iter.next();
    int left=block.getLeft();
    int top=block.getTop();
    int right=block.getRight();
    int bottom=block.getBottom();
    int id=block.getId();
    merr.append(left).append("String_Node_Str").append(top).append("String_Node_Str").append(right).append("String_Node_Str").append(bottom).append("String_Node_Str").append(id);
    if (iter.hasNext()) {
      merr.append("String_Node_Str");
    }
  }
  renderer.render("String_Node_Str",merr.toString());
  final SpreadsheetCtrl spreadsheetCtrl=((SpreadsheetCtrl)this.getExtraCtrl());
  int initColSize=getInitColumnSize();
  int preloadColSize=getPreloadColumnSize();
  int initRowSize=getInitRowSize();
  int preloadRowSize=getPreloadRowSize();
  renderer.render("String_Node_Str",spreadsheetCtrl.getRangeAttrs(sheet,SpreadsheetCtrl.Header.BOTH,SpreadsheetCtrl.CellAttribute.ALL,0,0,initColSize,initRowSize));
  renderer.render("String_Node_Str",preloadColSize);
  renderer.render("String_Node_Str",preloadRowSize);
  renderer.render("String_Node_Str",initRowSize);
  renderer.render("String_Node_Str",initColSize);
  renderer.render("String_Node_Str",_hideColhead);
  renderer.render("String_Node_Str",_hideRowhead);
  List<Map> dvs=convertDataValidationToJSON(sheet.getDataValidations());
  if (dvs != null) {
    renderer.render("String_Node_Str",dvs);
  }
 else {
    renderer.render("String_Node_Str",(String)null);
  }
}

Fixed version (ground truth):
protected void renderProperties(ContentRenderer renderer) throws IOException {
  super.renderProperties(renderer);
  if (_showToolbar) {
    renderer.render("String_Node_Str",convertActionDisabledToJSON(getDisabledUserAction()));
    renderer.render("String_Node_Str",_showToolbar);
  }
  renderer.render("String_Node_Str",_showFormulabar);
  XSheet sheet=this.getSelectedXSheet();
  if (sheet == null) {
    return;
  }
  if (_showContextMenu) {
    renderer.render("String_Node_Str",_showContextMenu);
  }
  if (_clientCacheDisabled)   renderer.render("String_Node_Str",_clientCacheDisabled);
  if (_maxRenderedCellSize != DEFAULT_MAX_RENDERED_CELL_SIZE)   renderer.render("String_Node_Str",_maxRenderedCellSize);
  List<LinkedHashMap<String,String>> sheetLabels=getSheetLabels();
  if (sheetLabels != null) {
    renderer.render("String_Node_Str",sheetLabels);
  }
  if (_showSheetbar)   renderer.render("String_Node_Str",_showSheetbar);
  if (!getLinkToNewTab()) {
    renderer.render("String_Node_Str",false);
  }
  Map afmap=convertAutoFilterToJSON(sheet.getAutoFilter());
  if (afmap != null) {
    renderer.render("String_Node_Str",afmap);
  }
 else {
    renderer.render("String_Node_Str",(String)null);
  }
  int rowHeight=getRowheight();
  if (rowHeight != DEFAULT_ROW_HEIGHT) {
    renderer.render("String_Node_Str",getRowheight());
  }
  renderer.render("String_Node_Str",getColumnwidth());
  if (_hideGridlines) {
    renderer.render("String_Node_Str",!_hideGridlines);
  }
  if (_protectSheet)   renderer.render("String_Node_Str",_protectSheet);
  renderer.render("String_Node_Str",isHidecolumnhead() ? 1 : this.getTopheadheight());
  renderer.render("String_Node_Str",isHiderowhead() ? 1 : this.getLeftheadwidth());
  if (_cellpadding != DEFAULT_CELL_PADDING)   renderer.render("String_Node_Str",_cellpadding);
  String sheetId=getSelectedSheetId();
  String css=getDynamicMediaURI(this,_cssVersion++,"String_Node_Str" + this.getUuid() + "String_Node_Str"+ sheetId,"String_Node_Str");
  renderer.render("String_Node_Str",new JavaScriptValue("String_Node_Str" + css + "String_Node_Str"+ this.getUuid()+ "String_Node_Str"));
  renderer.render("String_Node_Str",css);
  int maxRows=getMaxrows();
  if (maxRows != DEFAULT_MAX_ROWS) {
    renderer.render("String_Node_Str",maxRows);
  }
  int maxCols=getMaxcolumns();
  if (maxCols != DEFAULT_MAX_COLUMNS) {
    renderer.render("String_Node_Str",maxCols);
  }
  int rowFreeze=getRowfreeze();
  if (rowFreeze != DEFAULT_ROW_FREEZE) {
    renderer.render("String_Node_Str",rowFreeze);
  }
  int colFreeze=getColumnfreeze();
  if (colFreeze != DEFAULT_COLUMN_FREEZE) {
    renderer.render("String_Node_Str",colFreeze);
  }
  renderer.render("String_Node_Str",getSelectedSheetId());
  renderer.render("String_Node_Str",getRectStr(_focusRect));
  renderer.render("String_Node_Str",getRectStr(_selectionRect));
  if (_highlightRect != null) {
    renderer.render("String_Node_Str",getRectStr(_highlightRect));
  }
  HeaderPositionHelper colHelper=getColumnPositionHelper(sheet);
  HeaderPositionHelper rowHelper=getRowPositionHelper(sheet);
  renderer.render("String_Node_Str",getSizeHelperStr(colHelper));
  renderer.render("String_Node_Str",getSizeHelperStr(rowHelper));
  MergeMatrixHelper mmhelper=getMergeMatrixHelper(sheet);
  Iterator iter=mmhelper.getRanges().iterator();
  StringBuffer merr=new StringBuffer();
  while (iter.hasNext()) {
    MergedRect block=(MergedRect)iter.next();
    int left=block.getLeft();
    int top=block.getTop();
    int right=block.getRight();
    int bottom=block.getBottom();
    int id=block.getId();
    merr.append(left).append("String_Node_Str").append(top).append("String_Node_Str").append(right).append("String_Node_Str").append(bottom).append("String_Node_Str").append(id);
    if (iter.hasNext()) {
      merr.append("String_Node_Str");
    }
  }
  renderer.render("String_Node_Str",merr.toString());
  final SpreadsheetCtrl spreadsheetCtrl=((SpreadsheetCtrl)this.getExtraCtrl());
  int initColSize=getInitColumnSize();
  int preloadColSize=getPreloadColumnSize();
  int initRowSize=getInitRowSize();
  int preloadRowSize=getPreloadRowSize();
  renderer.render("String_Node_Str",spreadsheetCtrl.getRangeAttrs(sheet,SpreadsheetCtrl.Header.BOTH,SpreadsheetCtrl.CellAttribute.ALL,0,0,initColSize,initRowSize));
  renderer.render("String_Node_Str",preloadColSize);
  renderer.render("String_Node_Str",preloadRowSize);
  renderer.render("String_Node_Str",initRowSize);
  renderer.render("String_Node_Str",initColSize);
  renderer.render("String_Node_Str",_hideColhead);
  renderer.render("String_Node_Str",_hideRowhead);
  List<Map> dvs=convertDataValidationToJSON(sheet.getDataValidations());
  if (dvs != null) {
    renderer.render("String_Node_Str",dvs);
  }
 else {
    renderer.render("String_Node_Str",(String)null);
  }
}