summary refs log tree commit diff
path: root/pkgs/applications/audio/yasr/40_dectalk_extended_chars.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/audio/yasr/40_dectalk_extended_chars.patch')
-rw-r--r--pkgs/applications/audio/yasr/40_dectalk_extended_chars.patch14
1 files changed, 14 insertions, 0 deletions
diff --git a/pkgs/applications/audio/yasr/40_dectalk_extended_chars.patch b/pkgs/applications/audio/yasr/40_dectalk_extended_chars.patch
new file mode 100644
index 00000000000..cc1f0af8606
--- /dev/null
+++ b/pkgs/applications/audio/yasr/40_dectalk_extended_chars.patch
@@ -0,0 +1,14 @@
+Index: yasr-0.6.9/yasr/tts.c
+===================================================================
+--- yasr-0.6.9.orig/yasr/tts.c	2008-02-03 00:10:07.000000000 +1100
++++ yasr-0.6.9/yasr/tts.c	2012-02-05 10:59:06.059007839 +1100
+@@ -281,6 +281,9 @@
+   char *p = synth[tts.synth].unspeakable;
+ 
+   if (ch < 32) return 1;
++  /* characters with high bit set cause DECTALK to crash */
++  if (tts.synth == TTS_DECTALK && ch & 0x80)
++    return 1;
+   while (*p)
+   {
+     if (*p++ == ch) return 1;