-
Bug
-
Resolution: External
-
P4
-
17, 18, 19
-
linux
Even after JDK-8282628, valgrind still complains memory leaks in getFontConfig() in fontpath.c.
To reproduce:
valgrind --log-file=memleak.log --leak-resolution=high --num-callers=40 --show-leak-kinds=definite --track-origins=yes --error-limit=no --trace-children=no --child-silent-after-fork=yes --leak-check=full ${JAVA_HOME}/bin/java -jar Stylepad.jar
Uses release version of JDK to avoid some unnecessary noise.
==778159== 3 bytes in 1 blocks are definitely lost in loss record 11 of 10,703
==778159== at 0x484486F: malloc (vg_replace_malloc.c:381)
==778159== by 0x4939FEE: strdup (strdup.c:42)
==778159== by 0x47A634E5: ???
==778159== by 0x47A638DC: ???
==778159== by 0x33FB38B0: Java_sun_font_FontConfigManager_getFontConfig (fontpath.c:1000)
==778159== by 0xEF215D0: ???
.....
==778159== by 0x56F5B64: JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*) (javaCalls.cpp:416)
==778159== 5 bytes in 1 blocks are definitely lost in loss record 20 of 10,703
==778159== at 0x484486F: malloc (vg_replace_malloc.c:381)
==778159== by 0x4939FEE: strdup (strdup.c:42)
==778159== by 0x47A5D419: ???
==778159== by 0x47A582F7: ???
==778159== by 0x33FB38A4: Java_sun_font_FontConfigManager_getFontConfig (fontpath.c:999)
.....
==778159== by 0x56F5B64: JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*) (javaCalls.cpp:416)
==778159== 36 bytes in 1 blocks are definitely lost in loss record 5,100 of 10,703
==778159== at 0x484486F: malloc (vg_replace_malloc.c:381)
==778159== by 0x4939FEE: strdup (strdup.c:42)
==778159== by 0x47A76B27: ???
==778159== by 0x47BBF324: ???
==778159== by 0x47BC8AAE: ???
==778159== by 0x47AE43D8: ???
==778159== by 0x47A785B0: ???
==778159== by 0x47A78E99: ???
==778159== by 0x47A79180: ???
==778159== by 0x47A7493B: ???
==778159== by 0x47BBF324: ???
==778159== by 0x47BC8AAE: ???
==778159== by 0x47AE43D8: ???
==778159== by 0x47A785B0: ???
==778159== by 0x47A78E99: ???
==778159== by 0x47A5DCA0: ???
==778159== by 0x47A5646A: ???
==778159== by 0x47A56FC4: ???
==778159== by 0x33FB36D9: Java_sun_font_FontConfigManager_getFontConfig (fontpath.c:940)
....
To reproduce:
valgrind --log-file=memleak.log --leak-resolution=high --num-callers=40 --show-leak-kinds=definite --track-origins=yes --error-limit=no --trace-children=no --child-silent-after-fork=yes --leak-check=full ${JAVA_HOME}/bin/java -jar Stylepad.jar
Uses release version of JDK to avoid some unnecessary noise.
==778159== 3 bytes in 1 blocks are definitely lost in loss record 11 of 10,703
==778159== at 0x484486F: malloc (vg_replace_malloc.c:381)
==778159== by 0x4939FEE: strdup (strdup.c:42)
==778159== by 0x47A634E5: ???
==778159== by 0x47A638DC: ???
==778159== by 0x33FB38B0: Java_sun_font_FontConfigManager_getFontConfig (fontpath.c:1000)
==778159== by 0xEF215D0: ???
.....
==778159== by 0x56F5B64: JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*) (javaCalls.cpp:416)
==778159== 5 bytes in 1 blocks are definitely lost in loss record 20 of 10,703
==778159== at 0x484486F: malloc (vg_replace_malloc.c:381)
==778159== by 0x4939FEE: strdup (strdup.c:42)
==778159== by 0x47A5D419: ???
==778159== by 0x47A582F7: ???
==778159== by 0x33FB38A4: Java_sun_font_FontConfigManager_getFontConfig (fontpath.c:999)
.....
==778159== by 0x56F5B64: JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*) (javaCalls.cpp:416)
==778159== 36 bytes in 1 blocks are definitely lost in loss record 5,100 of 10,703
==778159== at 0x484486F: malloc (vg_replace_malloc.c:381)
==778159== by 0x4939FEE: strdup (strdup.c:42)
==778159== by 0x47A76B27: ???
==778159== by 0x47BBF324: ???
==778159== by 0x47BC8AAE: ???
==778159== by 0x47AE43D8: ???
==778159== by 0x47A785B0: ???
==778159== by 0x47A78E99: ???
==778159== by 0x47A79180: ???
==778159== by 0x47A7493B: ???
==778159== by 0x47BBF324: ???
==778159== by 0x47BC8AAE: ???
==778159== by 0x47AE43D8: ???
==778159== by 0x47A785B0: ???
==778159== by 0x47A78E99: ???
==778159== by 0x47A5DCA0: ???
==778159== by 0x47A5646A: ???
==778159== by 0x47A56FC4: ???
==778159== by 0x33FB36D9: Java_sun_font_FontConfigManager_getFontConfig (fontpath.c:940)
....