summaryrefslogtreecommitdiff
path: root/audio/spiralsynth
diff options
context:
space:
mode:
authorben <ben@pkgsrc.org>2005-04-24 03:29:11 +0000
committerben <ben@pkgsrc.org>2005-04-24 03:29:11 +0000
commitc311032905ab7a9d9bb303fb736762d9a0798570 (patch)
treea2c5ab2180dbeffa0dc7a0421a45e54ec52ca5c9 /audio/spiralsynth
parent52777660e00296c1e1c43d2cd80ca8bda97667f6 (diff)
downloadpkgsrc-c311032905ab7a9d9bb303fb736762d9a0798570.tar.gz
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.
Diffstat (limited to 'audio/spiralsynth')
-rw-r--r--audio/spiralsynth/distinfo3
-rw-r--r--audio/spiralsynth/patches/patch-ao12
2 files changed, 14 insertions, 1 deletions
diff --git a/audio/spiralsynth/distinfo b/audio/spiralsynth/distinfo
index ca8584a2ee7..d2744eea126 100644
--- a/audio/spiralsynth/distinfo
+++ b/audio/spiralsynth/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.8 2005/02/23 20:39:52 agc Exp $
+$NetBSD: distinfo,v 1.9 2005/04/24 03:29:11 ben Exp $
SHA1 (SpiralSynth-2.0.0.tar.gz) = ea42c5b7710237139f5281cf0c4ca155c184c4cd
RMD160 (SpiralSynth-2.0.0.tar.gz) = c05f38a9ae8b8b87f520c11854631e6dfa00c034
@@ -16,3 +16,4 @@ SHA1 (patch-ak) = 67643c5abea0498f8ea046c5abd52f2d328a5538
SHA1 (patch-al) = 7436bce933cbddcd4f869ab2cbbe27762d4273e5
SHA1 (patch-am) = 4899c78015028a6e8047e5527362646e40a10708
SHA1 (patch-an) = b99c57cd7aa4d5c95bbeffea6c992e9cd7b7c414
+SHA1 (patch-ao) = 138f58bd7fae0226690747efcb8daf472e3a5337
diff --git a/audio/spiralsynth/patches/patch-ao b/audio/spiralsynth/patches/patch-ao
new file mode 100644
index 00000000000..b11ec53c73f
--- /dev/null
+++ b/audio/spiralsynth/patches/patch-ao
@@ -0,0 +1,12 @@
+$NetBSD: patch-ao,v 1.1 2005/04/24 03:29:11 ben Exp $
+
+--- Synth.C.orig 2002-06-11 15:09:42.000000000 -0700
++++ Synth.C
+@@ -82,6 +82,7 @@ m_OutGUI(OSSOutput::Get())
+ LoadPatch(1);
+
+ MidiDevice::Get()->SetDeviceName(SpiralInfo::MIDIFILE);
++ MidiDevice::Get()->PackUpAndGoHome();
+ }
+
+ Synth::~Synth()