Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is an attempt to fix a lockup issue that we see in the Swift
example app when the camera capture status subscription is used.
Presumably, the lockup has nothing to do with the actual camera capture
status but it just leads to the right timing to trigger something else.
What happens is that
receive_timeout()
is called but then the commandqueue turns out to be empty (returns
nullptr
). After that, no morecommands can be processed and we keep getting the warning:
"Command ack not matching our current command: 257".
This makes sense because we stop doing work, so send any commands as
long as
_state
isState::WAITING
and there is no other timeout thatwould reset this.
Therefore, this change should resolve that case by reseting
_state
, sothat we can keep going.
However, this change does not fix or explain why the queue is empty in
the first place and out of sync with
_state
.