Commit graph

37 commits

Author SHA1 Message Date
artemp
a8a90b7656 use std::lock_guard instead of unique_lock (better fit for the job) 2015-05-20 16:12:22 +01:00
Dane Springmeyer
930eb184d8 pedantic proj api usage 2015-04-26 23:24:19 +02:00
artemp
333965b588 update copyright year 2014-11-20 15:25:50 +01:00
Dane Springmeyer
471eaed9df initialize is_geographic 2014-08-08 12:00:20 -07:00
Dane Springmeyer
28a05c96ef iwyu + faster compile 2014-07-22 19:36:39 -07:00
Oliver Tonnhofer
2c38670443 prevent double-free in mapnik::projection
A double-free can happen when init_proj4 is called outside of the
constructor (for projections with defer_proj_init=true) and when that
call fails. In this case proj_ctx_ is not set to NULL and then freed
again in the destructor. Set to null to avoid second pj_ctx_free call.

See #2170
2014-03-08 19:51:42 -08:00
artemp
eb3da7d32d c++11 : use nullptr instead of NULL 2013-11-27 15:54:16 +00:00
artemp
582ca02f44 remove unused boost.thread includes 2013-10-11 13:39:39 +01:00
artemp
0e40b3c87d == c++11
use std::thread (removes boost.thread dependency)
2013-10-11 13:20:46 +01:00
Dane Springmeyer
3b2bdba7b0 iwyu 2013-06-02 20:19:33 -07:00
Dane Springmeyer
7302b3b654 fix #1865 2013-05-24 16:45:02 -07:00
artemp
9b138728d0 + fix assignment operator #1776 2013-03-27 10:39:02 +00:00
Dane Springmeyer
cf11a27a22 remove hardcoded define to enable proj4 2013-01-29 02:03:04 -05:00
Dane Springmeyer
3969ac246d make proj4 able to be fully disabled at compile time - refs #1703 2013-01-28 13:45:41 -05:00
Dane Springmeyer
f8b1520d1a refactor projection interface: 1. cleanup custom lonlat<->merc code. 2. centralize proj4 strings into constants, 3. tweak projection benchmarking to allocate objects in loop so we can test that specifically - refs #1703 2013-01-28 01:47:32 -05:00
Dane Springmeyer
7c58bf9fcb replace boost::trim with faster custom trim - closes #1633 2012-12-07 14:06:13 -08:00
Dane Springmeyer
1941a700a4 add compile time warning if building against proj < 4.8 2012-04-11 08:23:41 -07:00
Dane Springmeyer
7cca1489b7 fix memory leak of pj_ctx if a projection cannot be initialized 2012-04-11 08:06:29 -07:00
kunitoki
af201551b8 got rid of old CVS $Id comments kludge in files 2012-04-08 02:45:01 +02:00
Dane Springmeyer
98e470903c less lexical cast - refs #1055 2012-04-06 13:39:13 -07:00
Dane Springmeyer
7c529600eb Revert "avoid mutex locks on pj_transform for proj 4.7 and above - closes #1072"
This reverts commit 0748d2beea.
2012-03-24 08:03:15 -07:00
Dane Springmeyer
0748d2beea avoid mutex locks on pj_transform for proj 4.7 and above - closes #1072 2012-02-09 17:28:31 -08:00
Dane Springmeyer
17d13cff67 whitespace fixes - closes #911 2012-02-01 17:53:35 -08:00
kunitoki
f1fb0c1939 - fix copyright to 2011 (script to do this will follow) 2011-10-23 15:04:25 +02:00
Dane Springmeyer
ba15947a4f add Projection.expanded() function to ask proj4 what its internal, normalized definition looks like (useful only for debugging) 2011-05-17 19:05:15 +00:00
Tom Hughes
05ab656b57 The upcoming 4.8.0 release of PROJ.4 is supposed to be threadsafe, so
lets believe them and not use any locks if we are building against
version 4.8.0 or later.

Instead we use the new proj_ctx_alloc routine to create a context and
pass that when initialising the projection structure.
2010-09-24 15:26:50 +00:00
Dane Springmeyer
df42fcde56 locking is required around pj_init_plus (partial revert of 2063) as it appears pj_init_plus will fail under high concurrent load even with proj 4.7.0 (only seen when reprojecting data) and will likely require use of a context (available in next release) if we wish to remove locks 2010-08-27 22:05:15 +00:00
Artem Pavlenko
f9b9c14500 pass parameters by const ref 2010-08-05 11:56:11 +00:00
Dane Springmeyer
f802d21865 speed optimizations by more careful use (or avoidance) of locking around projection code 2010-07-21 23:05:22 +00:00
Artem Pavlenko
246731874b + apply 'mapnik-format' to *.cpp *.hpp 2010-06-02 11:03:30 +00:00
Artem Pavlenko
97a40d7e7e + fix msvc-9.0 compiler warnings 2009-02-17 23:19:28 +00:00
Artem Pavlenko
6062f42bbe + applied patch avoid_extent from rcoup 2008-11-19 21:50:12 +00:00
Artem Pavlenko
f3a3ce04db convert to degrees if projection is geographic 2008-02-20 12:44:34 +00:00
Artem Pavlenko
b44762e592 allow multi/single threaded variants 2008-02-04 16:12:13 +00:00
Artem Pavlenko
f4949ffca5 patch from TomH adds a global mutex to protect all access to the
proj4 library and ensure that only one thread can be inside a call to
the library at a time.
2008-02-04 11:54:07 +00:00
David
bc54b150ea - reversed header include order 2007-10-08 17:42:41 +00:00
Artem Pavlenko
110016fe78 1. refactored proj stuff into separate files
2. added is_geographic property
3. added basic support for text_symbolizer in load_map
2006-10-17 17:26:35 +00:00