commit e965d07055f5dd3e046469232e4b3986fb60cbaf
speech: added flite - the alternative synthesis engine.

write_to_festival inserts backslashes in front of double-quotes
and backslashes so that Festival can distinguish them from string
delimiters.  Now if FLITE_SYSTEM is selected, the output instead
goes to a loop in init_festival that adds quotes around the
string and "flite -t " to the beginning and calls system().
Unfortunately, the shell executed by system() recognizes more
metacharacters in double-quoted strings than just double-quotes
and backslashes.  Specifically, if the string contains `foo` or
$(foo), then arbitrary programs can be executed.

It may also be possible that flite treats the entire line as an
option if it begins with a dash.  (The quotes don't help here
because the shell eats them.)  The documentation at
<http://www.speech.cs.cmu.edu/flite/doc/flite_7.html#SEC16> does
not say whether that is possible; I suppose someone should check
the source code of flite.

Attachment: pgpx54KODjVxc.pgp
Description: PGP signature

_______________________________________________
elinks-dev mailing list
elinks-dev@linuxfromscratch.org
http://linuxfromscratch.org/mailman/listinfo/elinks-dev

Reply via email to