[GRASS-dev] [GRASS GIS] #1339: Corrupted Shapefile causes buffer
overflows, assetions etc.
GRASS GIS
trac at osgeo.org
Thu Mar 31 06:54:49 EDT 2011
#1339: Corrupted Shapefile causes buffer overflows, assetions etc.
-------------------------+--------------------------------------------------
Reporter: marisn | Owner: grass-dev@…
Type: defect | Status: new
Priority: normal | Milestone: 6.4.2
Component: Vector | Version: unspecified
Keywords: | Platform: Unspecified
Cpu: Unspecified |
-------------------------+--------------------------------------------------
One of my students managed to create a slightly corrupted shapefile.
ArcGIS and QuantumGIS manage to deal with this file. OGR reports one of
points having coordinates 0,0. File extent is reported as correct one -
corrupted point lies outside of extent. Tested on Gentoo ~AMD64.
Part of OGRINFO output:
{{{
Layer name: augstumpunkti1
Geometry: Point
Feature Count: 60
Extent: (520046.672571, 6302258.489785) - (576734.883380, 6313825.790398)
Layer SRS WKT:
PROJCS["GRS_1980_Transverse_Mercator",
GEOGCS["GCS_GRS_1980",
DATUM["Not_specified_based_on_GRS_1980_ellipsoid",
SPHEROID["GRS_1980",6378137.0,298.257222101]],
PRIMEM["Greenwich",0.0],
UNIT["Degree",0.0174532925199433]],
PROJECTION["Transverse_Mercator"],
PARAMETER["False_Easting",500000.0],
PARAMETER["False_Northing",0.0],
PARAMETER["Central_Meridian",24.0],
PARAMETER["Scale_Factor",0.9996],
PARAMETER["Latitude_Of_Origin",0.0],
UNIT["Meter",1.0]]
....
OGRFeature(augstumpunkti1):43
Id (Integer) = 0
augstums (Real) = 80.00000000000
POINT (563662.082802134566009 6309812.449835392646492)
OGRFeature(augstumpunkti1):44
Id (Integer) = 0
augstums (Real) = 90.00000000000
POINT (0 0)
OGRFeature(augstumpunkti1):45
Id (Integer) = 0
augstums (Real) = 82.80000000000
POINT (565468.073194714379497 6308844.121653324924409)
}}}
GRASS 7 imports this file just fine, but almost everything touching this
file fails.
v.out.ascii
{{{
563662.08280213|6309812.44983539|44
-179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368|-179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368|45
565468.07319471|6308844.12165332|46
}}}
v.in.ogr in 6.5:
{{{
Building topology for vector map <augst3_tmp>...
Registering primitives...
v.in.ogr: split_q.c:69: RTreeClassify: Assertion `!p->taken[i]' failed.
Aborted
}}}
--
Ticket URL: <http://trac.osgeo.org/grass/ticket/1339>
GRASS GIS <http://grass.osgeo.org>
More information about the grass-dev
mailing list