From bdb02c7c5a36d501b8c856dee539a5f28db2c36f Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Tue, 23 May 2017 22:28:43 +0200 Subject: pj_transform(): fix segfault when z == NULL and dest defn has a fwd3d Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1794 Credit to OSS Fuzz --- src/pj_transform.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src') diff --git a/src/pj_transform.c b/src/pj_transform.c index 212d8842..f566fcfc 100644 --- a/src/pj_transform.c +++ b/src/pj_transform.c @@ -344,6 +344,13 @@ int pj_transform( PJ *srcdefn, PJ *dstdefn, long point_count, int point_offset, if( dstdefn->fwd3d != NULL) { + /* Three dimensions must be defined */ + if ( z == NULL) + { + pj_ctx_set_errno( pj_get_ctx(dstdefn), PJD_ERR_GEOCENTRIC); + return PJD_ERR_GEOCENTRIC; + } + for( i = 0; i < point_count; i++ ) { XYZ projected_loc; -- cgit v1.2.3