diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2016-05-16 10:44:24 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2016-05-16 10:44:24 +0000 |
| commit | 61795f7dc3aff2ec8eb4d73292b6584a4dedd4b0 (patch) | |
| tree | 0723d67e5a7cc65fe53d683bdb00dc1cc62632aa /src/plugins/Transports | |
| parent | f94f4b212e2d9e89802a235b4682e380dc93cede (diff) | |
| download | qmmp-61795f7dc3aff2ec8eb4d73292b6584a4dedd4b0.tar.gz qmmp-61795f7dc3aff2ec8eb4d73292b6584a4dedd4b0.tar.bz2 qmmp-61795f7dc3aff2ec8eb4d73292b6584a4dedd4b0.zip | |
curl: using previous encoding if current encoding is not detected
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@6351 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Transports')
| -rw-r--r-- | src/plugins/Transports/http/httpstreamreader.cpp | 7 | ||||
| -rw-r--r-- | src/plugins/Transports/http/httpstreamreader.h | 3 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/plugins/Transports/http/httpstreamreader.cpp b/src/plugins/Transports/http/httpstreamreader.cpp index 7d5167244..a667025f8 100644 --- a/src/plugins/Transports/http/httpstreamreader.cpp +++ b/src/plugins/Transports/http/httpstreamreader.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2006-2015 by Ilya Kotov * + * Copyright (C) 2006-2016 by Ilya Kotov * * forkotov02@hotmail.ru * * * * This program is free software; you can redistribute it and/or modify * @@ -131,6 +131,7 @@ HttpStreamReader::HttpStreamReader(const QString &url, HTTPInputSource *parent) m_codec = QTextCodec::codecForName ("UTF-8"); #ifdef WITH_ENCA m_analyser = 0; + m_prevCodec = 0; if(settings.value("use_enca", false).toBool()) m_analyser = enca_analyser_alloc(settings.value("enca_lang").toByteArray ().constData()); if(m_analyser) @@ -442,7 +443,11 @@ void HttpStreamReader::parseICYMetaData(char *data, qint64 size) enca_charset_name(encoding.charset,ENCA_NAME_STYLE_ENCA)); if(!codec) codec = m_codec; + + m_prevCodec = codec; } + else if(m_prevCodec) + codec = m_prevCodec; } #endif QString str = codec->toUnicode(data).trimmed(); diff --git a/src/plugins/Transports/http/httpstreamreader.h b/src/plugins/Transports/http/httpstreamreader.h index 61ea1be14..0ff615fd5 100644 --- a/src/plugins/Transports/http/httpstreamreader.h +++ b/src/plugins/Transports/http/httpstreamreader.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2006-2015 by Ilya Kotov * + * Copyright (C) 2006-2016 by Ilya Kotov * * forkotov02@hotmail.ru * * * * This program is free software; you can redistribute it and/or modify * @@ -110,6 +110,7 @@ private: HTTPInputSource *m_parent; #ifdef WITH_ENCA EncaAnalyser m_analyser; + QTextCodec *m_prevCodec; #endif }; |
