From bc53bb7913bbf68519508a0ab76c513335b3e5bb Mon Sep 17 00:00:00 2001 From: Ralf Nolden Date: Mon, 27 Jun 2016 10:57:05 +0200 Subject: Fix use of -ESTRPIPE where it's not available in errno NetBSD does not have -ESTRPIPE, so use it only when defined. http://netbsd.gw.com/cgi-bin/man-cgi?errno+2+NetBSD-6.0 and https://mail-index.netbsd.org/pkgsrc-wip-discuss/2013/10/27/msg002529.html Change-Id: I92921a16fcae95f58a870aea98ca66f5a5d30a12 Reviewed-by: Frederik Gladhorn --- src/plugins/alsa/qalsaaudiooutput.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/plugins/alsa/qalsaaudiooutput.cpp') diff --git a/src/plugins/alsa/qalsaaudiooutput.cpp b/src/plugins/alsa/qalsaaudiooutput.cpp index bf607e057..57937135d 100644 --- a/src/plugins/alsa/qalsaaudiooutput.cpp +++ b/src/plugins/alsa/qalsaaudiooutput.cpp @@ -114,6 +114,12 @@ int QAlsaAudioOutput::xrun_recovery(int err) int count = 0; bool reset = false; + // ESTRPIPE is not available in all OSes where ALSA is available + int estrpipe = EIO; +#ifdef ESTRPIPE + estrpipe = ESTRPIPE; +#endif + if(err == -EPIPE) { errorState = QAudio::UnderrunError; emit errorChanged(errorState); @@ -121,7 +127,7 @@ int QAlsaAudioOutput::xrun_recovery(int err) if(err < 0) reset = true; - } else if((err == -ESTRPIPE)||(err == -EIO)) { + } else if ((err == -estrpipe)||(err == -EIO)) { errorState = QAudio::IOError; emit errorChanged(errorState); while((err = snd_pcm_resume(handle)) == -EAGAIN){ -- cgit v1.2.3