Project

General

Profile

Bug #2134

Crash after plugin load error in AudioDriver initialization (Fedora 21)

Added by skyjake over 8 years ago. Updated about 7 years ago.

Status:
Closed
Priority:
High
Assignee:
Category:
Defect
Target version:
-
Start date:
2015-11-28
% Done:

100%

Tags:

Description

Log output shows that the FluidSynth plugin fails to load (due to an unrelated reason):

#1792 003.954 R(WRN) audio::System > AudioDriver: Library_New: Error opening "/bin/libaudio_fluidsynth.so":
                                                               [LoadError] (Library::Library) Cannot load
                                                               library /home/jaakko/opt/doomsday/lib64/
                                                               doomsday/libaudio_fluidsynth.so: (/home/jaakko/
                                                               opt/doomsday/lib64/doomsday/
                                                               libaudio_fluidsynth.so: undefined symbol:
                                                               fluid_player_play)
#1792 003.933 A  (i) audio::System > AudioDriver: FMOD Sound System (c) Firelight Technologies Pty, Ltd.,
                                                  1994-2013
ASSERT: "d->iBase.Init != nullptr" in file /home/jaakko/src/deng/doomsday/apps/client/src/audio/audiodriver.cpp, line 253

Backtrace for the assert failure:

#0  0x00007ffff32788d7 in raise () at /lib64/libc.so.6
#1  0x00007ffff327a53a in abort () at /lib64/libc.so.6
#2  0x00007ffff4d847ff in QMessageLogger::fatal(char const*, ...) const () at /lib64/libQt5Core.so.5
#3  0x00007ffff4d7faae in  () at /lib64/libQt5Core.so.5
#4  0x00000000007fc4cb in AudioDriver::initialize() (this=0x1a77a88)
    at /home/jaakko/src/deng/doomsday/apps/client/src/audio/audiodriver.cpp:253
#5  0x000000000080abb1 in audio::System::Instance::initDriver(audiodriverid_e) (this=0x1a77a40, driverId=AUDIOD_FLUIDSYNTH)
    at /home/jaakko/src/deng/doomsday/apps/client/src/audio/system.cpp:271
#6  0x000000000080ae38 in audio::System::Instance::initDriverIfNeeded(de::String const&) (this=0x1a77a40, identifier=...)
    at /home/jaakko/src/deng/doomsday/apps/client/src/audio/system.cpp:289
#7  0x000000000080b112 in audio::System::Instance::selectInterfaces(audiodriverid_e) (this=0x1a77a40, defaultDriverId=AUDIOD_FMOD) at /home/jaakko/src/deng/doomsday/apps/client/src/audio/system.cpp:399
#8  0x000000000080af24 in audio::System::Instance::loadDrivers() (this=0x1a77a40)
    at /home/jaakko/src/deng/doomsday/apps/client/src/audio/system.cpp:317
#9  0x0000000000803017 in audio::System::initPlayback() (this=0x1a03510)
    at /home/jaakko/src/deng/doomsday/apps/client/src/audio/system.cpp:1555
#10 0x00000000009ce1eb in Sys_Init() () at /home/jaakko/src/deng/doomsday/apps/client/src/sys_system.cpp:93

Associated revisions

Revision f7997421 (diff)
Added by danij over 8 years ago

Fixed|Audio|Client: Catch missing symbol errors when loading audio plugins

IssueID #2134

Revision 745ab8f5 (diff)
Added by skyjake over 8 years ago

Audio|Client: Handle audio plugin library load error

Fixes #2134

History

#1 Updated by skyjake over 8 years ago

  • Description updated (diff)
  • Assignee changed from skyjake to Deng Team

#2 Updated by skyjake over 8 years ago

  • Tags set to Audio, Plugin, fedora
  • Subject changed from Crash during AudioDriver initialization (Fedora 21) to Crash after plugin load error in AudioDriver initialization (Fedora 21)

#3 Updated by skyjake over 8 years ago

I think the problem is in AudioDriver’s importInterfaces(). It fails to load the library via Library_New(), but then just ignores the failure to import any entrypoints. I think it should throw a LoadError exception in this case.

#4 Updated by skyjake over 8 years ago

  • Assignee changed from Deng Team to danij

#5 Updated by skyjake over 8 years ago

  • Assignee changed from danij to skyjake

#6 Updated by skyjake over 8 years ago

  • Status changed from In Progress to Resolved
  • % Done changed from 0 to 100

#7 Updated by skyjake over 8 years ago

  • Status changed from Resolved to Closed

This bug is not present in the 1.15 branch (Library_New returning NULL is handled), so no cherry-picking is necessary.

#8 Updated by skyjake about 7 years ago

  • Target version deleted (49)

Also available in: Atom PDF