r391 Crash with one of my maps (merged)

Bugs that have been resolved.

Moderator: Graf Zahl

Locked
User avatar
Enjay
Developer
Developer
Posts: 4723
Joined: Tue Aug 30, 2005 23:19
Location: Scotland
Contact:

r391 Crash with one of my maps (merged)

Post by Enjay »

I suspect that this will turn into a "can't check without the files" but, just in case...

When I load up my WAD files and try to start a game (the game starts on map242) I get an indication that the map is starting, then the game crashes. I can warp to some other maps in the project, but any attempt to get to map242 results in a crash. The map has not changed since... well, for a long time and it has worked for a number of GZdoom versions.

I did extract the map and try it on its own and got a crash once. Unfortunately, I didn't save the log on that occasion and have not managed to repeat the crash without having all my files loaded.

So, here's a crash log (made with the build uploaded to the DRD SVN directory) with my files loaded.
CrashReport.zip
(17.11 KiB) Downloaded 115 times
And here is a log of the startup indicating that there were no problems up to the point where the map started:

[spoiler]

Code: Select all

Log started: Mon Jul 13 13:56:38 2009

W_Init: Init WADfiles.
 adding C:/Doom/gzdoomSVN/gzdoom.pk3, 415 lumps
 adding C:/Doom/gzdoom/doom2.wad, 2951 lumps
 adding C:/Users/Nigel/Desktop/Aspwork/bgpa1.wad, 18231 lumps
 adding C:/Users/Nigel/Desktop/Aspwork/skins/basezipgfx.wad, 391 lumps
 adding C:/Users/Nigel/Desktop/Aspwork/skins/basezipmodels.wad, 837 lumps
 adding C:/Users/Nigel/Desktop/Aspwork/skins/basezipsfx.wad, 226 lumps
I_Init: Setting up machine state.
CPU Speed: 2673 MHz
CPU Vendor ID: GenuineIntel
  Name: Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz
  Family 6, Model 26, Stepping 4
  Features: MMX SSE SSE2 SSE3 SSSE3 SSE4.1 SSE4.2
I_InitSound: Initializing FMOD
FMOD Sound System, copyright © Firelight Technologies Pty, Ltd., 1994-2009.
Loaded FMOD version 4.24.09
V_Init: allocate screen.
S_Init: Setting up sound.
ST_Init: Init startup screen.
P_Init: Checking cmd-line parameters...
G_ParseMapInfo: Load map definitions.
S_InitData: Load sound definitions.
Texman.Init: Init texture manager.
ParseTeamInfo: Load team definitions.
LoadActors: Load actor definitions.
R_Init: Init Doom refresh subsystem.
DecalLibrary: Load decals.
Patch installed
M_Init: Init miscellaneous info.
P_Init: Init Playloop state.
ParseSBarInfo: Loading default status bar definition.
ParseSBarInfo: Loading custom status bar definition.
D_CheckNetGame: Checking network game status.
player 1 of 1 (1 nodes)
I_InitInput
I_StartupMouse
I_StartupKeyboard
I_StartupXInput
I_StartupRawPS2
I_StartupDirectInputJoystick
GL_VENDOR: NVIDIA Corporation
GL_RENDERER: GeForce GTX 285/PCI/SSE2
GL_VERSION: 3.0.0
GL_EXTENSIONS: GL_ARB_color_buffer_float GL_ARB_depth_buffer_float GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_draw_instanced GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_framebuffer_object GL_ARB_geometry_shader4 GL_ARB_imaging GL_ARB_map_buffer_range GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_shadow GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_texture_border_clamp GL_ARB_texture_buffer_object GL_ARB_texture_compression GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_dot3 GL_ARB_texture_float GL_ARB_texture_mirrored_repeat GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_texture_rg GL_ARB_transpose_matrix GL_ARB_vertex_array_object GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_texture_float GL_ATI_texture_mirror_once GL_S3_s3tc GL_EXT_texture_env_add GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_compiled_vertex_array GL_EXT_Cg_shader GL_EXT_bindable_uniform GL_EXT_depth_bounds_test GL_EXT_direct_state_access GL_EXT_draw_buffers2 GL_EXT_draw_instanced GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_framebuffer_object GL_EXTX_framebuffer_mixed_formats GL_EXT_framebuffer_sRGB GL_EXT_geometry_shader4 GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_float GL_EXT_packed_pixels GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_provoking_vertex GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_stencil_two_side GL_EXT_stencil_wrap GL_EXT_texture3D GL_EXT_texture_array GL_EXT_texture_buffer_object GL_EXT_texture_compression_latc GL_EXT_texture_compression_rgtc GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map GL_EXT_texture_edge_clamp GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_integer GL_EXT_texture_lod GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_sRGB GL_EXT_texture_swizzle GL_EXT_texture_shared_exponent GL_EXT_timer_query GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_IBM_rasterpos_clip GL_IBM_texture_mirrored_repeat GL_KTX_buffer_region GL_NV_blend_square GL_NV_copy_depth_to_color GL_NV_depth_buffer_float GL_NV_conditional_render GL_NV_depth_clamp GL_NV_explicit_multisample GL_NV_fence GL_NV_float_buffer GL_NV_fog_distance GL_NV_fragment_program GL_NV_fragment_program_option GL_NV_fragment_program2 GL_NV_framebuffer_multisample_coverage GL_NV_geometry_shader4 GL_NV_gpu_program4 GL_NV_half_float GL_NV_light_max_exponent GL_NV_multisample_coverage GL_NV_multisample_filter_hint GL_NV_occlusion_query GL_NV_packed_depth_stencil GL_NV_parameter_buffer_object GL_NV_pixel_data_range GL_NV_point_sprite GL_NV_primitive_restart GL_NV_register_combiners GL_NV_register_combiners2 GL_NV_texgen_reflection GL_NV_texture_compression_vtc GL_NV_texture_env_combine4 GL_NV_texture_expand_normal GL_NV_texture_rectangle GL_NV_texture_shader GL_NV_texture_shader2 GL_NV_texture_shader3 GL_NV_transform_feedback GL_NV_transform_feedback2 GL_NV_vertex_array_range GL_NV_vertex_array_range2 GL_NV_vertex_program GL_NV_vertex_program1_1 GL_NV_vertex_program2 GL_NV_vertex_program2_option GL_NV_vertex_program3 GL_NVX_conditional_render GL_NV_vertex_buffer_unified_memory GL_NV_shader_buffer_load GL_SGIS_generate_mipmap GL_SGIS_texture_lod GL_SGIX_depth_texture GL_SGIX_shadow GL_SUN_slice_accum GL_WIN_swap_hint WGL_EXT_swap_control 
Support for non power 2 textures enabled.
Occlusion query enabled.
Resolution: 1920 x 1200
16 bots read from bots.cfg



MAP242 - Choose Your Destiny

[/spoiler]

And, FWIW, here is the map. Obviously, it has a bunch of missing textures.
map242.zip
(131.28 KiB) Downloaded 118 times

I'll try and see if I can come up with anything that reliably gets a crash without needing everything loaded.
Last edited by Rachael on Mon Jul 13, 2009 17:51, edited 2 times in total.
Reason: Merged topics, since both are exactly related
User avatar
Enjay
Developer
Developer
Posts: 4723
Joined: Tue Aug 30, 2005 23:19
Location: Scotland
Contact:

Re: r391 Crash with one of my maps

Post by Enjay »

Update:

Actually, I don't think that it has anything to do with that specific map. I think it has something to do with going from the title screen to a map. If I add +map map242 to the command line, the game can happily warp to and play the map. However, starting it from the menu causes a crash.

More than that, most maps I have tried (but not all) will also cause a crash if I start GZdoom then bring down the console and type "map mapxx" to go straight to a map. Just like the original report, the map loads (as indicated by a start log) then crashes.
User avatar
Enjay
Developer
Developer
Posts: 4723
Joined: Tue Aug 30, 2005 23:19
Location: Scotland
Contact:

r391 Another crash - not my files this time

Post by Enjay »

I had the Thunder FX II file from Tormentor's site loaded but I hadn't actually done anything with it so it may be irrelevant.

Anyway, I started Doom2, turned around to head towards the open area behind the P1 start so that I could summon a thunder generator but, as I turned, GZdoom crashed.
Attachments
CrashReport.zip
(16.98 KiB) Downloaded 129 times
User avatar
Rachael
Developer
Developer
Posts: 3646
Joined: Sat May 13, 2006 10:30

Re: r391 Another crash - not my files this time

Post by Rachael »

Those two crashes (the one in your other thread) are both at exactly the same point. I am not sure what causes it, I am looking into it now. It's obviously the same line of code, in both of them. (Edit: Merged)

EDIT: I'm going to recompile this in debug mode and see if I can reproduce the crash. It looks like a null pointer that isn't checked, to me, but I can't trace the exact location of the function that's causing it with nothing more than the map file.
User avatar
Enjay
Developer
Developer
Posts: 4723
Joined: Tue Aug 30, 2005 23:19
Location: Scotland
Contact:

Re: r391 Another crash - not my files this time

Post by Enjay »

In that case, I'll do a debug build too. I can get my own project to crash pretty reliably so I'll try that with a debug build.

[edit] Or maybe not. I can get a release build to crash every time. 20 attempts with a debug build and not a single crash. :? [/edit]
User avatar
Rachael
Developer
Developer
Posts: 3646
Joined: Sat May 13, 2006 10:30

Re: r391 Another crash - not my files this time

Post by Rachael »

I can't get my debug build to crash either. However, I did get one crash on a release build, since I have that built, I'm going to see if the minidump is of any use on it.

EDIT: The minidump worked perfectly. However, I have no idea what the code is doing where it took me to, so I am just going to report where it left me at to Graf.

The offending code here is in gl1_walls.cpp, line 983. Like I've said previously, a null pointer is suspect, but not knowing what's going on here I can't say for sure.

It might not be of any help, but this is the function call with parameters causing it:

Code: Select all

>	gzdoom.exe!GLRendererOld::GLWall::DoMidTexture(seg_t * seg=0x034551d4, bool drawfogboundary=false, sector_t * realfront=0x0368bcd8, sector_t * realback=0x0368d678, int fch1=15204352, int fch2=15204352, int ffh1=2621440, int ffh2=2621440, int bch1=6815744, int bch2=6815744, int bfh1=2621440, int bfh2=2621440)  Line 983 + 0x2 bytes	C++
And finally, a screenshot of the development environment itself:
[spoiler]
DevEnvironment.PNG
DevEnvironment.PNG (83.46 KiB) Viewed 1888 times
[/spoiler]
User avatar
Enjay
Developer
Developer
Posts: 4723
Joined: Tue Aug 30, 2005 23:19
Location: Scotland
Contact:

Re: r391 Another crash - not my files this time

Post by Enjay »

After a tip-off from SoulPriestess as to how to use a minidump, the result from my crashreport looks much the same:

[spoiler]Image[/spoiler]

[edit]And I just got a crash in strife and the minidump to me to the same part of the code.[/edit]
User avatar
Rachael
Developer
Developer
Posts: 3646
Joined: Sat May 13, 2006 10:30

Re: r391 Crash with one of my maps (merged)

Post by Rachael »

Slightly off-topic, these minidumps are actually very useful. I got a crash in the community build with A_SentinelAttack that was already fixed. :)
User avatar
Graf Zahl
GZDoom Developer
GZDoom Developer
Posts: 7148
Joined: Wed Jul 20, 2005 9:48
Location: Germany
Contact:

Re: r391 Crash with one of my maps (merged)

Post by Graf Zahl »

Don't uninitialized variables suck?

I was moving some stuff to different classes but forgot to delete one obsolete variable which was still used. :(
User avatar
Rachael
Developer
Developer
Posts: 3646
Joined: Sat May 13, 2006 10:30

Re: r391 Crash with one of my maps (merged)

Post by Rachael »

It's one of the things that bugs me about C++.

The finer point of C++ is, it's much "lower-level" and allows you to control exactly how you want things a lot easier than other languages do. That's its downfall, as well.
Locked

Return to “Closed Bugs”