MadDeCoDeR / Classic-RBDOOM-3-BFG

DOOM: BFA (Big Freaking Anniversary) Edition (former Classic RBDoom 3 BFG) is a source port based on RBDOOM-3-BFG and enchance the experience of Ultimate DOOM, DOOM 2 and DOOM 3.
GNU General Public License v3.0
211 stars 22 forks source link

Win10-x64 Nightly Builds 7417388 and 57c0c9e Crash at Startup #149

Closed mmillar-bolis closed 2 months ago

mmillar-bolis commented 2 months ago

Describe the Bug: Win10-x64 Nightly builds 7417388 and 57c0c9e crash the program at some point during Audio Initialization, on Windows 10. Win10-x64 Builds f9557ac through f2ae4f5 were incrementally tested this morning and do not exhibit this issue.

To Reproduce: Steps to reproduce the behavior:

  1. Run Win10-x64 Nightly builds 7417388 and/or 57c0c9e, with or without command line arguments.
  2. Exhibit a silent crash and return to the desktop.

Expected Behavior: OpenAL device setup completes and the rendering system begins initialization.

Desktop:

Additional Context: Though they don't contain much helpful information, attached are three qconsole.log files, including the last known working Win10-x64 Nightly build, as well as the current non-working builds. They at least demonstrate where in the initialization process the crash is occurring.

qconsole-f2ae4f5.log qconsole-7417388.log qconsole-57c0c9e.log

MadDeCoDeR commented 2 months ago

Have you try to launch the newer builds with the second audio device set as the default audio device?

mmillar-bolis commented 2 months ago

Excellent question!

I have now tried builds 7417388, 57c0c9e, and 536ac09 under the following conditions:

  1. Secondary audio device set as default
  2. Secondary audio device set to disabled
  3. Secondary audio device physically disconnected
  4. Primary audio device set to disabled with secondary audio device physically disconnected

For each build, under all four conditions, they fail to launch by halting at the same point during initialization.

Below is an example log with the primary audio device disabled while the secondary audio device has been physically disconnected (though, the contents are identical in each run case).

qconsole-536ac09.log

For extra measure, I just tried all four of the above conditions using build f2ae4f5 and it succeeded in initializing all four times. Below are example logs from running build f2ae4f5 with the primary audio device enabled while the secondary audio device has been physically disconnected, as well as running with no audio devices enabled.

qconsole-f2ae4f5-oneAudioDevice.log qconsole-f2ae4f5-noAudioDevice.log

mmillar-bolis commented 2 months ago

Okay, I figured it out!

I was using VC Runtime 14.36.32532.0. Going over the build logs, f2ae4f5 was built against 14.39.33519.0 which is backwards compatible with the 14.3x runtime.

Starting with 7417388, BFA is built against 14.4x which appears to not be backwards compatible with a 14.3x runtime environment, in this case.

I deployed VC 14.40.33810.0 and all three builds, 7417388, 57c0c9e, and 536ac09, run without issue.

So sorry for any inconvenience I caused! Closing this issue as resolved (user error).