[Webkit-unassigned] [Bug 77703] New: [GTK] Should do a better job initializing the web database
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Feb 2 18:39:29 PST 2012
https://bugs.webkit.org/show_bug.cgi?id=77703
Summary: [GTK] Should do a better job initializing the web
database
Product: WebKit
Version: 528+ (Nightly build)
Platform: Unspecified
OS/Version: Unspecified
Status: NEW
Keywords: Gtk
Severity: Normal
Priority: P2
Component: WebKit Gtk
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: gns at gnome.org
Today I got a crash when I tried to LD_PRELOAD a debug build of WebKit and forgot to also preload jsc. The crash was obviously caused by a mismatch between those, but it did provide an interesting insight about our web database initialization. As can be seen bellow when trying to set the database path we end up initializing the tracker with the path pointing to a file in /, which is not optimal, maybe we can do better.
Program received signal SIGSEGV, Segmentation fault.
0x00007fffeefaf701 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
(gdb) bt
#0 0x00007fffeefaf701 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
#1 0x00007fffef5478f2 in g_uri_unescape_segment (escaped_string=0x15 <Address 0x15 out of bounds>, escaped_string_end=0x0, illegal_characters=0x0) at gurifuncs.c:96
#2 0x00007ffff5991428 in WebCore::fileSystemRepresentation (path="/Databases.db") at ../../Source/WebCore/platform/gtk/FileSystemGtk.cpp:60
#3 0x00007ffff5991559 in WebCore::fileExists (path="/Databases.db") at ../../Source/WebCore/platform/gtk/FileSystemGtk.cpp:83
#4 0x00007ffff509768e in WebCore::SQLiteFileSystem::ensureDatabaseFileExists (fileName="/Databases.db", checkPathOnly=false)
at ../../Source/WebCore/platform/sql/SQLiteFileSystem.cpp:106
#5 0x00007ffff52f0bae in WebCore::DatabaseTracker::openTrackerDatabase (this=0x7fffe4350d80, createIfDoesNotExist=false) at ../../Source/WebCore/storage/DatabaseTracker.cpp:116
#6 0x00007ffff52f204f in WebCore::DatabaseTracker::populateOrigins (this=0x7fffe4350d80) at ../../Source/WebCore/storage/DatabaseTracker.cpp:342
#7 0x00007ffff52f09a2 in WebCore::DatabaseTracker::DatabaseTracker (this=0x7fffe4350d80, databasePath="") at ../../Source/WebCore/storage/DatabaseTracker.cpp:88
#8 0x00007ffff52f087c in WebCore::DatabaseTracker::tracker () at ../../Source/WebCore/storage/DatabaseTracker.cpp:75
#9 0x00007ffff47cc606 in webkit_set_web_database_directory_path (path=0x9ecb00 "/home/kov/.local/share/webkit/databases")
at ../../Source/WebKit/gtk/webkit/webkitwebdatabase.cpp:496
#10 0x00007ffff47c239c in webkitInit () at ../../Source/WebKit/gtk/webkit/webkitglobals.cpp:324
#11 0x00007ffff47d8eed in webkit_web_settings_class_init (klass=0x9ec860) at ../../Source/WebKit/gtk/webkit/webkitwebsettings.cpp:203
#12 0x00007ffff47d89cf in webkit_web_settings_class_intern_init (klass=0x9ec860) at ../../Source/WebKit/gtk/webkit/webkitwebsettings.cpp:68
#13 0x00007ffff0032c57 in type_class_init_Wm (pclass=0x6d1ae0, node=0xa5b890) at gtype.c:2219
#14 g_type_class_ref (type=<optimized out>) at gtype.c:2925
#15 0x00007ffff001b38c in g_object_newv (object_type=10860688, n_parameters=0, parameters=0x0) at gobject.c:1608
#16 0x00007ffff001b8cc in g_object_new (object_type=10860688, first_property_name=0x0) at gobject.c:1532
#17 0x00007ffff47db254 in webkit_web_settings_new () at ../../Source/WebKit/gtk/webkit/webkitwebsettings.cpp:1288
#18 0x000000000046d741 in ephy_embed_prefs_init () at ephy-embed-prefs.c:480
#19 0x0000000000466f9d in ephy_embed_single_initialize (single=0xa520c0) at ephy-embed-single.c:423
#20 0x0000000000467b45 in impl_get_embed_single (shell=0x8b6000) at ephy-embed-shell.c:224
#21 0x00000000004324fa in impl_get_embed_single (embed_shell=0x8b6000) at ephy-shell.c:580
#22 0x0000000000437542 in ephy_window_constructor (type=<optimized out>, n_construct_properties=<optimized out>, construct_params=<optimized out>) at ephy-window.c:3419
#23 0x00007ffff001adc4 in g_object_newv (object_type=<optimized out>, n_parameters=9193632, parameters=<optimized out>) at gobject.c:1703
#24 0x00007ffff001b5a6 in g_object_new_valist (object_type=9185984, first_property_name=<optimized out>, var_args=0x7fffffffd858) at gobject.c:1820
#25 0x00007ffff001b8b4 in g_object_new (object_type=9185984, first_property_name=0x48fd47 "chrome") at gobject.c:1535
#26 0x0000000000437f85 in ephy_window_new_with_chrome (chrome=15, is_popup=0) at ephy-window.c:3613
#27 0x0000000000431c32 in ephy_shell_new_tab_full (shell=<optimized out>, parent_window=0x0, previous_embed=0x0, request=0x0, flags=1025, chrome=15, is_popup=0, user_time=630077808)
at ephy-shell.c:764
#28 0x000000000045097a in session_command_dispatch (session=<optimized out>) at ephy-session.c:726
#29 0x00007fffef51d13a in g_main_dispatch (context=0x719c60) at gmain.c:2510
#30 g_main_context_dispatch (context=0x719c60) at gmain.c:3047
#31 0x00007fffef51d500 in g_main_context_iterate (dispatch=1, block=<optimized out>, context=0x719c60, self=<optimized out>) at gmain.c:3118
#32 g_main_context_iterate (context=0x719c60, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3055
#33 0x00007fffef51d5c4 in g_main_context_iteration (context=0x719c60, may_block=1) at gmain.c:3179
#34 0x00007ffff0526124 in g_application_run (application=0x8b6000, argc=<optimized out>, argv=0x7fffffffdd08) at gapplication.c:1496
#35 0x000000000043060f in main (argc=1, argv=0x7fffffffdd08) at ephy-main.c:469
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list