| Age | Commit message (Collapse) | Author |
|
|
|
Fixes #173, #187 and #220
|
|
* Resolve #594 and OSS-Fuzz-3569
* Restructure PJ_geos opaque object: sweep_axis showed unneeded, and freeing it was wrong. Eliminate instead
Resolves #594
Resolves OSS-Fuzz Issue 3569
Credit to OSS-Fuzz
|
|
Cleaned up the use of PJ_IO_UNITS_CLASSIC, so it means only one thing: That output is linear and measured in units of the semimajor axis. This made it possible to remove a number of checks that had now become superfluous
Corrected pj_roundtrip, so it takes PJ_COORD args, rather than PJ_OBS, and made it measure geodesic distances, rather than cartesian, where it makes sense
|
|
proper geodesic distances for forward roundtrips
|
|
|
|
|
|
|
|
Introduce a default destructor for PJ objects
|
|
it gives consistent results, and is more safe than the original hack of setting es=0
|
|
Elim some leaks by initializing PJ.destructor in PJ_ob_tran.c properly
Avoid tests bombing when built with address sanitizer: Repair memory leak in test228.c
Avoid tests bombing when built with address sanitizer: Repair memory leak in multistresstest.c
|
|
In most cases memory deallocation is completely removed from the
code since it can be handled by the default destructor. In a few
special cases a local destructor overrides the default destructor
and makes sure that locally allocated memored is cleaned up correctly.
Move all deallocation from pj_free to pj_default_destructor
Rename pj_latlong.c to fit with the conventional format PJ_latlong.c - freeup was missed here due to wrong naming
Clean up pj_init to avoid double deallocation; Also resolve #576 by adding z_0 and t_0 options in pj_init, while cleaning
Add a prototype for dealloc_params
Added missing errno.h include in pj_ctx.c
Temporarily removing ob_tran from testvarious, to be sure that is where the trouble is
Make PJ_ob_tran.c use proper initialization for the chained projection
proj=ob_tran: make it clear, that we disallow ellipsoidal projections, and, for improved backwards compatibility, turns off default settings, which could inject unwanted ellipsoid definitions
... then also remove the ellipsoid definition from the testvarious test case - which is probably buggy anyway
Work around cs2cs spherical init bug in testvarious; Forbid defs for ob_tran in pj_init
|
|
* Introducing the cct 'Coordinate Conversion and Transformation' program
* cct: Add some rudimentary documentation
* Removed documentation again, moving to a separate doc PR
* Minor corrections in response to a review by @kbevers
|
|
|
|
|
|
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3449. Credit to OSS Fuzz
|
|
|
|
promises that couldn't be kept
|
|
in proj.h
|
|
|
|
|
|
|
|
|
|
commit they always evaluated as true. Fixes #568.
|
|
proj: Do rad->deg conversion if output units warrants it
|
|
Fix for #566.
|
|
|
|
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3321. Credit to OSS Fuzz
|
|
|
|
With the introduction of transformation pipelines it is possible to
create a pipeline that has degrees as it's output unit. If that is the
case the output coordinate will be in radians internally. This commit
makes sure that a conversion to degrees is applied before printing to
stdout.
|
|
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3288. Credit to OSS Fuzz
|
|
Mixed usage of tabs and spaces replaced with spaces.
Code slightly reformatted to present a consistent style from top to
bottom.
|
|
fix as commit e1ad1046873056ab3bfc3262bd343e8c874f395c. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3276. Credit to OSS Fuzz
|
|
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3274. Credit to OSS Fuzz
|
|
Release candidate for geodesic library version 1.49.
|
|
should have included geodesic.c and not geod.c and yet I'm not allowed
to use geodesic.c except through the library and then the coverage of
geodesic.c seems to be wildly wrong.
|
|
|
|
It's already including in cmake's test suite.
|
|
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3235. Credit to OSS Fuzz
|
|
Only substantial changes are (1) testing the HAVE_C99_MATH flag and
acting accordingly and (2) adding a couple of tests.
|
|
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3204. Credit to OSS Fuzz
|
|
* Added myself and Kristian Evers to AUTHORS file; Removed attribution for my 1999 contribution from proj.c
* Add missing lf before eof
|
|
Fix the Solaris 11.3 compilation error
|
|
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2723. Credit to OSS Fuzz
|
|
* Adding info functions to proj.h API.
Four new functions are added with this commit: proj_info(), proj_pj_info(),
proj_grid_info() and proj_init_info(). Additionally four new data types are
added: PJ_INFO, PJ_PROJ_INFO, PJ_GRID_INFO and PJ_INIT_INFO. The functions
return the corresponding data types.
These functions allows users of the PROJ.4 library to get information about
various PROJ.4 entities and the library itself. The new data types are structs
that contain specific information about either the library instance, a PJ
instance, a grid or an init file. Together the four new functions cover a big
part of the functionality in the semi-public projects.h API and should hopefully
make it easier for user to migrate their code to the proj.h API in the future.
Besides covering already existing functionality in the old API, this commit
introduces the ability to add metadata to init-files. This is primarily added
to give users a way of knowing which version of the EPSG database they are
using, but it also comes in handy for other init-files. The init-file metadata
is added directly to the init-file as a special "projection" called "metadata".
The info projection of the epsg init-file is thus described as:
<metadata> +version=9.0.0 +origin=EPSG +lastupdate=2017-01-10
The proj_init_info() function uses the internal pj_param() to read the
metadata. As a consequence, "metadata" will not be available as a the name of
a projection in the future. This is a reasonable price to pay considering the
ease of the implementation of adding metadata to init-files this way, and of
course that "metadata" is a very unlikely name for a projection in any case.
A metadata tag has been added to all init-files in the nad-directory. For most
only a subset of the possible parameters has been added.
* Replaced calls to sprintf and strncpy with safer options. Added pj_strlcpy for internal use.
* Fail gracefully when getting non-initialized PJ in proj_pj_info()
* Change length of filename member in PJ_INIT_INFO and PJ_GRID_INFO to 260 (MAX_PATH)
|
|
When _XOPEN_SOURCE 500 is defined on Solaris 11 the following error message is displayed : "Compiler or options invalid for pre-UNIX 03 X/Open applications and pre-2001 POSIX applications"
As pthread_mutexattr_settype is available without _XOPEN_SOURCE defined, the easier way to fix the error is to disable it.
|
|
Expose pj_factors and pj_deriv in public API.
proj_derivatives() and proj_factors() has been
introduced to the public proj.h API. The new functions are simply
wrappers for the original functions. The h argument of the two functions
has been omitted in the new wrappers as it does not seem to be used very
much (if at all?).
|
|
Eliminated *_ERROR* macros.
|
|
Expanded *_ERROR* macros with calls to proj_errno_set() and proper
returns when necessary. Defined a bunch of new PJD_ERR_ constants in
projects.h that corresponds to the error numbers in pj_strerrno.c. A few
unknown error numbers were replaced by existing ones in pj_strerrno.c.
|
|
C99).
|