summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrank van de Pol <fvdpol@gentoo.org>2004-07-11 22:21:52 +0000
committerFrank van de Pol <fvdpol@gentoo.org>2004-07-11 22:21:52 +0000
commit141e1f4989caa7f7e3dc97273da1d3a68ee12367 (patch)
tree0892c4282bee03c84e0d4bbf0fc7624e7a183f59 /media-sound/museseq/files
parentold #56554 (diff)
downloadhistorical-141e1f4989caa7f7e3dc97273da1d3a68ee12367.tar.gz
historical-141e1f4989caa7f7e3dc97273da1d3a68ee12367.tar.bz2
historical-141e1f4989caa7f7e3dc97273da1d3a68ee12367.zip
Fixes to get MuSE running on amd64. Thanks to Andreas Pokorny <diemumiee@gmx.org> for the hard work in QT and the memory allocator. Closes bug #54569.
Diffstat (limited to 'media-sound/museseq/files')
-rw-r--r--media-sound/museseq/files/digest-museseq-0.6.2-r11
-rw-r--r--media-sound/museseq/files/museseq-0.6.2-drumport.patch11
-rw-r--r--media-sound/museseq/files/museseq-0.6.2-gcc34.patch114
-rw-r--r--media-sound/museseq/files/museseq-0.6.2-int2ptr.patch539
-rw-r--r--media-sound/museseq/files/museseq-0.6.2-memory.patch58
5 files changed, 723 insertions, 0 deletions
diff --git a/media-sound/museseq/files/digest-museseq-0.6.2-r1 b/media-sound/museseq/files/digest-museseq-0.6.2-r1
new file mode 100644
index 000000000000..07c0adf3a15a
--- /dev/null
+++ b/media-sound/museseq/files/digest-museseq-0.6.2-r1
@@ -0,0 +1 @@
+MD5 e12491f3f399751c1648ecb55770dde0 muse-0.6.2.tar.bz2 1263832
diff --git a/media-sound/museseq/files/museseq-0.6.2-drumport.patch b/media-sound/museseq/files/museseq-0.6.2-drumport.patch
new file mode 100644
index 000000000000..e60374e174c4
--- /dev/null
+++ b/media-sound/museseq/files/museseq-0.6.2-drumport.patch
@@ -0,0 +1,11 @@
+--- muse-0.6.2-orig/midithread.cpp 2004-07-11 02:36:40.102556216 +0200
++++ muse-0.6.2/midithread.cpp 2004-07-11 03:54:11.612419232 +0200
+@@ -1015,7 +1015,7 @@
+ if (track->type() == Track::DRUM) { //Map drum-notes to the drum-map values
+ int instr = drumInmap[ev->pitch()];
+ pitch = drumMap[instr].anote;
+- port = drumMap[instr].port;
++ //port = drumMap[instr].port; // respect the specified output port!
+ channel = drumMap[instr].channel;
+ }
+ else
diff --git a/media-sound/museseq/files/museseq-0.6.2-gcc34.patch b/media-sound/museseq/files/museseq-0.6.2-gcc34.patch
new file mode 100644
index 000000000000..06c372a74bba
--- /dev/null
+++ b/media-sound/museseq/files/museseq-0.6.2-gcc34.patch
@@ -0,0 +1,114 @@
+diff -ru muse-0.6.2-orig/arranger/pcanvas.cpp muse-0.6.2/arranger/pcanvas.cpp
+--- muse-0.6.2-orig/arranger/pcanvas.cpp 2004-07-11 02:36:40.000000000 +0200
++++ muse-0.6.2/arranger/pcanvas.cpp 2004-07-11 04:23:31.686847248 +0200
+@@ -262,7 +262,7 @@
+ Part* spart = npart->part();
+ Track* track = npart->track();
+ int dtick = newpos.x();
+- unsigned ntrack = y2pitch(item->mp().y());
++ int ntrack = y2pitch(item->mp().y());
+ Track::TrackType type = track->type();
+
+ if (tracks->index(track) == ntrack && (dtick == spart->posTick())) {
+@@ -389,7 +389,7 @@
+ CItem* PartCanvas::newItem(const QPoint& pos, int)
+ {
+ int x = sigmap.raster(pos.x(), *_raster);
+- unsigned trackIndex = y2pitch(pos.y());
++ int trackIndex = y2pitch(pos.y());
+ if (trackIndex == -1)
+ return 0;
+ Track* track = tracks->findIdx(trackIndex);
+@@ -1409,7 +1409,7 @@
+ int x = sigmap.raster(event->pos().x(), *_raster);
+ if (x < 0)
+ x = 0;
+- unsigned trackNo = y2pitch(event->pos().y());
++ int trackNo = y2pitch(event->pos().y());
+ Track* track = 0;
+ if (trackNo < tracks->size())
+ track = tracks->findIdx(trackNo);
+
+diff -ru muse-0.6.2-orig/midiedit/dlist.cpp muse-0.6.2/midiedit/dlist.cpp
+--- muse-0.6.2-orig/midiedit/dlist.cpp 2004-07-11 02:36:38.000000000 +0200
++++ muse-0.6.2/midiedit/dlist.cpp 2004-07-11 04:16:22.592079568 +0200
+@@ -246,7 +246,7 @@
+ for (int i=0; i<DRUM_MAPSIZE; i++) {
+ if (drumMap[i].enote == val && &drumMap[i] != dm) {
+ printf("drumMap %s, index %d had the same note!\n",drumMap[i].name.ascii(),i);
+- drumInmap[dm->enote] = i;
++ drumInmap[(int)(dm->enote)] = i;
+ printf("Setting drumInmap[%d] to point to instrument %d\n",dm->enote, i);
+ drumMap[i].enote = dm->enote;
+ //TODO: Set all notes on the track with pitch=val to pitch=dm->enote
+@@ -585,10 +585,10 @@
+ drumMap[sPitch] = drumMap[dPitch];
+ drumMap[dPitch] = dm;
+ setCursor(QCursor(arrowCursor));
+- drumInmap[drumMap[sPitch].enote] = sPitch;
+- drumOutmap[drumMap[sPitch].anote] = sPitch;
+- drumInmap[drumMap[dPitch].enote] = dPitch;
+- drumOutmap[drumMap[dPitch].anote] = dPitch;
++ drumInmap[(int)(drumMap[sPitch].enote)] = sPitch;
++ drumOutmap[(int)(drumMap[sPitch].anote)] = sPitch;
++ drumInmap[(int)(drumMap[dPitch].enote)] = dPitch;
++ drumOutmap[(int)(drumMap[dPitch].anote)] = dPitch;
+ currentlySelected = &drumMap[dPitch];
+ emit mapChanged();
+ }
+diff -ru muse-0.6.2-orig/midiedit/drummap.cpp muse-0.6.2/midiedit/drummap.cpp
+--- muse-0.6.2-orig/midiedit/drummap.cpp 2004-07-11 02:36:38.000000000 +0200
++++ muse-0.6.2/midiedit/drummap.cpp 2004-07-11 04:17:25.970444592 +0200
+@@ -174,8 +174,8 @@
+ memset(drumInmap, 0, sizeof(drumInmap));
+ memset(drumOutmap, 0, sizeof(drumOutmap));
+ for (int i = 0; i < DRUM_MAPSIZE; ++i) {
+- drumInmap[drumMap[i].enote] = i;
+- drumOutmap[drumMap[i].anote] = i;
++ drumInmap[(int)(drumMap[i].enote)] = i;
++ drumOutmap[(int)(drumMap[i].anote)] = i;
+ }
+ }
+
+@@ -361,8 +361,8 @@
+ memset(drumInmap, 0, sizeof(drumInmap));
+ memset(drumOutmap, 0, sizeof(drumOutmap));
+ for (int i = 0; i < DRUM_MAPSIZE; ++i) {
+- drumInmap[drumMap[i].enote] = i;
+- drumOutmap[drumMap[i].anote] = i;
++ drumInmap[(int)(drumMap[i].enote)] = i;
++ drumOutmap[(int)(drumMap[i].anote)] = i;
+ }
+ return;
+ }
+diff -ru muse-0.6.2-orig/widgets/genset.cpp muse-0.6.2/widgets/genset.cpp
+--- muse-0.6.2-orig/widgets/genset.cpp 2004-07-11 02:36:40.000000000 +0200
++++ muse-0.6.2/widgets/genset.cpp 2004-07-11 04:18:34.338051136 +0200
+@@ -43,7 +43,7 @@
+ }
+ }
+ guiRefreshSelect->setValue(guiRefresh);
+- minSliderSelect->setValue(minSlider);
++ minSliderSelect->setValue((int)minSlider);
+ minMeterSelect->setValue(minMeter);
+ helpBrowser->setText(::helpBrowser);
+
+diff -ru muse-0.6.2-orig/midithread.cpp muse-0.6.2/midithread.cpp
+--- muse-0.6.2-orig/midithread.cpp 2004-07-11 05:00:52.132247776 +0200
++++ muse-0.6.2/midithread.cpp 2004-07-11 05:01:23.853425424 +0200
+@@ -1,4 +1,4 @@
+-//=========================================================
++
+ // MusE
+ // Linux Music Editor
+ // $Id: museseq-0.6.2-gcc34.patch,v 1.1 2004/07/11 22:21:52 fvdpol Exp $
+@@ -570,7 +570,7 @@
+ panic();
+ break;
+ case SEQM_MIDI_CTRL:
+- midiPorts[msg->port].setCtrl(msg->channel, msg->ctrl, msg->a);
++ midiPorts[(int)msg->port].setCtrl(msg->channel, msg->ctrl, msg->a);
+ break;
+ case SEQM_MIDI_MASTER_VOLUME:
+ for (int i = 0; i < MIDI_PORTS; ++i)
+
diff --git a/media-sound/museseq/files/museseq-0.6.2-int2ptr.patch b/media-sound/museseq/files/museseq-0.6.2-int2ptr.patch
new file mode 100644
index 000000000000..d66ac629f53d
--- /dev/null
+++ b/media-sound/museseq/files/museseq-0.6.2-int2ptr.patch
@@ -0,0 +1,539 @@
+diff -Nur muse-0.6.2-orig/app.cpp muse-0.6.2/app.cpp
+--- muse-0.6.2-orig/app.cpp 2003-11-01 19:49:06.000000000 +0000
++++ muse-0.6.2/app.cpp 2004-06-29 00:05:35.712525381 +0000
+@@ -1190,7 +1190,7 @@
+ song->setName(project.baseName());
+ setCaption(QString("MusE: Song: ") + project.baseName());
+ arranger->reset();
+- arranger->setMode(int(song->mtype()));
++ arranger->setMode(long(song->mtype()));
+ newSongFlag = true;
+ song->dirty = false;
+
+@@ -1257,8 +1257,8 @@
+ {
+ PianoRoll* pianoroll = new PianoRoll(pl, this);
+ pianoroll->show();
+- toplevels.push_back(Toplevel(Toplevel::PIANO_ROLL, int(pianoroll), pianoroll));
+- connect(pianoroll, SIGNAL(deleted(int)), SLOT(toplevelDeleted(int)));
++ toplevels.push_back(Toplevel( Toplevel::PIANO_ROLL, pianoroll, pianoroll));
++ connect(pianoroll, SIGNAL(deleted(void*)), SLOT(toplevelDeleted(long)));
+ }
+
+ //---------------------------------------------------------
+@@ -1277,8 +1277,8 @@
+ {
+ Score* scoreEditor = new Score(pl);
+ scoreEditor->show();
+- toplevels.push_back(Toplevel(Toplevel::NOTEN, int(scoreEditor), scoreEditor));
+- connect(scoreEditor, SIGNAL(deleted(int)), SLOT(toplevelDeleted(int)));
++ toplevels.push_back(Toplevel(Toplevel::NOTEN, scoreEditor, scoreEditor));
++ connect(scoreEditor, SIGNAL(deleted(void*)), SLOT(toplevelDeleted(long)));
+ }
+
+ //---------------------------------------------------------
+@@ -1297,8 +1297,8 @@
+ {
+ ListEdit* listEditor = new ListEdit(pl);
+ listEditor->show();
+- toplevels.push_back(Toplevel(Toplevel::LISTE, int(listEditor), listEditor));
+- connect(listEditor, SIGNAL(deleted(int)), SLOT(toplevelDeleted(int)));
++ toplevels.push_back(Toplevel(Toplevel::LISTE, listEditor, listEditor));
++ connect(listEditor, SIGNAL(deleted(void*)), SLOT(toplevelDeleted(long)));
+ }
+
+ //---------------------------------------------------------
+@@ -1309,8 +1309,8 @@
+ {
+ MasterEdit* masterEditor = new MasterEdit();
+ masterEditor->show();
+- toplevels.push_back(Toplevel(Toplevel::MASTER, int(masterEditor), masterEditor));
+- connect(masterEditor, SIGNAL(deleted(int)), SLOT(toplevelDeleted(int)));
++ toplevels.push_back(Toplevel(Toplevel::MASTER, masterEditor, masterEditor));
++ connect(masterEditor, SIGNAL(deleted(void*)), SLOT(toplevelDeleted(long)));
+ }
+
+ //---------------------------------------------------------
+@@ -1321,8 +1321,8 @@
+ {
+ LMaster* lmaster = new LMaster();
+ lmaster->show();
+- toplevels.push_back(Toplevel(Toplevel::LMASTER, int(lmaster), lmaster));
+- connect(lmaster, SIGNAL(deleted(int)), SLOT(toplevelDeleted(int)));
++ toplevels.push_back(Toplevel(Toplevel::LMASTER, lmaster, lmaster));
++ connect(lmaster, SIGNAL(deleted(void*)), SLOT(toplevelDeleted(long)));
+ }
+
+ //---------------------------------------------------------
+@@ -1341,8 +1341,8 @@
+ {
+ DrumEdit* drumEditor = new DrumEdit(pl, this);
+ drumEditor->show();
+- toplevels.push_back(Toplevel(Toplevel::DRUM, int(drumEditor), drumEditor));
+- connect(drumEditor, SIGNAL(deleted(int)), SLOT(toplevelDeleted(int)));
++ toplevels.push_back(Toplevel(Toplevel::DRUM, drumEditor, drumEditor));
++ connect(drumEditor, SIGNAL(deleted(void*)), SLOT(toplevelDeleted(long)));
+ }
+
+ //---------------------------------------------------------
+@@ -1363,8 +1363,8 @@
+ {
+ WaveEdit* waveEditor = new WaveEdit(pl);
+ waveEditor->show();
+- toplevels.push_back(Toplevel(Toplevel::WAVE, int(waveEditor), waveEditor));
+- connect(waveEditor, SIGNAL(deleted(int)), SLOT(toplevelDeleted(int)));
++ toplevels.push_back(Toplevel(Toplevel::WAVE, waveEditor, waveEditor));
++ connect(waveEditor, SIGNAL(deleted(void*)), SLOT(toplevelDeleted(long)));
+ }
+
+ //---------------------------------------------------------
+@@ -1375,10 +1375,10 @@
+ {
+ if (midiMixer == 0) {
+ midiMixer = new Mixer();
+- toplevels.push_back(Toplevel(Toplevel::M_MIXER, int(midiMixer), midiMixer));
++ toplevels.push_back(Toplevel(Toplevel::M_MIXER, midiMixer, midiMixer));
+ connect(midiMixer, SIGNAL(ctrlChanged(int,int,int,int)), song, SLOT(ctrlChanged(int,int,int,int)));
+ connect(midiMixer, SIGNAL(masterVolChanged(int)), song, SLOT(masterVolChanged(int)));
+- connect(midiMixer, SIGNAL(deleted(int)), SLOT(toplevelDeleted(int)));
++ connect(midiMixer, SIGNAL(deleted(void*)), SLOT(toplevelDeleted(long)));
+ }
+ midiMixer->show();
+ menu_functions->setItemChecked(midid1, true);
+@@ -1401,8 +1401,8 @@
+ {
+ if (markerView == 0) {
+ markerView = new MarkerView(this);
+- toplevels.push_back(Toplevel(Toplevel::MARKER, int(markerView), markerView));
+-// connect(markerView, SIGNAL(deleted(int)), SLOT(toplevelDeleted(int)));
++ toplevels.push_back(Toplevel(Toplevel::MARKER, markerView, markerView));
++// connect(markerView, SIGNAL(deleted(void*)), SLOT(toplevelDeleted(long)));
+ }
+ markerView->show();
+ }
+@@ -1415,8 +1415,8 @@
+ {
+ if (audioMixer == 0) {
+ audioMixer = new AudioMixerApp();
+- toplevels.push_back(Toplevel(Toplevel::A_MIXER, int(audioMixer), audioMixer));
+- connect(audioMixer, SIGNAL(deleted(int)), SLOT(toplevelDeleted(int)));
++ toplevels.push_back(Toplevel(Toplevel::A_MIXER, audioMixer, audioMixer));
++ connect(audioMixer, SIGNAL(deleted(void*)), SLOT(toplevelDeleted(long)));
+ }
+ audioMixer->show();
+ menu_audio->setItemChecked(aid1, true);
+@@ -1430,8 +1430,8 @@
+ {
+ if (clipListEdit == 0) {
+ clipListEdit = new ClipListEdit();
+- toplevels.push_back(Toplevel(Toplevel::CLIPLIST, int(clipListEdit), clipListEdit));
+- connect(clipListEdit, SIGNAL(deleted(int)), SLOT(toplevelDeleted(int)));
++ toplevels.push_back(Toplevel(Toplevel::CLIPLIST, clipListEdit, clipListEdit));
++ connect(clipListEdit, SIGNAL(deleted(void*)), SLOT(toplevelDeleted(long)));
+ }
+ clipListEdit->show();
+ menu_audio->setItemChecked(aid2, true);
+@@ -1476,10 +1476,10 @@
+ // toplevelDeleted
+ //---------------------------------------------------------
+
+-void MusE::toplevelDeleted(int tl)
++void MusE::toplevelDeleted(void* tl)
+ {
+ for (iToplevel i = toplevels.begin(); i != toplevels.end(); ++i) {
+- if (i->object() == tl) {
++ if ( i->object() == tl ) {
+ switch(i->type()) {
+ case Toplevel::M_MIXER:
+ menu_functions->setItemChecked(midid1, false);
+@@ -2156,7 +2156,7 @@
+ Toplevel tl = *i;
+ if (tl.type() == Toplevel::WAVE) {
+ TopWin* obj = tl.cobject();
+- ((WaveEdit*)(obj))->setBg(WaveEdit::configBg());
++ reinterpret_cast<WaveEdit*>(obj)->setBg(WaveEdit::configBg());
+ }
+ }
+ }
+@@ -2593,7 +2593,7 @@
+ again:
+ for (iToplevel i = toplevels.begin(); i != toplevels.end(); ++i) {
+ Toplevel tl = *i;
+- int obj = tl.object();
++ void* obj = tl.object();
+ switch (tl.type()) {
+ case Toplevel::A_MIXER:
+ delete audioMixer;
+@@ -2611,7 +2611,7 @@
+ case Toplevel::WAVE:
+ case Toplevel::LMASTER:
+ case Toplevel::MIXDOWN:
+- ((QWidget*)(obj))->close(true);
++ reinterpret_cast<QWidget*>(obj)->close(true);
+ goto again;
+ }
+ }
+diff -Nur muse-0.6.2-orig/app.h muse-0.6.2/app.h
+--- muse-0.6.2-orig/app.h 2003-10-30 12:11:50.000000000 +0000
++++ muse-0.6.2/app.h 2004-06-28 23:52:54.358355806 +0000
+@@ -227,7 +227,7 @@
+ void ctrlChanged();
+ void loadProjectFile(const QString&);
+ void startAudioMixer();
+- void toplevelDeleted(int tl);
++ void toplevelDeleted(void* tl);
+ void loadTheme(QString);
+ void setTransportHandleColor(QColor);
+ void setBigTimeForegroundColor(QColor);
+diff -Nur muse-0.6.2-orig/cliplist/cliplist.cpp muse-0.6.2/cliplist/cliplist.cpp
+--- muse-0.6.2-orig/cliplist/cliplist.cpp 2003-10-29 10:06:37.000000000 +0000
++++ muse-0.6.2/cliplist/cliplist.cpp 2004-06-29 00:13:59.767149620 +0000
+@@ -184,7 +184,7 @@
+
+ void ClipListEdit::closeEvent(QCloseEvent* e)
+ {
+- emit deleted((int)this);
++ emit deleted(this);
+ e->accept();
+ }
+
+diff -Nur muse-0.6.2-orig/cliplist/cliplist.h muse-0.6.2/cliplist/cliplist.h
+--- muse-0.6.2-orig/cliplist/cliplist.h 2003-10-29 10:06:36.000000000 +0000
++++ muse-0.6.2/cliplist/cliplist.h 2004-06-29 00:14:11.080311133 +0000
+@@ -37,7 +37,7 @@
+ void clicked(QListViewItem*);
+
+ signals:
+- void deleted(int);
++ void deleted(void*);
+
+ public:
+ ClipListEdit();
+diff -Nur muse-0.6.2-orig/cobject.h muse-0.6.2/cobject.h
+--- muse-0.6.2-orig/cobject.h 2003-10-29 10:05:10.000000000 +0000
++++ muse-0.6.2/cobject.h 2004-06-29 00:02:30.187403540 +0000
+@@ -44,18 +44,16 @@
+ , M_PATCHBAY
+ #endif /* PATCHBAY */
+ };
+- Toplevel(ToplevelType t, int obj, TopWin* cobj) {
+- _type = t;
+- _object = obj;
+- _cobject = cobj;
+- }
++ // Rethink that : saving void*_object ( formerly int) and TopWin* _cobject makes no sense!
++ Toplevel(ToplevelType t, void * obj, TopWin* cobj)
++ : _type(t), _object(obj), _cobject(cobj){ }
+ ToplevelType type() const { return _type; }
+- int object() const { return _object; }
++ void* object() const { return _object; }
+ TopWin* cobject() const { return _cobject; }
+
+ private:
+ ToplevelType _type;
+- int _object;
++ void* _object;
+ TopWin* _cobject;
+ };
+
+diff -Nur muse-0.6.2-orig/liste/listedit.cpp muse-0.6.2/liste/listedit.cpp
+--- muse-0.6.2-orig/liste/listedit.cpp 2003-10-29 10:05:22.000000000 +0000
++++ muse-0.6.2/liste/listedit.cpp 2004-06-28 23:37:13.000000000 +0000
+@@ -139,7 +139,7 @@
+
+ void ListEdit::closeEvent(QCloseEvent* e)
+ {
+- emit deleted((int)this);
++ emit deleted(this);
+ e->accept();
+ }
+
+diff -Nur muse-0.6.2-orig/liste/listedit.h muse-0.6.2/liste/listedit.h
+--- muse-0.6.2-orig/liste/listedit.h 2003-10-29 10:05:22.000000000 +0000
++++ muse-0.6.2/liste/listedit.h 2004-06-28 23:37:23.000000000 +0000
+@@ -58,7 +58,7 @@
+ void songChanged(int);
+
+ signals:
+- void deleted(int);
++ void deleted(void*);
+
+ public:
+ ListEdit(PartList*);
+diff -Nur muse-0.6.2-orig/marker/markerview.cpp muse-0.6.2/marker/markerview.cpp
+--- muse-0.6.2-orig/marker/markerview.cpp 2003-10-29 10:06:13.000000000 +0000
++++ muse-0.6.2/marker/markerview.cpp 2004-06-28 23:40:45.776186926 +0000
+@@ -136,7 +136,7 @@
+
+ void MarkerView::closeEvent(QCloseEvent* e)
+ {
+- emit deleted((int)this);
++ emit deleted(this);
+ e->accept();
+ }
+
+diff -Nur muse-0.6.2-orig/marker/markerview.h muse-0.6.2/marker/markerview.h
+--- muse-0.6.2-orig/marker/markerview.h 2003-10-29 10:06:13.000000000 +0000
++++ muse-0.6.2/marker/markerview.h 2004-06-28 23:44:51.775914379 +0000
+@@ -67,7 +67,7 @@
+ void songChanged(int);
+
+ signals:
+- void deleted(int);
++ void deleted(void*);
+
+ public:
+ MarkerView(QWidget* parent);
+diff -Nur muse-0.6.2-orig/master/lmaster.cpp muse-0.6.2/master/lmaster.cpp
+--- muse-0.6.2-orig/master/lmaster.cpp 2003-10-29 10:06:13.000000000 +0000
++++ muse-0.6.2/master/lmaster.cpp 2004-06-29 00:12:14.582240878 +0000
+@@ -26,7 +26,7 @@
+
+ void LMaster::closeEvent(QCloseEvent* e)
+ {
+- emit deleted((int)this);
++ emit deleted(this);
+ e->accept();
+ }
+
+diff -Nur muse-0.6.2-orig/master/lmaster.h muse-0.6.2/master/lmaster.h
+--- muse-0.6.2-orig/master/lmaster.h 2003-10-29 10:06:13.000000000 +0000
++++ muse-0.6.2/master/lmaster.h 2004-06-29 00:12:32.127391543 +0000
+@@ -41,7 +41,7 @@
+ void songChanged(int);
+
+ signals:
+- void deleted(int);
++ void deleted(void*);
+
+ public:
+ LMaster();
+diff -Nur muse-0.6.2-orig/master/masteredit.cpp muse-0.6.2/master/masteredit.cpp
+--- muse-0.6.2-orig/master/masteredit.cpp 2003-10-29 10:06:14.000000000 +0000
++++ muse-0.6.2/master/masteredit.cpp 2004-06-29 00:12:42.339732011 +0000
+@@ -49,7 +49,7 @@
+
+ void MasterEdit::closeEvent(QCloseEvent* e)
+ {
+- emit deleted((int)this);
++ emit deleted(this);
+ e->accept();
+ }
+
+diff -Nur muse-0.6.2-orig/master/masteredit.h muse-0.6.2/master/masteredit.h
+--- muse-0.6.2-orig/master/masteredit.h 2003-10-29 10:06:13.000000000 +0000
++++ muse-0.6.2/master/masteredit.h 2004-06-29 00:12:59.382962426 +0000
+@@ -59,7 +59,7 @@
+ // void tempoChanged(double);
+
+ signals:
+- void deleted(int);
++ void deleted(void*);
+
+ public:
+ MasterEdit();
+diff -Nur muse-0.6.2-orig/memory.h muse-0.6.2/memory.h
+--- muse-0.6.2-orig/memory.h 2003-10-29 10:05:18.000000000 +0000
++++ muse-0.6.2/memory.h 2004-06-28 23:30:01.906496190 +0000
+@@ -50,7 +50,7 @@
+ {
+ int idx = ((n + sizeof(int) - 1) / sizeof(int)) - 1;
+ if (idx >= dimension) {
+- printf("panic: alloc %d\n", n);
++ printf("panic: alloc %lu\n", n);
+ exit(-1);
+ }
+ if (head[idx] == 0)
+@@ -68,7 +68,7 @@
+ {
+ int idx = ((n + sizeof(int) - 1) / sizeof(int)) - 1;
+ if (idx >= dimension) {
+- printf("panic: alloc %d\n", n);
++ printf("panic: alloc %lu\n", n);
+ exit(-1);
+ }
+ Verweis* p = static_cast<Verweis*>(b);
+diff -Nur muse-0.6.2-orig/midi.cpp muse-0.6.2/midi.cpp
+--- muse-0.6.2-orig/midi.cpp 2003-11-01 18:12:52.000000000 +0000
++++ muse-0.6.2/midi.cpp 2004-06-28 23:48:57.449826762 +0000
+@@ -522,9 +522,9 @@
+ MidiEvent* event = readEvent(track);
+ if (event == 0)
+ break;
+- if (int(event) == -1)
++ if (long(event) == -1)
+ continue;
+- if (int(event) == -2) // error
++ if (long(event) == -2) // error
+ return true;
+ if (lastchan == -1) {
+ el->add(event); // kann kein channel event sein
+diff -Nur muse-0.6.2-orig/midiedit/drumedit.cpp muse-0.6.2/midiedit/drumedit.cpp
+--- muse-0.6.2-orig/midiedit/drumedit.cpp 2003-10-29 10:06:08.000000000 +0000
++++ muse-0.6.2/midiedit/drumedit.cpp 2004-06-28 23:33:26.000000000 +0000
+@@ -133,7 +133,7 @@
+ _dlistWidthInit = *it; //There are only 2 values stored in the sizelist, size of dlist widget and dcanvas widget
+ it++;
+ _dcanvasWidthInit = *it;
+- emit deleted((int)this);
++ emit deleted(this);
+ e->accept();
+ }
+
+diff -Nur muse-0.6.2-orig/midiedit/drumedit.h muse-0.6.2/midiedit/drumedit.h
+--- muse-0.6.2-orig/midiedit/drumedit.h 2003-10-29 10:06:10.000000000 +0000
++++ muse-0.6.2/midiedit/drumedit.h 2004-06-28 23:33:39.000000000 +0000
+@@ -120,7 +120,7 @@
+ void dlistSelectionChanged(DrumMap*); // called by dlist
+
+ signals:
+- void deleted(int);
++ void deleted(void*);
+ void keyFilterChanged(int);
+
+ public:
+diff -Nur muse-0.6.2-orig/midiedit/pianoroll.cpp muse-0.6.2/midiedit/pianoroll.cpp
+--- muse-0.6.2-orig/midiedit/pianoroll.cpp 2003-10-29 10:06:09.000000000 +0000
++++ muse-0.6.2/midiedit/pianoroll.cpp 2004-06-28 23:30:56.037570909 +0000
+@@ -446,7 +446,7 @@
+
+ void PianoRoll::closeEvent(QCloseEvent* e)
+ {
+- emit deleted((int)this);
++ emit deleted(this);
+ e->accept();
+ }
+
+diff -Nur muse-0.6.2-orig/midiedit/pianoroll.h muse-0.6.2/midiedit/pianoroll.h
+--- muse-0.6.2-orig/midiedit/pianoroll.h 2003-10-29 10:06:07.000000000 +0000
++++ muse-0.6.2/midiedit/pianoroll.h 2004-06-28 23:32:34.737301042 +0000
+@@ -108,7 +108,7 @@
+ void songChanged1(int);
+
+ signals:
+- void deleted(int);
++ void deleted(void *);
+
+ public:
+ PianoRoll(PartList*, QWidget* parent = 0, const char* name = 0);
+diff -Nur muse-0.6.2-orig/mixer/amixer.cpp muse-0.6.2/mixer/amixer.cpp
+--- muse-0.6.2-orig/mixer/amixer.cpp 2003-10-29 10:05:23.000000000 +0000
++++ muse-0.6.2/mixer/amixer.cpp 2004-06-28 23:54:59.000000000 +0000
+@@ -753,7 +753,7 @@
+
+ void AudioMixerApp::closeEvent(QCloseEvent* e)
+ {
+- emit deleted((int)this);
++ emit deleted(this);
+ e->accept();
+ }
+
+diff -Nur muse-0.6.2-orig/mixer/amixer.h muse-0.6.2/mixer/amixer.h
+--- muse-0.6.2-orig/mixer/amixer.h 2003-10-29 10:05:24.000000000 +0000
++++ muse-0.6.2/mixer/amixer.h 2004-06-28 23:55:11.316020930 +0000
+@@ -94,7 +94,7 @@
+ void updateOutputRoute();
+
+ signals:
+- void deleted(int);
++ void deleted(void*);
+
+ private slots:
+ void heartBeat();
+diff -Nur muse-0.6.2-orig/mixer/mixer.cpp muse-0.6.2/mixer/mixer.cpp
+--- muse-0.6.2-orig/mixer/mixer.cpp 2003-10-29 10:05:24.000000000 +0000
++++ muse-0.6.2/mixer/mixer.cpp 2004-06-29 00:13:40.588266335 +0000
+@@ -226,7 +226,7 @@
+
+ void Mixer::closeEvent(QCloseEvent* e)
+ {
+- emit deleted((int)this);
++ emit deleted(this);
+ e->accept();
+ }
+
+diff -Nur muse-0.6.2-orig/mixer/mixer.h muse-0.6.2/mixer/mixer.h
+--- muse-0.6.2-orig/mixer/mixer.h 2003-10-29 10:05:23.000000000 +0000
++++ muse-0.6.2/mixer/mixer.h 2004-06-29 00:13:52.681301128 +0000
+@@ -60,7 +60,7 @@
+ void masterChanged(int val);
+
+ signals:
+- void deleted(int);
++ void deleted(void*);
+ void ctrlChanged(int port, int chan, int ctrl, int val);
+ void masterVolChanged(int val);
+
+diff -Nur muse-0.6.2-orig/score/score.cpp muse-0.6.2/score/score.cpp
+--- muse-0.6.2-orig/score/score.cpp 2003-10-29 10:05:26.000000000 +0000
++++ muse-0.6.2/score/score.cpp 2004-06-28 23:40:32.568460346 +0000
+@@ -360,7 +360,7 @@
+
+ void Score::closeEvent(QCloseEvent* e)
+ {
+- emit deleted((int)this);
++ emit deleted(this);
+ e->accept();
+ }
+
+diff -Nur muse-0.6.2-orig/score/score.h muse-0.6.2/score/score.h
+--- muse-0.6.2-orig/score/score.h 2003-10-29 10:05:24.000000000 +0000
++++ muse-0.6.2/score/score.h 2004-06-28 23:41:15.037151699 +0000
+@@ -91,7 +91,7 @@
+ signals:
+ void rasterChanged(int);
+ void quantChanged(int);
+- void deleted(int);
++ void deleted(void*);
+
+ public:
+ Score(PartList*);
+diff -Nur muse-0.6.2-orig/synti/synth.cpp muse-0.6.2/synti/synth.cpp
+--- muse-0.6.2-orig/synti/synth.cpp 2003-10-29 10:06:00.000000000 +0000
++++ muse-0.6.2/synti/synth.cpp 2004-06-28 23:26:35.000000000 +0000
+@@ -334,7 +334,7 @@
+ nsynthis = list->count();
+ if (debugMsg)
+ printf("%d soft synth found\n", nsynthis);
+- synthis = new (Synth*)[nsynthis];
++ synthis = new Synth*[nsynthis];
+ QFileInfoListIterator it(*list);
+ QFileInfo* fi;
+ int i = 0;
+diff -Nur muse-0.6.2-orig/track.cpp muse-0.6.2/track.cpp
+--- muse-0.6.2-orig/track.cpp 2003-10-29 22:14:12.000000000 +0000
++++ muse-0.6.2/track.cpp 2004-06-28 23:49:48.000000000 +0000
+@@ -95,7 +95,7 @@
+
+ void Track::dump() const
+ {
+- printf("Track <%s>: typ %d, parts %d sel %d\n",
++ printf("Track <%s>: typ %d, parts %lu sel %d\n",
+ _name.latin1(), _type, _parts.size(), _selected);
+ }
+
+diff -Nur muse-0.6.2-orig/waveedit/waveedit.cpp muse-0.6.2/waveedit/waveedit.cpp
+--- muse-0.6.2-orig/waveedit/waveedit.cpp 2003-10-29 10:06:14.000000000 +0000
++++ muse-0.6.2/waveedit/waveedit.cpp 2004-06-29 00:13:17.236061212 +0000
+@@ -57,7 +57,7 @@
+
+ void WaveEdit::closeEvent(QCloseEvent* e)
+ {
+- emit deleted((int)this);
++ emit deleted(this);
+ e->accept();
+ }
+
+diff -Nur muse-0.6.2-orig/waveedit/waveedit.h muse-0.6.2/waveedit/waveedit.h
+--- muse-0.6.2-orig/waveedit/waveedit.h 2003-10-29 10:06:14.000000000 +0000
++++ muse-0.6.2/waveedit/waveedit.h 2004-06-29 00:13:30.436915997 +0000
+@@ -48,7 +48,7 @@
+ void soloChanged(bool flag);
+
+ signals:
+- void deleted(int);
++ void deleted(void*);
+
+ public:
+ WaveEdit(PartList*);
+
diff --git a/media-sound/museseq/files/museseq-0.6.2-memory.patch b/media-sound/museseq/files/museseq-0.6.2-memory.patch
new file mode 100644
index 000000000000..c111feeb11d0
--- /dev/null
+++ b/media-sound/museseq/files/museseq-0.6.2-memory.patch
@@ -0,0 +1,58 @@
+diff -Naur muse-0.6.2-orig/memory.cpp muse-0.6.2/memory.cpp
+--- muse-0.6.2-orig/memory.cpp 2003-10-29 10:04:59.000000000 +0000
++++ muse-0.6.2/memory.cpp 2004-06-29 18:52:16.634314333 +0000
+@@ -45,7 +45,7 @@
+
+ void Pool::grow(int idx)
+ {
+- int esize = (idx+1) * sizeof(int);
++ int esize = (idx+1) * sizeof(void*); //just guessing here
+
+ Chunk* n = new Chunk;
+ n->next = chunks[idx];
+diff -Naur muse-0.6.2-orig/memory.h muse-0.6.2/memory.h
+--- muse-0.6.2-orig/memory.h 2004-06-29 18:54:53.416816939 +0000
++++ muse-0.6.2/memory.h 2004-06-29 18:53:55.567225085 +0000
+@@ -24,11 +24,11 @@
+ Verweis* next;
+ };
+ struct Chunk {
+- enum { size = 4 * 1024 };
++ enum { size = sizeof(void*) * 1024 };
+ Chunk* next;
+ char mem[size];
+ };
+- enum { dimension = 8 };
++ enum { dimension = 4*sizeof(void*) }; //maybe 2*sizeof(void*) was meant .. nobody knows
+ Chunk* chunks[dimension];
+ Verweis* head[dimension];
+ Pool(Pool&);
+@@ -48,10 +48,10 @@
+
+ inline void* Pool::alloc(size_t n)
+ {
+- int idx = ((n + sizeof(int) - 1) / sizeof(int)) - 1;
++ int idx = ((n + sizeof(void*) - 1) / sizeof(void*)) - 1; // what does that formular mean?
+ if (idx >= dimension) {
+- printf("panic: alloc %lu\n", n);
+- exit(-1);
++ printf("Using std-allocator %lu characters requested",n);
++ return ::operator new(n);
+ }
+ if (head[idx] == 0)
+ grow(idx);
+@@ -66,10 +66,10 @@
+
+ inline void Pool::free(void* b, size_t n)
+ {
+- int idx = ((n + sizeof(int) - 1) / sizeof(int)) - 1;
++ int idx = ((n + sizeof(void*) - 1) / sizeof(void*)) - 1;
+ if (idx >= dimension) {
+- printf("panic: alloc %lu\n", n);
+- exit(-1);
++ printf("Using std-deallocator %lu characters to be freed",n);
++ return ::operator delete(b);
+ }
+ Verweis* p = static_cast<Verweis*>(b);
+ p->next = head[idx];
+