Running the command below will give an AccessViolationException in Rhino 5SR4
protected override Result RunCommand(RhinoDoc doc, RunMode mode)
{
Curve c = new Line(Point3d.Origin, new Point3d(1, 0, 0)).ToNurbsCurve();
Box b = new Box(new BoundingBox(2, 0, 0, 3, 1, 1));
Brep brep = b.ToBrep();
doc.Objects.Add(c);
doc.Objects.Add(brep);
Curve[] result = c.Split(brep, RhinoMath.ZeroTolerance); // throws access violation exception
if (null != result)
foreach (var crv in result)
doc.Objects.Add(crv);
return Result.Success;
}