aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrank Warmerdam <warmerdam@pobox.com>2007-01-31 06:41:01 +0000
committerFrank Warmerdam <warmerdam@pobox.com>2007-01-31 06:41:01 +0000
commit34cf9faf50c6c1b1abe4103fe4e2ebf88186fb20 (patch)
treea597e4caa3466bff74543309a0e62c54283a386f
parent7f499a566e62b5d487c794fe2e866b3553a14bd5 (diff)
downloadPROJ-34cf9faf50c6c1b1abe4103fe4e2ebf88186fb20.tar.gz
PROJ-34cf9faf50c6c1b1abe4103fe4e2ebf88186fb20.zip
dont parse more datum parameters than we have room for in datum_params[]
git-svn-id: http://svn.osgeo.org/metacrs/proj/trunk@1388 4e78687f-474d-0410-85f9-8d5e500ac6b2
-rw-r--r--ChangeLog5
-rw-r--r--src/pj_datum_set.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index a5a687f9..983a1af7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-01-31 Frank Warmerdam <warmerdam@pobox.com>
+
+ * src/pj_datum_set.cpp: Don't parse more datum shift parameters than
+ we have space to store in datum_params[].
+
2006-11-02 Frank Warmerdam <warmerdam@pobox.com>
* src/rtodms.c: Fix computation of degree per bug described on the
diff --git a/src/pj_datum_set.c b/src/pj_datum_set.c
index a121ed2f..327fc3a4 100644
--- a/src/pj_datum_set.c
+++ b/src/pj_datum_set.c
@@ -28,6 +28,9 @@
******************************************************************************
*
* $Log$
+ * Revision 1.3 2007/01/31 06:41:01 fwarmerdam
+ * dont parse more datum parameters than we have room for in datum_params[]
+ *
* Revision 1.2 2001/04/04 21:13:21 warmerda
* do arcsecond/radian and ppm datum parm transformation in pj_set_datum()
*
@@ -113,7 +116,7 @@ int pj_datum_set(paralist *pl, PJ *projdef)
/* parse out the parameters */
s = towgs84;
- for( s = towgs84; *s != '\0'; )
+ for( s = towgs84; *s != '\0' && parm_count < (sizeof(projdef->datum_params) / sizeof(double)); )
{
projdef->datum_params[parm_count++] = atof(s);
while( *s != '\0' && *s != ',' )