Bug 314264 - Corrupt base models cause synchronization hangs
Summary: Corrupt base models cause synchronization hangs
Alias: None
Product: simon
Classification: Unclassified
Component: simond (show other bugs)
Version: unspecified
Platform: Other Linux
: HI normal (vote)
Target Milestone: ---
Assignee: Peter Grasch
Depends on:
Reported: 2013-02-01 18:51 UTC by Peter Grasch
Modified: 2013-06-12 18:44 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Note You need to log in before you can comment on or make changes to this bug.
Description Peter Grasch 2013-02-01 18:51:21 UTC
When the server receives a corrupt model, the synchronization will sometimes simply hang after the error is reported to the user.
Comment 1 Peter Grasch 2013-06-11 18:37:34 UTC
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.
Comment 2 Peter Grasch 2013-06-12 13:12:24 UTC
Still present when using unsupported base model (sphinx w/o sphinx support for example)
Comment 3 Peter Grasch 2013-06-12 18:44:50 UTC
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