#2729: Missing Vect_new_map_struct
-------------------------+-------------------------
Reporter: rblazek | Owner: grass-dev@…
Type: enhancement | Status: new
Priority: normal | Milestone:
Component: Vector | Version: svn-trunk
Keywords: | CPU: Unspecified
Platform: All |
-------------------------+-------------------------
There is no function to allocate Map_info. If GRASS library is used in
another application (QGIS for example) which is compiled by a compiller
with different ABI, calls to Vect_ functions using Map_info structure
allocated by the other application may result in crash. The problem was
discussed here: http://lists.osgeo.org/pipermail/grass-dev/2015-June/075539.html
A patch against trunk r66029 introducing Vect_new_map_struct and
Vect_destroy_map_struct is attached. I am not sure what should be a policy
for releasing Map_info members.
Patch applied in r66048. I did not modified the patch to use G_malloc(),
since the error message would be generic then. However, if this is not of
importance, then we should use G_malloc() and remove the function specific
G_fatal_error() call.