View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0002119 | NetSurf | Amiga-specific | public | 2014-05-08 16:52 | 2015-03-10 11:02 | ||||
Reporter | Chris Young | ||||||||
Assigned To | Chris Young | ||||||||
Severity | crash | Reproducibility | always | ||||||
Status | closed | Resolution | fixed | ||||||
Platform | Amiga | OS | AmigaOS | OS Version | 4.1 | ||||
Product Version | 3.2 | ||||||||
Target Version | 3.2 | Fixed in Version | 3.2 | ||||||
Summary | 0002119: Crash in amiga_vmkpath | ||||||||
Description | NetSurf crashes on startup in amiga_vmkpath() | ||||||||
Steps To Reproduce | Launch NetSurf. | ||||||||
Additional Information | Stack trace: native kernel module newlib.library.kmod+0x00003164 [amiga/gui.c:284] amiga_vmkpath()+0x124 (section 1 @ 0x10850) [amiga/gui.c:403] ami_gui_map_filename()+0x70 (section 1 @ 0x126AC) [amiga/gui.c:368] ami_locale_langs()+0xb4 (section 1 @ 0x12950) [amiga/gui.c:670] ami_set_options()+0x48 (section 1 @ 0x12A70) [utils/nsoption.c:527] nsoption_init()+0x6c (section 1 @ 0xF20F4) [amiga/gui.c:5292] main()+0x274 (section 1 @ 0x1D370) native kernel module newlib.library.kmod+0x000020ac native kernel module newlib.library.kmod+0x00002d5c native kernel module newlib.library.kmod+0x00002ef0 _start()+0x170 (section 1 @ 0x16C) native kernel module dos.library.kmod+0x00024cd0 native kernel module kernel+0x0003b4b0 native kernel module kernel+0x0003b530 | ||||||||
Tags | No tags attached. | ||||||||
Fixed in CI build # | 1862 | ||||||||
Reported in CI build # | 1855 | ||||||||
URL of problem page | |||||||||
Attached Files |
|
![]() |
|
Vincent Sanders (administrator) 2014-05-08 17:19 |
OK this is caused by my making the mkpath (used to be file_add_path go through the operations table. I guess the core uses it before it is initialised. the correct fix for this is to get the operation tables initialised as early as possible (instead of in ns_init() ). This also removes the need to have a NULL check in netsurf_mkpath() allowing it to be used withtin amiga/gui.c rather than having a separate amiga_mkpath() |
Chris Young (developer) 2014-05-08 17:44 |
It appears to be the search for the Messages file which is causing the crash. This has to happen before ns_init as the path to Messages is passed to it, which ties in with what you have said. |
Chris Young (developer) 2014-05-08 18:50 |
Calling gui_factory_register() just after nslog_init stops the crashing, but it still hangs and doesn't start up. I suspect there's a memory trashing bug in vmkpath, but I can't immediately see anything wrong. |
Chris Young (developer) 2014-05-10 14:12 |
CI build 1861 is giving me the same crash. Stack trace: native kernel module newlib.library.kmod+0x00003164 [amiga/gui.c:283] amiga_vmkpath()+0x124 (section 1 @ 0x10850) [amiga/gui.c:402] ami_gui_map_filename()+0x70 (section 1 @ 0x126AC) [amiga/gui.c:490] ami_locate_resource()+0x138 (section 1 @ 0x13268) [amiga/gui.c:5303] main()+0x2cc (section 1 @ 0x1D3C8) native kernel module newlib.library.kmod+0x000020ac native kernel module newlib.library.kmod+0x00002d5c native kernel module newlib.library.kmod+0x00002ef0 _start()+0x170 (section 1 @ 0x16C) native kernel module dos.library.kmod+0x00024cd0 native kernel module kernel+0x0003b4b0 native kernel module kernel+0x0003b530 Line 283 which appears to be triggering this crash is actually a memmove: [282] /* copy the first element complete */ [283] memmove(fname, elm[0], elm_len[0]); [284] fname[elm_len[0]] = 0; |
Chris Young (developer) 2014-05-10 14:29 |
Changed ami_gui_map_filename to leave amiga_mkpath to allocate the path buffer, rather than passing one to it. |
Vincent Sanders (administrator) 2015-03-10 11:02 |
Confirmed fixed in 3.2 release |
![]() |
|||
Date Modified | Username | Field | Change |
---|---|---|---|
2014-05-08 16:52 | Chris Young | New Issue | |
2014-05-08 16:52 | Chris Young | Status | new => assigned |
2014-05-08 16:52 | Chris Young | Assigned To | => Chris Young |
2014-05-08 16:52 | Chris Young | File Added: Crashlog_NetSurf_2014-05-08_17-45-52.txt | |
2014-05-08 17:19 | Vincent Sanders | Note Added: 0000321 | |
2014-05-08 17:19 | Vincent Sanders | Additional Information Updated | View Revisions |
2014-05-08 17:44 | Chris Young | Note Added: 0000322 | |
2014-05-08 18:50 | Chris Young | Note Added: 0000323 | |
2014-05-10 14:12 | Chris Young | Note Added: 0000324 | |
2014-05-10 14:29 | Chris Young | Fixed in CI build # | => 1862 |
2014-05-10 14:29 | Chris Young | Note Added: 0000325 | |
2014-05-10 14:29 | Chris Young | Status | assigned => resolved |
2014-05-10 14:29 | Chris Young | Fixed in Version | => 3.2 |
2014-05-10 14:29 | Chris Young | Resolution | open => fixed |
2015-03-10 11:02 | Vincent Sanders | Note Added: 0000697 | |
2015-03-10 11:02 | Vincent Sanders | Status | resolved => closed |