aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--audio/timidity++/Makefile.interface3
-rw-r--r--audio/timidity++/files/patch-xaw_i.c38
2 files changed, 38 insertions, 3 deletions
diff --git a/audio/timidity++/Makefile.interface b/audio/timidity++/Makefile.interface
index 2044e09d4475..e4c27f9149a4 100644
--- a/audio/timidity++/Makefile.interface
+++ b/audio/timidity++/Makefile.interface
@@ -103,9 +103,6 @@ USE_XLIB= yes
DOCFILES= README.xaw
DOCLANG= C ja_JP.eucJP
-.if ${OSVERSION} >= 700042
-BROKEN= Does not compile with GCC 4.2
-.endif
.endif
.if ${INTERFACE} == "xskin"
diff --git a/audio/timidity++/files/patch-xaw_i.c b/audio/timidity++/files/patch-xaw_i.c
new file mode 100644
index 000000000000..7f407b4f4e3a
--- /dev/null
+++ b/audio/timidity++/files/patch-xaw_i.c
@@ -0,0 +1,38 @@
+--- interface/xaw_i.c.orig 2004-09-27 08:40:14.000000000 +0900
++++ interface/xaw_i.c 2007-07-04 01:31:24.000000000 +0900
+@@ -261,7 +261,7 @@
+ String bitmapdir = XAW_BITMAP_DIR;
+ Boolean arrangetitle,savelist;
+ static char **current_flist = NULL;
+-static int voices = 0, last_voice = 0, voices_num_width;
++static int xaw_i_voices = 0, last_voice = 0, voices_num_width;
+ static int maxentry_on_a_menu = 0,submenu_n = 0;
+ #define OPTIONS_WINDOW 1
+ #define FLIST_WINDOW 2
+@@ -1329,7 +1329,7 @@
+ c= *(local_buf+1);
+ n= atoi(local_buf+2);
+ if(c == 'L')
+- voices = n;
++ xaw_i_voices = n;
+ else
+ last_voice = n;
+ if(IsTracePlaying()) drawVoices();
+@@ -2070,7 +2070,7 @@
+ XSetForeground(disp, gct, tracecolor);
+ XFillRectangle(disp,XtWindow(trace),gct,voices_num_width +4,
+ MAX_XAW_MIDI_CHANNELS*BAR_SPACE+TRACEV_OFS+1,VOICENUM_WIDTH,TRACE_FOOT);
+- sprintf(local_buf, "%3d/%d", last_voice, voices);
++ sprintf(local_buf, "%3d/%d", last_voice, xaw_i_voices);
+ XSetForeground(disp, gct, capcolor);
+ XDrawString(disp, XtWindow(trace),gct,voices_num_width+6,
+ MAX_XAW_MIDI_CHANNELS*BAR_SPACE+TRACEV_OFS+16,local_buf,strlen(local_buf));
+@@ -2326,7 +2326,7 @@
+ if (c == LF || c == EOF || i > SSIZE) break;
+ *p++ = c;
+ }
+- *p = (char)NULL;
++ *p = '\0';
+ if (0 != strncasecmp(s, "set ", 4)) continue;
+ switch (configcmp(s+4, &k)) {
+ case S_RepeatPlay: