Program: 61440
Project: 61440
Buggy source:
public Tag importSvg(ShapeTag st,String svgXml,boolean fill){
  shapeTag=st;
  SHAPEWITHSTYLE shapes=new SHAPEWITHSTYLE();
  shapes.fillStyles=new FILLSTYLEARRAY();
  shapes.lineStyles=new LINESTYLEARRAY();
  shapes.fillStyles.fillStyles=new FILLSTYLE[0];
  shapes.lineStyles.lineStyles=new LINESTYLE[0];
  int shapeNum=st.getShapeNum();
  shapes.shapeRecords=new ArrayList<>();
  Rectangle2D.Double viewBox=null;
  try {
    DocumentBuilderFactory docFactory=DocumentBuilderFactory.newInstance();
    docFactory.setFeature("String_Node_Str",false);
    DocumentBuilder docBuilder=docFactory.newDocumentBuilder();
    Document doc=docBuilder.parse(new InputSource(new StringReader(svgXml)));
    Element rootElement=doc.getDocumentElement();
    Map<String,Element> idMap=new HashMap<>();
    populateIds(rootElement,idMap);
    if (!"String_Node_Str".equals(rootElement.getTagName())) {
      throw new IOException("String_Node_Str");
    }
    double width=800;
    double height=600;
    if (rootElement.hasAttribute("String_Node_Str")) {
      String params=rootElement.getAttribute("String_Node_Str");
      String[] args=Matrix.parseSvgNumberList(params);
      viewBox=new Rectangle2D.Double();
      if (args.length > 0) {
        viewBox.x=parseNumber(args[0]);
      }
      if (args.length > 1) {
        viewBox.y=parseNumber(args[1]);
      }
      if (args.length > 2) {
        viewBox.width=parseNumber(args[2]);
      }
      if (args.length > 3) {
        viewBox.height=parseNumber(args[3]);
      }
      width=viewBox.width;
      height=viewBox.height;
    }
    if (rootElement.hasAttribute("String_Node_Str")) {
      width=parseLength(rootElement.getAttribute("String_Node_Str"),width);
    }
    if (rootElement.hasAttribute("String_Node_Str")) {
      height=parseLength(rootElement.getAttribute("String_Node_Str"),height);
    }
    if (viewBox == null) {
      viewBox=new Rectangle2D.Double();
      viewBox.width=width;
      viewBox.height=height;
    }
    this.viewBox=viewBox;
    SvgStyle style=new SvgStyle(this,idMap,rootElement);
    Matrix transform=new Matrix();
    processSvgObject(idMap,shapeNum,shapes,rootElement,transform,style);
  }
 catch (  SAXException|IOException|ParserConfigurationException ex) {
    Logger.getLogger(ShapeImporter.class.getName()).log(Level.SEVERE,null,ex);
  }
  shapes.shapeRecords.add(new EndShapeRecord());
  RECT rect=st.getRect();
  int origXmin=rect.Xmin;
  int origYmin=rect.Ymin;
  rect.Xmin-=origXmin;
  rect.Xmax-=origXmin;
  rect.Ymin-=origYmin;
  rect.Ymax-=origYmin;
  if (!fill && viewBox != null) {
    rect.Xmin=(int)Math.round(viewBox.x * SWF.unitDivisor);
    rect.Ymin=(int)Math.round(viewBox.y * SWF.unitDivisor);
    rect.Xmax=(int)Math.round((viewBox.x + viewBox.width) * SWF.unitDivisor);
    rect.Ymax=(int)Math.round((viewBox.y + viewBox.height) * SWF.unitDivisor);
  }
 else   if (viewBox != null) {
    double width=viewBox.width * SWF.unitDivisor;
    double height=viewBox.height * SWF.unitDivisor;
    double radioX=rect.getWidth() / width;
    double radioY=rect.getHeight() / height;
    shapes=shapes.resize(radioX,radioY);
  }
  st.shapes=shapes;
  st.setModified(true);
  return (Tag)st;
}

Fixed version (ground truth):
public Tag importSvg(ShapeTag st,String svgXml,boolean fill){
  shapeTag=st;
  SHAPEWITHSTYLE shapes=new SHAPEWITHSTYLE();
  shapes.fillStyles=new FILLSTYLEARRAY();
  shapes.lineStyles=new LINESTYLEARRAY();
  shapes.fillStyles.fillStyles=new FILLSTYLE[0];
  shapes.lineStyles.lineStyles=new LINESTYLE[0];
  int shapeNum=st.getShapeNum();
  RECT rect=st.getRect();
  int origXmin=rect.Xmin;
  int origYmin=rect.Ymin;
  rect.Xmin-=origXmin;
  rect.Xmax-=origXmin;
  rect.Ymin-=origYmin;
  rect.Ymax-=origYmin;
  shapes.shapeRecords=new ArrayList<>();
  Rectangle2D.Double viewBox=null;
  try {
    DocumentBuilderFactory docFactory=DocumentBuilderFactory.newInstance();
    docFactory.setFeature("String_Node_Str",false);
    DocumentBuilder docBuilder=docFactory.newDocumentBuilder();
    Document doc=docBuilder.parse(new InputSource(new StringReader(svgXml)));
    Element rootElement=doc.getDocumentElement();
    Map<String,Element> idMap=new HashMap<>();
    populateIds(rootElement,idMap);
    if (!"String_Node_Str".equals(rootElement.getTagName())) {
      throw new IOException("String_Node_Str");
    }
    double width=800;
    double height=600;
    if (rootElement.hasAttribute("String_Node_Str")) {
      String params=rootElement.getAttribute("String_Node_Str");
      String[] args=Matrix.parseSvgNumberList(params);
      viewBox=new Rectangle2D.Double();
      if (args.length > 0) {
        viewBox.x=parseNumber(args[0]);
      }
      if (args.length > 1) {
        viewBox.y=parseNumber(args[1]);
      }
      if (args.length > 2) {
        viewBox.width=parseNumber(args[2]);
      }
      if (args.length > 3) {
        viewBox.height=parseNumber(args[3]);
      }
      width=viewBox.width;
      height=viewBox.height;
    }
    if (rootElement.hasAttribute("String_Node_Str")) {
      width=parseLength(rootElement.getAttribute("String_Node_Str"),width);
    }
    if (rootElement.hasAttribute("String_Node_Str")) {
      height=parseLength(rootElement.getAttribute("String_Node_Str"),height);
    }
    if (viewBox == null) {
      viewBox=new Rectangle2D.Double();
      viewBox.width=width;
      viewBox.height=height;
    }
    this.viewBox=viewBox;
    SvgStyle style=new SvgStyle(this,idMap,rootElement);
    Matrix transform=new Matrix();
    if (!fill) {
      rect.Xmin=(int)Math.round(viewBox.x * SWF.unitDivisor);
      rect.Ymin=(int)Math.round(viewBox.y * SWF.unitDivisor);
      rect.Xmax=(int)Math.round((viewBox.x + viewBox.width) * SWF.unitDivisor);
      rect.Ymax=(int)Math.round((viewBox.y + viewBox.height) * SWF.unitDivisor);
    }
 else {
      double ratioX=rect.getWidth() / width / SWF.unitDivisor;
      double ratioY=rect.getHeight() / height / SWF.unitDivisor;
      transform=Matrix.getScaleInstance(ratioX,ratioY);
    }
    processSvgObject(idMap,shapeNum,shapes,rootElement,transform,style);
  }
 catch (  SAXException|IOException|ParserConfigurationException ex) {
    Logger.getLogger(ShapeImporter.class.getName()).log(Level.SEVERE,null,ex);
  }
  shapes.shapeRecords.add(new EndShapeRecord());
  st.shapes=shapes;
  st.setModified(true);
  return (Tag)st;
}