diff options
author | Yoann Lopes <yoann.lopes@digia.com> | 2014-06-12 18:48:15 +0200 |
---|---|---|
committer | Yoann Lopes <yoann.lopes@digia.com> | 2014-07-10 15:59:37 +0200 |
commit | 85f4b8177ca10e7e16ccc3065370589630400f2b (patch) | |
tree | f27f1bd6282b0d3038d8f991c6772399235b90de /src/plugins/pulseaudio/qaudioinput_pulse.h | |
parent | 8da61153c9b4e505b6f8a0e7a6c630690516d845 (diff) |
PulseAudio: make plugin more robust.
Handle more thoroughly error cases, such as when the PulseAudio daemon
does not respond or terminates while QAudioInput/QAudioOutput is
active, in which cases it used to crash or hang.
We now correctly emit the error signal and change the state when errors
occur.
Task-number: QTBUG-29742
Change-Id: I173d35aece60d96e578785e1522cf78b24dcb8b8
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
Diffstat (limited to 'src/plugins/pulseaudio/qaudioinput_pulse.h')
-rw-r--r-- | src/plugins/pulseaudio/qaudioinput_pulse.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/plugins/pulseaudio/qaudioinput_pulse.h b/src/plugins/pulseaudio/qaudioinput_pulse.h index bb72628f8..e2c46c8e6 100644 --- a/src/plugins/pulseaudio/qaudioinput_pulse.h +++ b/src/plugins/pulseaudio/qaudioinput_pulse.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the Qt Toolkit. @@ -112,8 +112,12 @@ public: private slots: void userFeed(); bool deviceReady(); + void onPulseContextFailed(); private: + void setState(QAudio::State state); + void setError(QAudio::Error error); + int checkBytesReady(); bool open(); void close(); |