Program: 61713
Project: 61713
Buggy source:
@Override public void actionPerformed(ActionEvent e){
switch (e.getActionCommand()) {
case ACTION_GRAPH:
    if (lastCode != null) {
      try {
        GraphFrame gf=new GraphFrame(new ActionGraph(lastCode,new HashMap<Integer,String>(),new HashMap<String,GraphTargetItem>(),new HashMap<String,GraphTargetItem>(),SWF.DEFAULT_VERSION),"String_Node_Str");
        gf.setVisible(true);
      }
 catch (      InterruptedException ex) {
        Logger.getLogger(ActionPanel.class.getName()).log(Level.SEVERE,null,ex);
      }
    }
  break;
case ACTION_EDIT_ACTION:
setEditMode(true);
break;
case ACTION_HEX:
case ACTION_HEX_ONLY:
if (e.getActionCommand() == ACTION_HEX) {
hexOnlyButton.setSelected(false);
}
 else {
hexButton.setSelected(false);
}
setHex(getExportMode());
break;
case ACTION_CANCEL_ACTION:
setEditMode(false);
setHex(getExportMode());
break;
case ACTION_SAVE_ACTION:
try {
String text=editor.getText();
if (text.trim().startsWith("String_Node_Str")) {
src.setActionBytes(Helper.getBytesFromHexaText(text));
}
 else {
src.setActions(ASMParser.parse(0,src.getPos(),true,text,src.getSwf().version,false));
}
src.setModified();
setSource(this.src,false);
View.showMessageDialog(this,AppStrings.translate("String_Node_Str"));
saveButton.setVisible(false);
cancelButton.setVisible(false);
editButton.setVisible(true);
editor.setEditable(false);
editMode=false;
}
 catch (IOException ex) {
}
catch (ParseException ex) {
View.showMessageDialog(this,AppStrings.translate("String_Node_Str").replace("String_Node_Str",ex.text).replace("String_Node_Str","String_Node_Str" + ex.line),AppStrings.translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
editor.gotoLine((int)ex.line);
}
break;
case ACTION_EDIT_DECOMPILED:
if (View.showConfirmDialog(null,AppStrings.translate("String_Node_Str"),AppStrings.translate("String_Node_Str"),JOptionPane.OK_CANCEL_OPTION,JOptionPane.WARNING_MESSAGE,Configuration.warningExperimentalAS12Edit,JOptionPane.OK_OPTION) == JOptionPane.OK_OPTION) {
setDecompiledEditMode(true);
}
break;
case ACTION_CANCEL_DECOMPILED:
setDecompiledEditMode(false);
break;
case ACTION_SAVE_DECOMPILED:
try {
ActionScriptParser par=new ActionScriptParser(mainPanel.getCurrentSwf().version);
src.setActions(par.actionsFromString(decompiledEditor.getText()));
src.setModified();
setSource(src,false);
View.showMessageDialog(this,AppStrings.translate("String_Node_Str"));
setDecompiledEditMode(false);
}
 catch (IOException ex) {
Logger.getLogger(ActionPanel.class.getName()).log(Level.SEVERE,"String_Node_Str",ex);
}
catch (ParseException ex) {
View.showMessageDialog(this,AppStrings.translate("String_Node_Str").replace("String_Node_Str",ex.text).replace("String_Node_Str","String_Node_Str" + ex.line),AppStrings.translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
}
catch (CompilationException ex) {
View.showMessageDialog(this,AppStrings.translate("String_Node_Str").replace("String_Node_Str",ex.text).replace("String_Node_Str","String_Node_Str" + ex.line),AppStrings.translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
}
break;
}
}

Fixed version (ground truth):
@Override public void actionPerformed(ActionEvent e){
switch (e.getActionCommand()) {
case ACTION_GRAPH:
    if (lastCode != null) {
      try {
        GraphDialog gf=new GraphDialog(mainPanel.getMainFrame().getWindow(),new ActionGraph(lastCode,new HashMap<Integer,String>(),new HashMap<String,GraphTargetItem>(),new HashMap<String,GraphTargetItem>(),SWF.DEFAULT_VERSION),"String_Node_Str");
        gf.setVisible(true);
      }
 catch (      InterruptedException ex) {
        Logger.getLogger(ActionPanel.class.getName()).log(Level.SEVERE,null,ex);
      }
    }
  break;
case ACTION_EDIT_ACTION:
setEditMode(true);
break;
case ACTION_HEX:
case ACTION_HEX_ONLY:
if (e.getActionCommand() == ACTION_HEX) {
hexOnlyButton.setSelected(false);
}
 else {
hexButton.setSelected(false);
}
setHex(getExportMode());
break;
case ACTION_CANCEL_ACTION:
setEditMode(false);
setHex(getExportMode());
break;
case ACTION_SAVE_ACTION:
try {
String text=editor.getText();
if (text.trim().startsWith("String_Node_Str")) {
src.setActionBytes(Helper.getBytesFromHexaText(text));
}
 else {
src.setActions(ASMParser.parse(0,src.getPos(),true,text,src.getSwf().version,false));
}
src.setModified();
setSource(this.src,false);
View.showMessageDialog(this,AppStrings.translate("String_Node_Str"));
saveButton.setVisible(false);
cancelButton.setVisible(false);
editButton.setVisible(true);
editor.setEditable(false);
editMode=false;
}
 catch (IOException ex) {
}
catch (ParseException ex) {
View.showMessageDialog(this,AppStrings.translate("String_Node_Str").replace("String_Node_Str",ex.text).replace("String_Node_Str","String_Node_Str" + ex.line),AppStrings.translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
editor.gotoLine((int)ex.line);
}
break;
case ACTION_EDIT_DECOMPILED:
if (View.showConfirmDialog(null,AppStrings.translate("String_Node_Str"),AppStrings.translate("String_Node_Str"),JOptionPane.OK_CANCEL_OPTION,JOptionPane.WARNING_MESSAGE,Configuration.warningExperimentalAS12Edit,JOptionPane.OK_OPTION) == JOptionPane.OK_OPTION) {
setDecompiledEditMode(true);
}
break;
case ACTION_CANCEL_DECOMPILED:
setDecompiledEditMode(false);
break;
case ACTION_SAVE_DECOMPILED:
try {
ActionScriptParser par=new ActionScriptParser(mainPanel.getCurrentSwf().version);
src.setActions(par.actionsFromString(decompiledEditor.getText()));
src.setModified();
setSource(src,false);
View.showMessageDialog(this,AppStrings.translate("String_Node_Str"));
setDecompiledEditMode(false);
}
 catch (IOException ex) {
Logger.getLogger(ActionPanel.class.getName()).log(Level.SEVERE,"String_Node_Str",ex);
}
catch (ParseException ex) {
View.showMessageDialog(this,AppStrings.translate("String_Node_Str").replace("String_Node_Str",ex.text).replace("String_Node_Str","String_Node_Str" + ex.line),AppStrings.translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
}
catch (CompilationException ex) {
View.showMessageDialog(this,AppStrings.translate("String_Node_Str").replace("String_Node_Str",ex.text).replace("String_Node_Str","String_Node_Str" + ex.line),AppStrings.translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
}
break;
}
}