[gnome-db] Memory leaks



I am seeing some memory leaks using libgda 3.0:

==26959== 20 bytes in 4 blocks are definitely lost in loss record 52 of 270
==26959== at 0x40233F0: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==26959==    by 0x4BB4915: xmlStrndup (in /usr/lib/libxml2.so.2.6.26)
==26959==    by 0x4BB4A07: xmlStrdup (in /usr/lib/libxml2.so.2.6.26)
==26959==    by 0x4B61F2D: xmlNewDtd (in /usr/lib/libxml2.so.2.6.26)
==26959==    by 0x4B5B3F6: xmlSAXParseDTD (in /usr/lib/libxml2.so.2.6.26)
==26959==    by 0x4B5B52B: xmlParseDTD (in /usr/lib/libxml2.so.2.6.26)
==26959==    by 0x7730848: gda_init (gda-init.c:99)
- gda_dict_dtd is never freed

==26959== at 0x40234EB: realloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so) ==26959== by 0x55E612A: g_realloc (in /opt/gnome/lib/libglib-2.0.so.0.1200.4)
==26959==    by 0x55FA997: (within /opt/gnome/lib/libglib-2.0.so.0.1200.4)
==26959== by 0x55FB2C2: g_string_insert_len (in /opt/gnome/lib/libglib-2.0.so.0.1200.4) ==26959== by 0x55FB615: g_string_append_len (in /opt/gnome/lib/libglib-2.0.so.0.1200.4)
==26959==    by 0x55D074B: (within /opt/gnome/lib/libglib-2.0.so.0.1200.4)
==26959== by 0x55D094F: g_build_filename (in /opt/gnome/lib/libglib-2.0.so.0.1200.4) ==26959== by 0xBB8A8C1: gda_sqlite_provider_open_connection (gda-sqlite-provider.c:318) ==26959== by 0x7770A74: gda_server_provider_open_connection (gda-server-provider.c:233)
==26959==    by 0x76F60B5: gda_connection_open (gda-connection.c:516)
==26959== by 0x76ECC94: gda_client_open_connection_from_string (gda-client.c:553) - filename is never freed (though it is passed to g_strdup()). There are possibly other instances of this one.

==26959== 78,247 bytes in 10,385 blocks are definitely lost in loss record 260 of 270 ==26959== at 0x40233F0: malloc (in /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so) ==26959== by 0x55E6265: g_malloc (in /opt/gnome/lib/libglib-2.0.so.0.1200.4) ==26959== by 0x55F9A98: g_strdup (in /opt/gnome/lib/libglib-2.0.so.0.1200.4)
==26959==    by 0x777C9D4: tranlex (lexer.l:59)
==26959==    by 0x777B437: tranparse (parser.c:1412)
==26959== by 0x777CF84: gda_sql_transaction_parse_with_error (gda-sql-transaction-parser.c:100) ==26959== by 0x76F34C0: gda_connection_internal_treat_sql (gda-connection.c:1804)
==26959==    by 0xBB89714: process_sql_commands (gda-sqlite-provider.c:571)
==26959== by 0xBB8D0A3: gda_sqlite_provider_get_schema (gda-sqlite-provider.c:1139) ==26959== by 0x776F8BD: gda_server_provider_get_schema (gda-server-provider.c:930)
==26959==    by 0x76F37D3: gda_connection_get_schema (gda-connection.c:1555)
==26959== by 0x77248C0: gda_dict_table_update_dbms_data (gda-dict-table.c:584) ==26959== by 0x771D2C8: database_tables_n_views_update_treat_schema_result (gda-dict-database.c:1010) ==26959== by 0x771D9AB: gda_dict_database_update_dbms_data (gda-dict-database.c:1080)
==26959==    by 0x7716A42: gda_dict_update_dbms_meta_data (gda-dict.c:1280)
- The lexer uses g_strdup() but the strings may not be released.

Phil




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]