diff options
| author | Thomas Knudsen <busstoptaktik@users.noreply.github.com> | 2017-10-06 18:56:12 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-10-06 18:56:12 +0200 |
| commit | 202455448868a8a7d24dd7ba3cfa4fa9580c25c5 (patch) | |
| tree | df66e34efc3a8177249c35e29d9169855aea94bf /src/PJ_unitconvert.c | |
| parent | 0c2f14e53de134e3bdecee45f7bcf9bdb1811432 (diff) | |
| parent | ee0e2a0ff7315b3e77e5e570b566a735ec6a817a (diff) | |
| download | PROJ-202455448868a8a7d24dd7ba3cfa4fa9580c25c5.tar.gz PROJ-202455448868a8a7d24dd7ba3cfa4fa9580c25c5.zip | |
Merge pull request #583 from busstoptaktik/destructor
Introduce a default destructor for PJ objects
Diffstat (limited to 'src/PJ_unitconvert.c')
| -rw-r--r-- | src/PJ_unitconvert.c | 44 |
1 files changed, 11 insertions, 33 deletions
diff --git a/src/PJ_unitconvert.c b/src/PJ_unitconvert.c index 8581dcad..c5cf93ae 100644 --- a/src/PJ_unitconvert.c +++ b/src/PJ_unitconvert.c @@ -65,9 +65,9 @@ Last update: 2017-05-16 #define PJ_LIB__ #include <time.h> -#include "proj_internal.h" -#include <projects.h> #include <errno.h> +#include "proj_internal.h" +#include "projects.h" PROJ_HEAD(unitconvert, "Unit conversion"); @@ -199,28 +199,6 @@ struct pj_opaque_unitconvert { /***********************************************************************/ -static void *freeup_msg (PJ *P, int errlev) { -/***********************************************************************/ - if (0==P) - return 0; - - if (0!=P->ctx) - pj_ctx_set_errno (P->ctx, errlev); - - pj_dealloc (P->opaque); - - return pj_dealloc(P); -} - - -/***********************************************************************/ -static void freeup (PJ *P) { -/***********************************************************************/ - freeup_msg (P, 0); - return; -} - -/***********************************************************************/ static XY forward_2d(LP lp, PJ *P) { /************************************************************************ Forward unit conversions in the plane @@ -335,7 +313,7 @@ PJ *PROJECTION(unitconvert) { int i; if (0==Q) - return freeup_msg (P, ENOMEM); + return pj_default_destructor (P, ENOMEM); P->opaque = (void *) Q; P->fwdobs = forward_obs; @@ -355,7 +333,7 @@ PJ *PROJECTION(unitconvert) { if ((name = pj_param (P->ctx, P->params, "sxy_in").s) != NULL) { for (i = 0; (s = pj_units[i].id) && strcmp(name, s) ; ++i); - if (!s) return freeup_msg(P, -8); /* unknown unit conversion id */ + if (!s) return pj_default_destructor(P, PJD_ERR_UNKNOW_UNIT_ID); Q->xy_in_id = i; proj_log_debug(P, "xy_in unit: %s", pj_units[i].name); @@ -364,7 +342,7 @@ PJ *PROJECTION(unitconvert) { if ((name = pj_param (P->ctx, P->params, "sxy_out").s) != NULL) { for (i = 0; (s = pj_units[i].id) && strcmp(name, s) ; ++i); - if (!s) return freeup_msg(P, -8); /* unknown unit conversion id */ + if (!s) return pj_default_destructor(P, PJD_ERR_UNKNOW_UNIT_ID); Q->xy_out_id = i; proj_log_debug(P, "xy_out unit: %s", pj_units[i].name); @@ -373,7 +351,7 @@ PJ *PROJECTION(unitconvert) { if ((name = pj_param (P->ctx, P->params, "sz_in").s) != NULL) { for (i = 0; (s = pj_units[i].id) && strcmp(name, s) ; ++i); - if (!s) return freeup_msg(P, -8); /* unknown unit conversion id */ + if (!s) return pj_default_destructor(P, PJD_ERR_UNKNOW_UNIT_ID); /* unknown unit conversion id */ Q->z_in_id = i; proj_log_debug(P, "z_in unit: %s", pj_units[i].name); @@ -382,7 +360,7 @@ PJ *PROJECTION(unitconvert) { if ((name = pj_param (P->ctx, P->params, "sz_out").s) != NULL) { for (i = 0; (s = pj_units[i].id) && strcmp(name, s) ; ++i); - if (!s) return freeup_msg(P, -8); /* unknown unit conversion id */ + if (!s) return pj_default_destructor(P, PJD_ERR_UNKNOW_UNIT_ID); /* unknown unit conversion id */ Q->z_out_id = i; proj_log_debug(P, "z_out unit: %s", pj_units[i].name); @@ -392,7 +370,7 @@ PJ *PROJECTION(unitconvert) { if ((name = pj_param (P->ctx, P->params, "st_in").s) != NULL) { for (i = 0; (s = time_units[i].id) && strcmp(name, s) ; ++i); - if (!s) return freeup_msg(P, -8); /* unknown unit conversion id */ + if (!s) return pj_default_destructor(P, PJD_ERR_UNKNOW_UNIT_ID); /* unknown unit conversion id */ Q->t_in_id = i; proj_log_debug(P, "t_in unit: %s", time_units[i].name); @@ -401,9 +379,9 @@ PJ *PROJECTION(unitconvert) { s = 0; if ((name = pj_param (P->ctx, P->params, "st_out").s) != NULL) { for (i = 0; (s = time_units[i].id) && strcmp(name, s) ; ++i); - if (!s) { - return freeup_msg(P, -8); /* unknown unit conversion id */ - } + + if (!s) return pj_default_destructor(P, PJD_ERR_UNKNOW_UNIT_ID); /* unknown unit conversion id */ + Q->t_out_id = i; proj_log_debug(P, "t_out unit: %s", time_units[i].name); } |
