[geos-devel] [GEOS] #767: "definitely lost" memory leak in rgeos_Init (rgeos.c:57)

GEOS geos-trac at osgeo.org
Thu Feb 4 01:59:22 PST 2016


#767: "definitely lost" memory leak in rgeos_Init (rgeos.c:57)
-------------------------+-------------------------------------------
 Reporter:  philae       |      Owner:  geos-devel@…
     Type:  defect       |     Status:  new
 Priority:  major        |  Milestone:  3.5.1
Component:  Default      |    Version:  3.5.0
 Severity:  Significant  |   Keywords:  leak,rgeos,rgeos_Init,rgeos.c
-------------------------+-------------------------------------------
 Dear GEOS maintainers,

 Thanks for this great software!

 I would like to file a bug spotted via Valgrind while loading the R rgeos
 package. Below are the steps to reproduce it.

 === Create an R script "load_only.R" to attach the package
 > require("rgeos")


 === Run and debug the script using Valgring (Bash Shell)
 {{{#!bash
 $ R -d "valgrind --leak-check=full --show-reachable=yes --leak-check=full
 --leak-resolution=high --show-leak-kinds=all --errors-for-leak-kinds=all
 --log-file=logs" -f load_only.R
 }}}


 Valgring reports the following about the leak (I sanitized some paths
 marked as SANITIZED_PATH and R-LIB_PATH):
 {{{
 40 bytes in 1 blocks are definitely lost in loss record 31 of 2,297
 at 0x4C28C50: malloc (in SANITIZED_PATH/valgrind/vgpreload_memcheck-
 amd64-linux.so)
 by 0x16525093: initGEOS_r (in SANITIZED_PATH/libgeos_c.so.1.8.2)
 by 0x15F5E738: rgeos_Init (rgeos.c:57)
 by 0x4F0B34F: ??? (in R-LIB_PATH/R/lib/libR.so)
 by 0x4F419DF: Rf_eval (in R-LIB_PATH/R/lib/libR.so)
 by 0x4F43E87: ??? (in R-LIB_PATH/R/lib/libR.so)
 by 0x4F417D0: Rf_eval (in R-LIB_PATH/R/lib/libR.so)
 by 0x4F42E3D: Rf_applyClosure (in R-LIB_PATH/R/lib/libR.so)
 by 0x4F415AC: Rf_eval (in R-LIB_PATH/R/lib/libR.so)
 by 0x4F41CDA: ??? (in R-LIB_PATH/R/lib/libR.so)
 by 0x4F41A3E: Rf_eval (in R-LIB_PATH/R/lib/libR.so)
 }}}

 The R session data is:
 {{{#!r
 packageVersion("rgeos")
 }}}
 {{{
 [1] ‘0.3.15’
 }}}
 {{{#!r
 xxx <- sessionInfo()
 xxx$R.version$version.string
 }}}
 {{{
 [1] "R version 3.2.3 (2015-12-10)"
 }}}
 {{{#!r
 xxx$platform
 }}}
 {{{
 [1] "x86_64-redhat-linux-gnu (64-bit)"
 }}}

--
Ticket URL: <http://trac.osgeo.org/geos/ticket/767>
GEOS <http://trac.osgeo.org/geos>
GEOS (Geometry Engine - Open Source) is a C++ port of the Java Topology Suite (JTS).


More information about the geos-devel mailing list