From e394c172ceda1949ae6ba8325c98abfb433b0a89 Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Mon, 1 Feb 2010 22:24:03 +0000 Subject: http plugin: added settings dialog git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@1539 90c681e8-e032-0410-971d-27865f9a5e38 --- src/plugins/Transports/http/downloader.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'src/plugins/Transports/http/downloader.cpp') diff --git a/src/plugins/Transports/http/downloader.cpp b/src/plugins/Transports/http/downloader.cpp index 37e9c3061..e2bfbe252 100644 --- a/src/plugins/Transports/http/downloader.cpp +++ b/src/plugins/Transports/http/downloader.cpp @@ -22,6 +22,8 @@ #include #include #include +#include +#include #include #include #include @@ -116,6 +118,11 @@ Downloader::Downloader(QObject *parent, const QString &url) m_handle = 0; m_metacount = 0; m_meta_sent = FALSE; + QSettings settings(Qmmp::configFile(), QSettings::IniFormat); + m_codec = QTextCodec::codecForName(settings.value("HTTP/icy_encoding","windows-1252").toByteArray ()); + m_buffer_size = settings.value("HTTP/buffer_size",128).toInt() * 1000; + if (!m_codec) + m_codec = QTextCodec::codecForName ("UTF-8"); } @@ -294,7 +301,7 @@ const QString &Downloader::title() const void Downloader::checkBuffer() { - if (m_stream.buf_fill > BUFFER_SIZE && !m_ready) + if (m_stream.buf_fill > m_buffer_size && !m_ready) { m_ready = TRUE; qDebug("Downloader: ready"); @@ -310,7 +317,7 @@ void Downloader::checkBuffer() } else if (!m_ready) { - StateHandler::instance()->dispatchBuffer(100 * m_stream.buf_fill / BUFFER_SIZE); + StateHandler::instance()->dispatchBuffer(100 * m_stream.buf_fill / m_buffer_size); qApp->processEvents(); } } @@ -346,7 +353,7 @@ void Downloader::readICYMetaData() void Downloader::parseICYMetaData(char *data) { - QString str(data); + QString str = m_codec->toUnicode(data).trimmed(); QStringList list(str.split(";", QString::SkipEmptyParts)); foreach(QString line, list) { -- cgit v1.2.3-13-gbd6f