aboutsummaryrefslogtreecommitdiff
path: root/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/Transports/http/httpstreamreader.cpp7
-rw-r--r--src/plugins/Transports/http/httpstreamreader.h3
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
};