RecordFlushReplyBuffer can call itself recursively through
when the recording client's buffer cannot be completely emptied in one
WriteClient. When a such a recursion occurs, it will not be broken out
of which results in segmentation fault when the stack is exhausted.
This patch adds a counter (a flag, really) that guards against this
situation, to break out of the recursion.
One alternative to this change would be to change _CallCallbacks to
check the corresponding counter before the callback loop, but that
might affect existing behavior, which may be relied upon.
Reviewed-by: Rami Ylimäki <email@example.com>
Signed-off-by: Erkki Seppälä <firstname.lastname@example.org>
Signed-off-by: Keith Packard <email@example.com>