Closed Bug 800 Opened 26 years ago Closed 26 years ago

seg fault on "add bookmark"

Categories

(MozillaClassic Graveyard :: Layout, defect, P2)

x86
Linux
defect

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: endico, Assigned: slamm)

Details

(code updated from cvs 9-12-98) adding a bookmark causes asserts and segfault here: assert: line 595, file cl_layer.c assert: line 595, file cl_layer.c Program received signal SIGSEGV, Segmentation fault. 0x8181a49 in XFE_DisplayTable (context=0x8ac9200, loc=1, ts=0x8c3a0a0) at lay.c:1399 1399 long x = ts->x + ts->x_offset - CONTEXT_DATA (context)->document_x + --- I set a breakpoint to find out what's causing the assert. Some table cell's lo_image.layer is null. (gdb) break cl_layer.c:598 Breakpoint 1 at 0x84f669c: file cl_layer.c, line 598. (gdb) run The program being debugged has been started already. Start it from the beginning? (y or n) y Starting program: /usr/local/src/dawn/mine/mozilla/dist/Linux2.0.35_x86_DBG.OBJ/bin/. /mozilla-export assert: line 595, file cl_layer.c Breakpoint 1, CL_MoveLayer (layer=0x0, x=0, y=0) at cl_layer.c:598 598 return; (gdb) where #0 CL_MoveLayer (layer=0x0, x=0, y=0) at cl_layer.c:598 #1 0x8379ba4 in lo_MoveElementLayers (eptr=0x8c3a180) at laycell.c:326 #2 0x8379d79 in lo_ShiftCell (cell=0x8c3a26c, dx=0, dy=0) at laycell.c:393 #3 0x83c001d in lo_EndTable (context=0x8ac9200, state=0x8ba1a00, table=0x8c09c00, relayout=0 '\000') at laytable.c:7374 #4 0x83c3fb0 in lo_CloseTable (context=0x8ac9200, state=0x8ba1a00) at laytags.c:2096 #5 0x83c4199 in lo_process_table_tag (context=0x8ac9200, state=0x8ba1a00, tag=0x8bf71c0) at laytags.c:2198 #6 0x83cb9e9 in lo_LayoutTag (context=0x8ac9200, state=0x8ba1a00, tag=0x8bf71c0) at laytags.c:6138 #7 0x83a7915 in LO_ProcessTag (data_object=0x8b4dd00, tag=0x8bf71c0, status=0) at layout.c:4839 #8 0x83dedf9 in EDT_ProcessTag (data_object=0x8b4dd00, tag=0x8bf71c0, status=0) at editor.cpp:970 #9 0x8488e59 in PA_ParseBlock (stream=0x8bc86e0, block=0x8aad000 "<HTML>\n<HEAD>\n<TITLE>mozilla.org</TITLE>\n</HEAD>\n<BODY BGCOL OR=\"#FFFFFF\" TEXT=\"#000000\"\nLINK=\"#0000EE\" VLINK=\"#551A8B\" ALINK=\"#FF0000\" \nMARGINHEIGHT=0 MARGINWIDTH=0>\n<MAP NAME=\"banner\">\n<AREA SHAPE=REC"..., block_le n=8192) at pa_parse.c:1436 #10 0x848ffe0 in net_AutoCharCodeConv (stream=0x8b845a0, s=0x8aad000 "<HTML>\n<HEAD>\n<TITLE>mozilla.org</TITLE>\n</HEAD>\n<BODY BGCOLOR=\ "#FFFFFF\" TEXT=\"#000000\"\nLINK=\"#0000EE\" VLINK=\"#551A8B\" ALINK=\"#FF0000\"\nMA RGINHEIGHT=0 MARGINWIDTH=0>\n<MAP NAME=\"banner\">\n<AREA SHAPE=REC"..., l=8192) at n et_junk.c:192 #11 0x830b20e in net_read_file_chunk (cur_entry=0x8bb2000) at mkfile.c:904 #12 0x830bba9 in net_ProcessFile (cur_entry=0x8bb2000) at mkfile.c:1264 #13 0x82e9e03 in NET_ProcessNet (ready_fd=0x0, fd_type=1) at mkgeturl.c:3370 #14 0x82f5905 in net_process_net_timer_callback (closure=0x0) at mkselect.c:189 #15 0x81a0110 in fe_do_timeout (p=0x8b84540, id=0xbfffdfc8) at xfe.c:2965 #16 0x4009d8bd in XtAppProcessEvent () #17 0x818906a in fe_EventLoop () at mozilla.c:1143 #18 0x818c1f9 in main (argc=1, argv=0xbffff840) at mozilla.c:3460 (gdb) down #1 0x8379ba4 in lo_MoveElementLayers (eptr=0x8c3a180) at laycell.c:326 326 CL_MoveLayer(eptr->lo_image.layer, (gdb) print eptr->lo_image $8 = {type = 4, x_offset = 0, ele_id = 3, x = 0, y = 0, y_offset = 0, width = 600, height = 58, line_height = 58, next = 0x8c3a224, prev = 0x0, edit_element = 0x0, edit_offset = 0, layer_id = 0, percent_width = 0, percent_height = 0, mocha_object = 0x0, layer = 0x0, valid_rect = {top = 0, left = 0, bottom = 0, right = 0}, image_req = 0x8b880c0, lowres_image_req = 0x0, is_icon = 0 '\000', icon_number = 0, alt = 0x8c08da0, anchor_href = 0x0, image_url = 0x8c06580, lowres_image_url = 0x0, image_attr = 0x8bf7160, text_attr = 0x8ba0cc0, border_width = 0, border_vert_space = 0, border_horiz_space = 0, ele_attrmask = 0, image_status = 7, is_transparent = 0 '\000', suppress_mode = LO_SUPPRESS_UNDEFINED, alt_len = 0, sel_start = -1, sel_end = -1, seq_num = 0, pending_mocha_event = 0 '\000', next_image = 0x0} (gdb) print *cell $12 = {type = 9, x_offset = 0, ele_id = 5, x = -1, y = -1, y_offset = 0, width = 600, height = 58, line_height = 0, next = 0x0, prev = 0x0, edit_element = 0x0, edit_offset = 0, FE_Data = 0x0, cell_list = 0x8c3a180, cell_list_end = 0x8c3a224, cell_float_list = 0x0, backdrop = { bg_color = 0x8c08f80, url = 0x0, tile_mode = LO_TILE_BOTH}, border_width = 0, border_vert_space = 0, border_horiz_space = 0, ele_attrmask = 0, sel_start = -1, sel_end = -1, inter_cell_space = 0, cell_inflow_layer = 0x0, cell_bg_layer = 0x0, table_cell = 0x8c2f200, table_row = 0x8ba0380, table = 0x8c09c00, isCaption = 0 '\000'}
The code segfaults in different places depending on the page being bookmarked. Bookmarking home.netscape.com causes mozilla to exit. Apparently this is a stomped memory problem and not a layout problem.
Ramiro -- even thought the stack implicates layout, I suspect the recent bookmark move to rdf.. is slamm working on crashes while adding bookmarks?
Assignee: toshok → slamm
Reassign to slamm@netscape.com
Updated to the Sept 18 build. Adding bookmarks no longer causes mozilla to crash. I wonder if this is fixed or if a different area of memory is getting clobbered now. There's no crash, but adding bookmarks doesn't work except once when I did it from the bookmark dialog. Nice tweety bird!
Status: NEW → RESOLVED
Closed: 26 years ago
Resolution: --- → FIXED
This bug actually came from the rdf backend. When you clicked on "add bookmark", the rdf backend reloaded the page through libnet in order to get the meta tags. The reload caused libnet to try to display the page with a bogus context. I see that HT_LayoutComplete now gets a list of metatags and doesn't have to do the page reload hack anymore. Marking fixed.
QA Contact: 4082
Status: RESOLVED → VERIFIED
Reported against old code base, marking verified to get it off our radar screens; bookmarks are not even enabled in the new Seamonkey code base and will be different as is of course layout.
You need to log in before you can comment on or make changes to this bug.