I think I've discovered two causes of crashes...

First, one with the KML driver...

msDrawQueryLayer creates and draws a temporary layer here:
https://github.com/mapserver/mapserver/blob/3e8aa5a4d92c9bad105306ebe5117ed29d2b0e7c/mapdraw.c#L1205
The KML renderer sets a reference to the temporary layer here:
https://github.com/mapserver/mapserver/blob/3e8aa5a4d92c9bad105306ebe5117ed29d2b0e7c/mapkmlrenderer.cpp#L371
msDrawQueryLayer later calls msDrawShape here:
https://github.com/mapserver/mapserver/blob/3e8aa5a4d92c9bad105306ebe5117ed29d2b0e7c/mapdraw.c#L1295
which eventually results in a call to KmlRenderer::renderGlyphs
https://github.com/mapserver/mapserver/blob/3e8aa5a4d92c9bad105306ebe5117ed29d2b0e7c/mapkmlrenderer.cpp#L693
which gets to KmlRenderer::createPlacemarkNode and reuses that reference
that was set:
https://github.com/mapserver/mapserver/blob/3e8aa5a4d92c9bad105306ebe5117ed29d2b0e7c/mapkmlrenderer.cpp#L585
even though that temporary layer was freed earlier, leading to the crash.

And one with WMS:

It crashes around here:
https://github.com/mapserver/mapserver/blob/3e8aa5a4d92c9bad105306ebe5117ed29d2b0e7c/mapdraw.c#L106
Probably due to trying to setting NULL->map... That error message should
probably be moved before that line.
_______________________________________________
mapserver-users mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/mapserver-users

Reply via email to