Hello,

I'm hitting this assertion in rhyhtmbox. I'm using the current git
version 3a5b74ee288e52255ee3786f89e389289c22d756 .

static gboolean
remove_child (RhythmDBTreeProperty *parent,
              gconstpointer data)
{
->      g_assert (g_hash_table_remove (parent->children, data));
        if (g_hash_table_size (parent->children) <= 0) {
                return TRUE;
        }
        return FALSE;
}

bug or feature?

kind regards
thomas

#0  0xf7750430 in __kernel_vsyscall ()
No symbol table info available.
#1  0x43d4198f in raise () from /lib/libc.so.6
No symbol table info available.
#2  0x43d432d5 in abort () from /lib/libc.so.6
No symbol table info available.
#3  0x4755407f in g_assertion_message (domain=0xf76fb117 "RhythmDB", 
file=0xf76fb17d "rhythmdb-tree.c", line=1517, func=0xf76fc176 "remove_child", 
message=<optimized out>) at gtestutils.c:1425
        lstr = 
"1517\000QSG\306\325TG\364\277`G\034\327TG\a\034\240\ns[ZG\364\277`G"
        s = 0xaa76c40 
"\250n\247\n\020\244\353C:ERROR:rhythmdb-tree.c:1517:remove_child: assertion 
failed: (g_hash_table_remove (parent->children, datax"
#4  0x47554610 in g_assertion_message_expr (domain=0xf76fb117 "RhythmDB", 
file=0xf76fb17d "rhythmdb-tree.c", line=1517, func=0xf76fc176 "remove_child", 
expr=0xf76fba44 "g_hash_table_remove (parent->children, data)") at 
gtestutils.c:1436
        s = <optimized out>
#5  0xf76b06c0 in remove_child (parent=0xf0d47400, data=0xf0d8b120) at 
rhythmdb-tree.c:1517
        __PRETTY_FUNCTION__ = "remove_child"
#6  0xf76b075e in remove_entry_from_album (db=0x984b050 [RhythmDBTree], 
entry=0xf0d8b120) at rhythmdb-tree.c:1538
        table = 0xa030208
        __PRETTY_FUNCTION__ = "remove_entry_from_album"
#7  0xf76b0e13 in rhythmdb_tree_entry_delete (adb=0x984b050 [RhythmDBTree], 
entry=0xf0d8b120) at rhythmdb-tree.c:1689
        db = 0x984b050 [RhythmDBTree]
        __PRETTY_FUNCTION__ = "rhythmdb_tree_entry_delete"
#8  0xf76995e0 in rhythmdb_entry_delete (db=0x984b050 [RhythmDBTree], 
entry=0xf0d8b120) at rhythmdb.c:3712
        klass = 0x97def70
        __PRETTY_FUNCTION__ = "rhythmdb_entry_delete"
        __FUNCTION__ = "rhythmdb_entry_delete"
#9  0xf76abac3 in song_update_availability (entry_type=0x9777aa0 
[RhythmDBSongEntryType], entry=0xf0d8b120, 
avail=RHYTHMDB_ENTRY_AVAIL_NOT_FOUND) at rhythmdb-song-entry-types.c:171
        db = 0x984b050 [RhythmDBTree]
        __FUNCTION__ = "song_update_availability"
        __PRETTY_FUNCTION__ = "song_update_availability"
#10 0xf76aad04 in rhythmdb_entry_update_availability (entry=0xf0d8b120, 
avail=RHYTHMDB_ENTRY_AVAIL_NOT_FOUND) at rhythmdb-entry-type.c:125
        etype = 0x9777aa0 [RhythmDBSongEntryType]
        klass = 0x97ea948
#11 0xf7695251 in rhythmdb_process_stat_event (db=0x984b050 [RhythmDBTree], 
event=0xf0dc3140) at rhythmdb.c:2103
        entry = 0xf0d8b120
        action = 0x43ecfc50
        file_type = 157574984
        __FUNCTION__ = "rhythmdb_process_stat_event"
        __PRETTY_FUNCTION__ = "rhythmdb_process_stat_event"
#12 0xf76964d7 in rhythmdb_process_one_event (event=0xf0dc3140, db=0x984b050 
[RhythmDBTree]) at rhythmdb.c:2505
        free = 1
        __FUNCTION__ = "rhythmdb_process_one_event"
#13 0xf76d3c2c in rb_async_queue_watch_dispatch (source=0x97f17f0, 
callback=0xf76963e2 <rhythmdb_process_one_event>, user_data=0x984b050) at 
rb-async-queue-watch.c:85
        watch = 0x97f17f0
        cb = 0xf76963e2 <rhythmdb_process_one_event>
        item = 0xf0dc3140
#14 0x4752e62f in g_main_dispatch (context=0x9646748) at gmain.c:2441
        dispatch = 0xf76d3bd1 <rb_async_queue_watch_dispatch>
        was_in_call = 0
        user_data = 0x984b050
        callback = 0xf76963e2 <rhythmdb_process_one_event>
        cb_funcs = 0x4760c33c
        cb_data = 0x9800dc0
        current_source_link = {data = 0x97f17f0, next = 0x0}
        need_destroy = <optimized out>
        source = 0x97f17f0
        current = 0x9811de0
        i = <optimized out>
#15 g_main_context_dispatch (context=0x9646748) at gmain.c:3011
No locals.
#16 0x4752ed70 in g_main_context_iterate (context=0x9646748, block=1196677136, 
dispatch=1, self=0x963d080) at gmain.c:3089
        max_priority = 300
        timeout = 0
        some_ready = 1
        nfds = <optimized out>
        allocated_nfds = <optimized out>
        fds = <optimized out>
        __PRETTY_FUNCTION__ = "g_main_context_iterate"
#17 0x4752f3a7 in g_main_loop_run (loop=0x98b67d0) at gmain.c:3297
        self = 0x963d080
        __PRETTY_FUNCTION__ = "g_main_loop_run"
#18 0x460f8155 in gtk_main () at gtkmain.c:1362
        loop = 0x98b67d0
#19 0x4600af65 in gtk_application_run_mainloop (application=0x974a028 
[RBShell]) at gtkapplication.c:115
No locals.
#20 0x4f8de55c in g_application_run (application=0x974a028 [RBShell], argc=2, 
argv=0xff830774) at gapplication.c:1323
        arguments = 0x98b67d0
        status = 0
        i = <optimized out>
        __PRETTY_FUNCTION__ = "g_application_run"
#21 0x08048e7a in main (argc=1, argv=0xff830774) at main.c:99
        shell = 0x974a028 [RBShell]
        autostarted = 0
        desktop_file_path = 0x9645600 ""
        new_argc = 2
        new_argv = 0xff830774


_______________________________________________
rhythmbox-devel mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/rhythmbox-devel

Reply via email to