From 4f9d7dde3a06da26d93e8f7ec98a283111a2d8c9 Mon Sep 17 00:00:00 2001 From: David Faure Date: Wed, 7 Dec 2016 09:29:31 +0100 Subject: Revert "Generate an instance with KSharedConfig::Ptr for singleton and arg" This reverts commit cd4e6504dfbdface00037625f0cedda511e6d839. As suggested by Martin on release-team@kde.org, given that it breaks SC. --- src/kconfig_compiler/kconfig_compiler.cpp | 33 +++++++++++-------------------- 1 file changed, 11 insertions(+), 22 deletions(-) (limited to 'src') diff --git a/src/kconfig_compiler/kconfig_compiler.cpp b/src/kconfig_compiler/kconfig_compiler.cpp index 99ecff7d..121bea4f 100644 --- a/src/kconfig_compiler/kconfig_compiler.cpp +++ b/src/kconfig_compiler/kconfig_compiler.cpp @@ -1893,7 +1893,6 @@ int main(int argc, char **argv) h << " static " << cfg.className << " *self();" << endl; if (cfgFileNameArg) { h << " static void instance(const QString& cfgfilename);" << endl; - h << " static void instance(KSharedConfig::Ptr config);" << endl; } } @@ -2116,7 +2115,7 @@ int main(int argc, char **argv) if (cfg.singleton) { h << " " << cfg.className << "("; if (cfgFileNameArg) { - h << "KSharedConfig::Ptr config"; + h << "const QString& arg"; } h << ");" << endl; h << " friend class " << cfg.className << "Helper;" << endl << endl; @@ -2321,25 +2320,15 @@ int main(int argc, char **argv) cpp << "}" << endl << endl; if (cfgFileNameArg) { - auto instance = [&cfg, &cpp] (const QString &type, const QString arg, bool wrap) { - cpp << "void " << cfg.className << "::instance(" << type << " " << arg << ")" << endl; - cpp << "{" << endl; - cpp << " if (s_global" << cfg.className << "()->q) {" << endl; - cpp << " qDebug() << \"" << cfg.className << "::instance called after the first use - ignoring\";" << endl; - cpp << " return;" << endl; - cpp << " }" << endl; - cpp << " new " << cfg.className << "("; - if (wrap) { - cpp << "KSharedConfig::openConfig(" << arg << ")"; - } else { - cpp << arg; - } - cpp << ");" << endl; - cpp << " s_global" << cfg.className << "()->q->read();" << endl; - cpp << "}" << endl << endl; - }; - instance(QStringLiteral("const QString&"), QStringLiteral("cfgfilename"), true); - instance(QStringLiteral("KSharedConfig::Ptr"), QStringLiteral("config"), false); + cpp << "void " << cfg.className << "::instance(const QString& cfgfilename)" << endl; + cpp << "{" << endl; + cpp << " if (s_global" << cfg.className << "()->q) {" << endl; + cpp << " qDebug() << \"" << cfg.className << "::instance called after the first use - ignoring\";" << endl; + cpp << " return;" << endl; + cpp << " }" << endl; + cpp << " new " << cfg.className << "(cfgfilename);" << endl; + cpp << " s_global" << cfg.className << "()->q->read();" << endl; + cpp << "}" << endl << endl; } } @@ -2350,7 +2339,7 @@ int main(int argc, char **argv) // Constructor cpp << cfg.className << "::" << cfg.className << "( "; if (cfgFileNameArg) { - if (! cfg.forceStringFilename) { + if (!cfg.singleton && ! cfg.forceStringFilename) { cpp << " KSharedConfig::Ptr config"; } else { cpp << " const QString& config"; -- cgit v1.2.1