summaryrefslogtreecommitdiffstats
path: root/src/plugins/pulseaudio/qaudioinput_pulse.h
diff options
context:
space:
mode:
authorYoann Lopes <yoann.lopes@digia.com>2014-06-12 18:48:15 +0200
committerYoann Lopes <yoann.lopes@digia.com>2014-07-10 15:59:37 +0200
commit85f4b8177ca10e7e16ccc3065370589630400f2b (patch)
treef27f1bd6282b0d3038d8f991c6772399235b90de /src/plugins/pulseaudio/qaudioinput_pulse.h
parent8da61153c9b4e505b6f8a0e7a6c630690516d845 (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.h6
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();