==25377== Memcheck, a memory error detector ==25377== Copyright (C) 2002-2009, and GNU GPL'd, by Julian Seward et al. ==25377== Using Valgrind-3.5.0 and LibVEX; rerun with -h for copyright info ==25377== Command: ogrinfo -ro -al ../autotest/ogr/data/bylany.vfk ==25377== ==25377== ==25377== HEAP SUMMARY: ==25377== in use at exit: 3,714 bytes in 142 blocks ==25377== total heap usage: 29,135 allocs, 28,993 frees, 681,613 bytes allocated ==25377== ==25377== 2 bytes in 1 blocks are definitely lost in loss record 1 of 18 ==25377== at 0x4025BDC: malloc (vg_replace_malloc.c:195) ==25377== by 0x56BE51F: strdup (in /lib/libc-2.11.so) ==25377== by 0x4524C5D: VSIStrdup (cpl_vsisimple.cpp:498) ==25377== by 0x45095A0: CPLStrdup (cpl_conv.cpp:227) ==25377== by 0x46B5D4B: VFKProperty::VFKProperty(char const*) (vfkproperty.cpp:70) ==25377== by 0x46B537E: VFKFeature::SetProperty(int, char const*) (vfkfeature.cpp:99) ==25377== by 0x46AE546: VFKDataBlock::AddFeature(char const*) (vfkdatablock.cpp:260) ==25377== by 0x46B647C: VFKReader::LoadDataBlocks() (vfkreader.cpp:235) ==25377== by 0x4673A3E: OGRVFKDataSource::Open(char const*, int) (ogrvfkdatasource.cpp:128) ==25377== by 0x4673E87: OGRVFKDriver::Open(char const*, int) (ogrvfkdriver.cpp:72) ==25377== by 0x4661C88: OGRSFDriverRegistrar::Open(char const*, int, OGRSFDriver**) (ogrsfdriverregistrar.cpp:209) ==25377== by 0x8049DFE: main (ogrinfo.cpp:174) ==25377== ==25377== 56 (24 direct, 32 indirect) bytes in 1 blocks are definitely lost in loss record 8 of 18 ==25377== at 0x4026350: operator new(unsigned int) (vg_replace_malloc.c:214) ==25377== by 0x46BB525: OGRLineString::clone() const (ogrlinestring.cpp:107) ==25377== by 0x46B54E9: VFKFeature::SetGeometry(OGRGeometry*) (vfkfeature.cpp:169) ==25377== by 0x46AF3CB: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:723) ==25377== by 0x46AF4A9: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:739) ==25377== by 0x46AF812: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:790) ==25377== by 0x46AE6A6: VFKDataBlock::GetNextFeature() (vfkdatablock.cpp:315) ==25377== by 0x4674366: OGRVFKLayer::GetNextFeature() (ogrvfklayer.cpp:201) ==25377== by 0x463C4F6: OGRLayer::GetExtent(OGREnvelope*, int) (ogrlayer.cpp:226) ==25377== by 0x804A571: ReportOnLayer(OGRLayer*, char const*, OGRGeometry*) (ogrinfo.cpp:377) ==25377== by 0x804A29B: main (ogrinfo.cpp:284) ==25377== ==25377== 272 (20 direct, 252 indirect) bytes in 1 blocks are definitely lost in loss record 10 of 18 ==25377== at 0x4026350: operator new(unsigned int) (vg_replace_malloc.c:214) ==25377== by 0x46BEDD9: OGRPolygon::clone() const (ogrpolygon.cpp:71) ==25377== by 0x46B54E9: VFKFeature::SetGeometry(OGRGeometry*) (vfkfeature.cpp:169) ==25377== by 0x46AFEBD: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:863) ==25377== by 0x46AE6A6: VFKDataBlock::GetNextFeature() (vfkdatablock.cpp:315) ==25377== by 0x4674366: OGRVFKLayer::GetNextFeature() (ogrvfklayer.cpp:201) ==25377== by 0x463C4F6: OGRLayer::GetExtent(OGREnvelope*, int) (ogrlayer.cpp:226) ==25377== by 0x804A571: ReportOnLayer(OGRLayer*, char const*, OGRGeometry*) (ogrinfo.cpp:377) ==25377== by 0x804A29B: main (ogrinfo.cpp:284) ==25377== ==25377== 468 bytes in 13 blocks are definitely lost in loss record 13 of 18 ==25377== at 0x4026350: operator new(unsigned int) (vg_replace_malloc.c:214) ==25377== by 0x46BA521: OGRPoint::clone() const (ogrpoint.cpp:97) ==25377== by 0x46B54E9: VFKFeature::SetGeometry(OGRGeometry*) (vfkfeature.cpp:169) ==25377== by 0x46AF136: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:677) ==25377== by 0x46AF1FC: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:694) ==25377== by 0x46AF4A9: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:739) ==25377== by 0x46AF812: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:790) ==25377== by 0x46AE6A6: VFKDataBlock::GetNextFeature() (vfkdatablock.cpp:315) ==25377== by 0x4674366: OGRVFKLayer::GetNextFeature() (ogrvfklayer.cpp:201) ==25377== by 0x463C4F6: OGRLayer::GetExtent(OGREnvelope*, int) (ogrlayer.cpp:226) ==25377== by 0x804A571: ReportOnLayer(OGRLayer*, char const*, OGRGeometry*) (ogrinfo.cpp:377) ==25377== by 0x804A29B: main (ogrinfo.cpp:284) ==25377== ==25377== 588 (12 direct, 576 indirect) bytes in 1 blocks are definitely lost in loss record 15 of 18 ==25377== at 0x4026350: operator new(unsigned int) (vg_replace_malloc.c:214) ==25377== by 0x46B00FB: VFKDataBlock::AppendLineToRing(std::vector >*, std::allocator >*> >*, OGRLineString const*, bool) (vfkdatablock.cpp:903) ==25377== by 0x46AFCAE: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:843) ==25377== by 0x46AE6A6: VFKDataBlock::GetNextFeature() (vfkdatablock.cpp:315) ==25377== by 0x4674366: OGRVFKLayer::GetNextFeature() (ogrvfklayer.cpp:201) ==25377== by 0x463C4F6: OGRLayer::GetExtent(OGREnvelope*, int) (ogrlayer.cpp:226) ==25377== by 0x804A571: ReportOnLayer(OGRLayer*, char const*, OGRGeometry*) (ogrinfo.cpp:377) ==25377== by 0x804A29B: main (ogrinfo.cpp:284) ==25377== ==25377== 672 (288 direct, 384 indirect) bytes in 12 blocks are definitely lost in loss record 16 of 18 ==25377== at 0x4026350: operator new(unsigned int) (vg_replace_malloc.c:214) ==25377== by 0x46BB525: OGRLineString::clone() const (ogrlinestring.cpp:107) ==25377== by 0x46B54E9: VFKFeature::SetGeometry(OGRGeometry*) (vfkfeature.cpp:169) ==25377== by 0x46AF31B: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:709) ==25377== by 0x46AF4A9: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:739) ==25377== by 0x46AF812: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:790) ==25377== by 0x46AE6A6: VFKDataBlock::GetNextFeature() (vfkdatablock.cpp:315) ==25377== by 0x4674366: OGRVFKLayer::GetNextFeature() (ogrvfklayer.cpp:201) ==25377== by 0x463C4F6: OGRLayer::GetExtent(OGREnvelope*, int) (ogrlayer.cpp:226) ==25377== by 0x804A571: ReportOnLayer(OGRLayer*, char const*, OGRGeometry*) (ogrinfo.cpp:377) ==25377== by 0x804A29B: main (ogrinfo.cpp:284) ==25377== ==25377== 728 (312 direct, 416 indirect) bytes in 13 blocks are definitely lost in loss record 17 of 18 ==25377== at 0x4026350: operator new(unsigned int) (vg_replace_malloc.c:214) ==25377== by 0x46BB525: OGRLineString::clone() const (ogrlinestring.cpp:107) ==25377== by 0x46B54E9: VFKFeature::SetGeometry(OGRGeometry*) (vfkfeature.cpp:169) ==25377== by 0x46AF653: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:756) ==25377== by 0x46AF812: VFKDataBlock::LoadGeometry() (vfkdatablock.cpp:790) ==25377== by 0x46AE6A6: VFKDataBlock::GetNextFeature() (vfkdatablock.cpp:315) ==25377== by 0x4674366: OGRVFKLayer::GetNextFeature() (ogrvfklayer.cpp:201) ==25377== by 0x463C4F6: OGRLayer::GetExtent(OGREnvelope*, int) (ogrlayer.cpp:226) ==25377== by 0x804A571: ReportOnLayer(OGRLayer*, char const*, OGRGeometry*) (ogrinfo.cpp:377) ==25377== by 0x804A29B: main (ogrinfo.cpp:284) ==25377== ==25377== 856 bytes in 67 blocks are definitely lost in loss record 18 of 18 ==25377== at 0x4025BDC: malloc (vg_replace_malloc.c:195) ==25377== by 0x56BE51F: strdup (in /lib/libc-2.11.so) ==25377== by 0x4524C5D: VSIStrdup (cpl_vsisimple.cpp:498) ==25377== by 0x45095A0: CPLStrdup (cpl_conv.cpp:227) ==25377== by 0x46B5D4B: VFKProperty::VFKProperty(char const*) (vfkproperty.cpp:70) ==25377== by 0x46B537E: VFKFeature::SetProperty(int, char const*) (vfkfeature.cpp:99) ==25377== by 0x46AE4A0: VFKDataBlock::AddFeature(char const*) (vfkdatablock.cpp:244) ==25377== by 0x46B647C: VFKReader::LoadDataBlocks() (vfkreader.cpp:235) ==25377== by 0x4673A3E: OGRVFKDataSource::Open(char const*, int) (ogrvfkdatasource.cpp:128) ==25377== by 0x4673E87: OGRVFKDriver::Open(char const*, int) (ogrvfkdriver.cpp:72) ==25377== by 0x4661C88: OGRSFDriverRegistrar::Open(char const*, int, OGRSFDriver**) (ogrsfdriverregistrar.cpp:209) ==25377== by 0x8049DFE: main (ogrinfo.cpp:174) ==25377== ==25377== LEAK SUMMARY: ==25377== definitely lost: 1,982 bytes in 109 blocks ==25377== indirectly lost: 1,660 bytes in 30 blocks ==25377== possibly lost: 0 bytes in 0 blocks ==25377== still reachable: 72 bytes in 3 blocks ==25377== suppressed: 0 bytes in 0 blocks ==25377== Reachable blocks (those to which a pointer was found) are not shown. ==25377== To see them, rerun with: --leak-check=full --show-reachable=yes ==25377== ==25377== For counts of detected and suppressed errors, rerun with: -v ==25377== ERROR SUMMARY: 8 errors from 8 contexts (suppressed: 113 from 8)