aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/Input/cdaudio/decoder_cdaudio.cpp2
-rw-r--r--src/plugins/Input/cdaudio/decodercdaudiofactory.cpp11
-rw-r--r--src/plugins/Input/cdaudio/decodercdaudiofactory.h1
-rw-r--r--src/plugins/Input/cdaudio/settingsdialog.cpp4
4 files changed, 15 insertions, 3 deletions
diff --git a/src/plugins/Input/cdaudio/decoder_cdaudio.cpp b/src/plugins/Input/cdaudio/decoder_cdaudio.cpp
index 780c37ec1..10fa8482d 100644
--- a/src/plugins/Input/cdaudio/decoder_cdaudio.cpp
+++ b/src/plugins/Input/cdaudio/decoder_cdaudio.cpp
@@ -242,7 +242,7 @@ QList<CDATrack> DecoderCDAudio::generateTrackList(const QString &device, TrackIn
{
cddb_cache_disable (cddb_conn); //disable libcddb cache, use own cache implementation instead
settings.beginGroup("cdaudio");
- cddb_set_server_name (cddb_conn, settings.value("cddb_server", "freedb.org").toByteArray().constData());
+ cddb_set_server_name (cddb_conn, settings.value("cddb_server", "gnudb.org").toByteArray().constData());
cddb_set_server_port (cddb_conn, settings.value("cddb_port", 8880).toInt());
if (settings.value("cddb_http", false).toBool())
diff --git a/src/plugins/Input/cdaudio/decodercdaudiofactory.cpp b/src/plugins/Input/cdaudio/decodercdaudiofactory.cpp
index 2025e8f8b..8bb24cf61 100644
--- a/src/plugins/Input/cdaudio/decodercdaudiofactory.cpp
+++ b/src/plugins/Input/cdaudio/decodercdaudiofactory.cpp
@@ -19,6 +19,7 @@
***************************************************************************/
#include <QMessageBox>
+#include <QSettings>
#include <cdio/version.h>
#include <cddb/version.h>
#include "settingsdialog.h"
@@ -28,6 +29,16 @@
// DecoderCDAudioFactory
+DecoderCDAudioFactory::DecoderCDAudioFactory()
+{
+ QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
+ if(settings.value("cdaudio/cddb_server").toByteArray() == "freedb.org")
+ {
+ qDebug("DecoderCDAudioFactory: switching to gnudb.org");
+ settings.setValue("cdaudio/cddb_server", "gnudb.org");
+ }
+}
+
bool DecoderCDAudioFactory::canDecode(QIODevice *) const
{
return false;
diff --git a/src/plugins/Input/cdaudio/decodercdaudiofactory.h b/src/plugins/Input/cdaudio/decodercdaudiofactory.h
index e49e2f70d..0612fa0d4 100644
--- a/src/plugins/Input/cdaudio/decodercdaudiofactory.h
+++ b/src/plugins/Input/cdaudio/decodercdaudiofactory.h
@@ -29,6 +29,7 @@ class DecoderCDAudioFactory : public QObject, DecoderFactory
Q_PLUGIN_METADATA(IID "org.qmmp.qmmp.DecoderFactoryInterface.1.0")
Q_INTERFACES(DecoderFactory)
public:
+ DecoderCDAudioFactory();
bool canDecode(QIODevice *input) const override;
DecoderProperties properties() const override;
Decoder *create(const QString &, QIODevice *) override;
diff --git a/src/plugins/Input/cdaudio/settingsdialog.cpp b/src/plugins/Input/cdaudio/settingsdialog.cpp
index 0e428039e..f6edf0b48 100644
--- a/src/plugins/Input/cdaudio/settingsdialog.cpp
+++ b/src/plugins/Input/cdaudio/settingsdialog.cpp
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2009-2013 by Ilya Kotov *
+ * Copyright (C) 2009-2020 by Ilya Kotov *
* forkotov02@ya.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -39,7 +39,7 @@ SettingsDialog::SettingsDialog(QWidget *parent)
m_ui.cdtextCheckBox->setChecked(settings.value("cdtext", true).toBool());
m_ui.cddbGroupBox->setChecked(settings.value("use_cddb", false).toBool());
m_ui.httpCheckBox->setChecked(settings.value("cddb_http", false).toBool());
- m_ui.serverLineEdit->setText(settings.value("cddb_server", "freedb.org").toString());
+ m_ui.serverLineEdit->setText(settings.value("cddb_server", "gnudb.org").toString());
m_ui.pathLineEdit->setText(settings.value("cddb_path").toString());
m_ui.portLineEdit->setText(settings.value("cddb_port", 8880).toString());
settings.endGroup();