When the server receives a corrupt model, the synchronization will sometimes simply hang after the error is reported to the user.
Somehow, I can no longer reproduce it no matter how hard I try. Might have gotten fixed with the restructuring of the way the server sends responses.
Still present when using unsupported base model (sphinx w/o sphinx support for example)
Git commit a422221735c016463a79ff06a53cb56323818e49 by Peter Grasch. Committed on 12/06/2013 at 18:20. Pushed by grasch into branch 'master'. Fixing network communication corruption The method to process the server replies was not reentrant. As our custom thread safe tcp socket did not account for that, a race condition would occasionally mess with the read cursor. M +30 -18 simon/src/simonrecognitioncontrol/recognitioncontrol.cpp M +2 -0 simon/src/simonrecognitioncontrol/recognitioncontrol.h http://commits.kde.org/simon/a422221735c016463a79ff06a53cb56323818e49