I think there is a bug in TimeZoneMapperConverter.split2Polys where it splits a node with 2 non-overlapping polygons into 2 pure nodes. It works out if it can do the split on longitude/latitude, but then it always assigns poly1 to left and poly2 to right, but I think actually in the first branch of the if statement (if (box1.lat1 > box2.lat2)) you should assign the polygons the otherway around? Since poly1 is north of poly2 it should be assigned to right? Similarly in the 3rd branch where poly1 is east of poly2.
The result of this error is cases like (65.842400, -52.665800) which should have time zone America/Godthab but doesn't because the wrong polygon ended up in the leaf node.
I think there is a bug in
TimeZoneMapperConverter.split2Polyswhere it splits a node with 2 non-overlapping polygons into 2 pure nodes. It works out if it can do the split on longitude/latitude, but then it always assignspoly1toleftandpoly2toright, but I think actually in the first branch of theifstatement (if (box1.lat1 > box2.lat2)) you should assign the polygons the otherway around? Sincepoly1is north ofpoly2it should be assigned toright? Similarly in the 3rd branch wherepoly1is east ofpoly2.The result of this error is cases like (65.842400, -52.665800) which should have time zone America/Godthab but doesn't because the wrong polygon ended up in the leaf node.