mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	Fixed #25585 -- Allowed setting OGRGeometry srid/srs attributes to None.
				
					
				
			This commit is contained in:
		
				
					committed by
					
						 Tim Graham
						Tim Graham
					
				
			
			
				
	
			
			
			
						parent
						
							80855a4b37
						
					
				
				
					commit
					0dbe897ab5
				
			| @@ -270,6 +270,8 @@ class OGRGeometry(GDALBase): | ||||
|         elif isinstance(srs, six.integer_types + six.string_types): | ||||
|             sr = SpatialReference(srs) | ||||
|             srs_ptr = sr.ptr | ||||
|         elif srs is None: | ||||
|             srs_ptr = None | ||||
|         else: | ||||
|             raise TypeError('Cannot assign spatial reference with object of type: %s' % type(srs)) | ||||
|         capi.assign_srs(self.ptr, srs_ptr) | ||||
| @@ -284,7 +286,7 @@ class OGRGeometry(GDALBase): | ||||
|         return None | ||||
|  | ||||
|     def _set_srid(self, srid): | ||||
|         if isinstance(srid, six.integer_types): | ||||
|         if isinstance(srid, six.integer_types) or srid is None: | ||||
|             self.srs = srid | ||||
|         else: | ||||
|             raise TypeError('SRID must be set with an integer.') | ||||
|   | ||||
| @@ -320,6 +320,11 @@ class OGRGeomTest(unittest.TestCase, TestDataMixin): | ||||
|                     self.assertEqual('WGS 72', ring.srs.name) | ||||
|                     self.assertEqual(4322, ring.srid) | ||||
|  | ||||
|             # srs/srid may be assigned their own values, even when srs is None. | ||||
|             mpoly = OGRGeometry(mp.wkt, srs=None) | ||||
|             mpoly.srs = mpoly.srs | ||||
|             mpoly.srid = mpoly.srid | ||||
|  | ||||
|     def test_srs_transform(self): | ||||
|         "Testing transform()." | ||||
|         orig = OGRGeometry('POINT (-104.609 38.255)', 4326) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user