Hey Gabriel,
Gabriel M. Beddingfield wrote:
> Throwing out ideas...
> If you try a dynamic_cast<> on an invalid pointer, it will segfault.
> Perhaps this code got executed before __audio_output was initialized.
>
> Also, I recall once that I was having trouble running hydrogen through the
> debugger. It may have been this very segfault. I think I resolved it by
> upgrading gdb to 6.8. (Sometimes, bugs can be caused by gdb -- and I
> think I read something that made me suspect this was the case.) However,
> I also resolved it by _not_ using a debugger, but instead using core dumps
> for segfault backtraces.
>
> Also, what was H2's output before the segfault?
>
I was able to get some more details. The bug occurs outside gdb too,
so it can't be related to gdb. And more interesting: It happens only if
i start hydrogen
without commandline arguments or with hydrogen --driver null . It
crashes *not* if i start with "--driver alsa"
or jack or whatever.. The output before the segfault can be found at the
end of this mail..
- Sebastian
sebastian@...$ ./hydrogen --driver null
Hydrogen 0.9.4-svn583:584M [Oct 17 2008] [http://www.hydrogen-music.org]
Copyright 2002-2008 Alessandro Cominu
Hydrogen comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions. See the file COPYING for details
VST_PATH not set, defaulting to
/home/sebastian/vst:/usr/local/lib/vst:/usr/lib/vst
RemoteVSTClient: all cache files are up-to-date, not running scanner
(W) Preferences loadPreferences patternCategories node not found
(W) static int H2Core::LocalFileMng::readXmlInt(TiXmlNode*, const
QString&, int, bool, bool) 'jack_track_output_mode' node not found
(W) static bool H2Core::LocalFileMng::readXmlBool(TiXmlNode*, const
QString&, bool, bool) 'jack_ardour_transport_workaround' node not found
(W) static int H2Core::LocalFileMng::readXmlInt(TiXmlNode*, const
QString&, int, bool, bool) 'countoffset' node not found
(W) static int H2Core::LocalFileMng::readXmlInt(TiXmlNode*, const
QString&, int, bool, bool) 'playoffset' node not found
(W) SongReader readSong Trying to load a song created with a different
version of hydrogen.
(W) SongReader readSong Song [/usr/src/htest/data/DefaultSong.h2song]
saved with version 0.9.4-svn
(E) OssDriver connect DSP ERROR_OPEN
(E) void H2Core::audioEngine_startAudioDrivers() Error starting
audio driver [audioDriver::connect()]
(E) void H2Core::audioEngine_startAudioDrivers() Using the NULL
output audio driver
(E) void H2Core::audioEngine_startAudioDrivers() m_pMainBuffer_L == NULL
(E) void H2Core::audioEngine_startAudioDrivers() m_pMainBuffer_R == NULL
(W) static QString H2Core::LocalFileMng::readXmlString(TiXmlNode*,
const QString&, const QString&, bool, bool) 'license' node not found
(W) void H2Core::audioEngine_setSong(H2Core::Song*) Set song:
Untitled Song
(E) void H2Core::audioEngine_setupLadspaFX(unsigned int) nBufferSize=0
Segmentation fault
|