Subject: CVS commit: pkgsrc/audio/spiralsynth
From: Ben Collver
Date: 2005-04-24 05:29:11
Message id: 20050424032911.87BC92DA27@cvs.netbsd.org

Log Message:
The problem is that SpiralSynth opens the MIDI device path before
calling SetDeviceName.

The call trace goes something like this:

Synth.C
main() ==> Synth *synth=new Synth; ==> Synth::Synth()
==> MidiDevice::Get()->SetDeviceName(SpiralInfo::MIDIFILE);

SpiralSound/Midi.h
MidiDevice::Get() ==> m_Singleton=new MidiDevice;
==> MidiDevice::MidiDevice() ==> MidiDevice::Open()
==> MidiDevice::SetDeviceName

patches/patch-ao works around this problem by closing the prematurely
opened private variable representing the MIDI device, and setting it to
NULL.  MidiDevice methods check for NULL and re-initialize the private
variable, this time opening the MIDI device path after SetDeviceName.

Files:
RevisionActionfile
1.9modifypkgsrc/audio/spiralsynth/distinfo
1.1addpkgsrc/audio/spiralsynth/patches/patch-ao