[BRLTTY] New release coming soon.
Nicolas Pitre
nico at fluxnic.net
Wed Dec 18 18:29:17 EST 2013
On Wed, 18 Dec 2013, Nicolas Pitre wrote:
> On Wed, 18 Dec 2013, Eric Scheibler wrote:
>
> > Dave Mielke <dave at 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
More information about the BRLTTY
mailing list