diff options
| author | Even Rouault <even.rouault@spatialys.com> | 2019-08-26 23:21:12 +0200 |
|---|---|---|
| committer | Even Rouault <even.rouault@spatialys.com> | 2019-08-26 23:21:12 +0200 |
| commit | 96ac0f210b6dd3fdb499115d83bc13ff7739cd60 (patch) | |
| tree | 976815754bd15dabb80311f5f6da4a9da0cf88dc /src | |
| parent | 10a30bb539be1afb25952b19af8bbe72e1b13b56 (diff) | |
| download | PROJ-96ac0f210b6dd3fdb499115d83bc13ff7739cd60.tar.gz PROJ-96ac0f210b6dd3fdb499115d83bc13ff7739cd60.zip | |
Add a proj_cleanup() function to free global resources, typically at process termination
Diffstat (limited to 'src')
| -rw-r--r-- | src/apps/cs2cs.cpp | 2 | ||||
| -rw-r--r-- | src/malloc.cpp | 7 | ||||
| -rw-r--r-- | src/proj.h | 2 |
3 files changed, 10 insertions, 1 deletions
diff --git a/src/apps/cs2cs.cpp b/src/apps/cs2cs.cpp index 20e5e73c..3099c3e8 100644 --- a/src/apps/cs2cs.cpp +++ b/src/apps/cs2cs.cpp @@ -645,7 +645,7 @@ int main(int argc, char **argv) { proj_destroy(transformation); - pj_deallocate_grids(); + proj_cleanup(); exit(0); /* normal completion */ } diff --git a/src/malloc.cpp b/src/malloc.cpp index 817f8f20..393437e3 100644 --- a/src/malloc.cpp +++ b/src/malloc.cpp @@ -255,3 +255,10 @@ PJ *pj_default_destructor (PJ *P, int errlev) { /* Destructor */ delete P; return nullptr; } + +/*****************************************************************************/ +void proj_cleanup() { +/*****************************************************************************/ + pj_clear_initcache(); + pj_deallocate_grids(); +} @@ -458,6 +458,8 @@ double PROJ_DLL proj_todeg (double angle_in_radians); double PROJ_DLL proj_dmstor(const char *is, char **rs); char PROJ_DLL * proj_rtodms(char *s, double r, int pos, int neg); +void PROJ_DLL proj_cleanup(void); + /*! @endcond */ /* ------------------------------------------------------------------------- */ |
