FS#11155 - Fix Festival support in rbutil and some memory leak repair

Attached to Project: Rockbox
Opened by Delyan Kratunov (archivator) - Tuesday, 30 March 2010, 10:28 GMT
Last edited by Dominik Wenger (Domonoky) - Tuesday, 30 March 2010, 17:46 GMT
Task Type Patches
Category Rbutil
Status Closed
Assigned To No-one
Operating System All players
Severity Low
Priority Normal
Reported Version Release 3.4
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


The first patch fixes festival support (by using a temporary prolog file for festival_client) and attempts to make it more stable. The patch:
1) introduces a spinlock when starting the server (hopefully it won't eat up too much CPU time)
2) increases all timeouts (to 10secs)
3) removes the "path" argument to all methods in favor of a currentPath member variable
4) prettifies debug messages

The second patch fixes the memory leaks in configure.cpp. Basically, Config objects are created on demand but *never* deleted. However, we need to delete TTSBase objects, so that the server process is terminated and we have a clean slate. Optimally, the core will be changed to delete Config objects (instead of leaving them to QObject cleanup) but I'm not sure what the ramifications of that would be, so I'm just sticking to deleting TTSBase for now.

I have a very strong feeling this memory leaking was responsible for the instability previously encountered. Hopefully, festival will behave this time around.
This task depends upon

Closed by  Dominik Wenger (Domonoky)
Tuesday, 30 March 2010, 17:46 GMT
Reason for closing:  Accepted
Additional comments about closing:  just commited it.