On Wed, 18 Dec 2013, Nicolas Pitre wrote: > On Wed, 18 Dec 2013, Eric Scheibler wrote: > > > Dave Mielke <d...@mielke.cc> schrieb am 18.12.2013, 11:45 -0500: > > >Eric: This patch has now been committed. Please update and retest. > > > > Updated to ref 8276M. I'am sorry but it's as bad as before. During typing > > maybe it's even worse > > again but I can't prove that. It's definitely unusable. > > Argh. It worked all right for me yesterday. Now I retest it today and > it doesn't work well anymore. > > Could you try reverting the change in revision 8268 (i.e. reintroducing > the +1) into the latest source tree and retest please? > > That's what I'm testing right now and this appears to work properly for > me. That should bring things back to what they were as far as the > espeak library is concerned.
Just to avoid possible confusion, what I think is needed at this point is this patch below. This is a revert of revision 8268. Revision 8268 is the result of a change that I suggested yesterday as the driver didn't get a nul terminated string anymore. But since then I believe that the non-nul terminated buffer was the actual bug and the driver code should be reverted to its original form. diff --git a/Drivers/Speech/eSpeak/speech.c b/Drivers/Speech/eSpeak/speech.c index c474ec9..15547c4 100644 --- a/Drivers/Speech/eSpeak/speech.c +++ b/Drivers/Speech/eSpeak/speech.c @@ -57,7 +57,8 @@ spk_say(SpeechSynthesizer *spk, const unsigned char *buffer, size_t length, size IndexPos = 0; - result = espeak_Synth(buffer, length, 0, POS_CHARACTER, 0, + /* add 1 to the length in order to pass along the trailing zero */ + result = espeak_Synth(buffer, length+1, 0, POS_CHARACTER, 0, espeakCHARS_UTF8, NULL, NULL); if (result != EE_OK) logMessage(LOG_ERR, "eSpeak: Synth() returned error %d", result); Nicolas _______________________________________________ This message was sent via the BRLTTY mailing list. To post a message, send an e-mail to: BRLTTY@mielke.cc For general information, go to: http://mielke.cc/mailman/listinfo/brltty