--- a/src/multimedia/audio/qaudiooutput_alsa_p.cpp Wed Apr 21 12:15:23 2010 +0300
+++ b/src/multimedia/audio/qaudiooutput_alsa_p.cpp Wed Apr 21 20:15:53 2010 +0300
@@ -84,8 +84,7 @@
resuming = false;
opened = false;
- QStringList list1 = QString(QLatin1String(device)).split(QLatin1String(":"));
- m_device = QByteArray(list1.at(0).toLocal8Bit().constData());
+ m_device = device;
timer = new QTimer(this);
connect(timer,SIGNAL(timeout()),SLOT(userFeed()));
@@ -282,11 +281,11 @@
int count=0;
unsigned int freakuency=settings.frequency();
- QString dev = QLatin1String(m_device.constData());
+ QString dev = QString(QLatin1String(m_device.constData()));
QList<QByteArray> devices = QAudioDeviceInfoInternal::availableDevices(QAudio::AudioOutput);
if(dev.compare(QLatin1String("default")) == 0) {
#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
- dev = QLatin1String(devices.first().constData());
+ dev = QLatin1String(devices.first());
#else
dev = QLatin1String("hw:0,0");
#endif
@@ -485,7 +484,6 @@
void QAudioOutputPrivate::close()
{
- deviceState = QAudio::StoppedState;
timer->stop();
if ( handle ) {
@@ -701,6 +699,7 @@
} else if(l < 0) {
close();
+ deviceState = QAudio::StoppedState;
errorState = QAudio::IOError;
emit stateChanged(deviceState);
}