diff --git a/arbitrile.cpp b/arbitrile.cpp index 3d0e2898..c71f3965 100644 --- a/arbitrile.cpp +++ b/arbitrile.cpp @@ -53,6 +53,7 @@ struct hr_polygon_error : hr_exception { vector v; eGeometryClass c; int id; + map params; hr_polygon_error(const vector& _v, int _id) : v(_v), c(cgclass), id(_id) {} ~hr_polygon_error() noexcept(true) {} }; @@ -151,6 +152,10 @@ EX void load_tile(exp_parser& ep, bool unit) { catch(hr_parse_exception& ex) { throw hr_parse_exception(ex.s + ep.where()); } + catch(hr_polygon_error& poly) { + poly.params = ep.extra_params; + throw; + } cc.connections.resize(cc.size()); for(int i=0; i