diff options
author | Brendan Long <self@brendanlong.com> | 2017-11-07 04:51:59 +0300 |
---|---|---|
committer | Brendan Long <self@brendanlong.com> | 2017-11-07 04:57:26 +0300 |
commit | eb3c400ef69db729cbcfe9593c63ee921883041e (patch) | |
tree | 55ff4bb4ada3afa1752b1929310f4bdf5228c2ea | |
parent | ce7ee48097fc52ad80b34166f7fa376ad2d8ebe0 (diff) |
Use the default SettingsBackend with `null` instead of looking it updefault-settings-backend
For some reason this fixes an Arch Linux / Manjaro crash.
22 files changed, 58 insertions, 31 deletions
diff --git a/plugins/backend/bazqux/bazquxInterface.vala b/plugins/backend/bazqux/bazquxInterface.vala index 6837e0af..1acebbce 100644 --- a/plugins/backend/bazqux/bazquxInterface.vala +++ b/plugins/backend/bazqux/bazquxInterface.vala @@ -22,7 +22,7 @@ public class FeedReader.bazquxInterface : Peas.ExtensionBase, FeedServerInterfac private DataBaseReadOnly m_db; private DataBase m_db_write; - public void init(GLib.SettingsBackend settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) + public void init(GLib.SettingsBackend? settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) { m_db = db; m_db_write = db_write; diff --git a/plugins/backend/bazqux/bazquxUtils.vala b/plugins/backend/bazqux/bazquxUtils.vala index 45d7ba7d..fd5b4d15 100644 --- a/plugins/backend/bazqux/bazquxUtils.vala +++ b/plugins/backend/bazqux/bazquxUtils.vala @@ -22,9 +22,12 @@ public class FeedReader.bazquxUtils : GLib.Object { private GLib.Settings m_settings; private Password m_password; - public bazquxUtils(GLib.SettingsBackend settings_backend, Secret.Collection secrets) + public bazquxUtils(GLib.SettingsBackend? settings_backend, Secret.Collection secrets) { - m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.bazqux", settings_backend); + if(settings_backend != null) + m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.bazqux", settings_backend); + else + m_settings = new GLib.Settings("org.gnome.feedreader.bazqux"); var password_schema = new Secret.Schema ("org.gnome.feedreader.bazqux", Secret.SchemaFlags.NONE, "type", Secret.SchemaAttributeType.STRING, diff --git a/plugins/backend/demo/demoInterface.vala b/plugins/backend/demo/demoInterface.vala index 6efe3dc4..270f7767 100644 --- a/plugins/backend/demo/demoInterface.vala +++ b/plugins/backend/demo/demoInterface.vala @@ -10,7 +10,7 @@ public class FeedReader.demoInterface : Peas.ExtensionBase, FeedServerInterface // This method gets executed right after the plugin is loaded. Do everything // you need to set up the plugin here. //-------------------------------------------------------------------------------------- - public void init(GLib.SettingsBackend settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) + public void init(GLib.SettingsBackend? settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) { } diff --git a/plugins/backend/feedbin/feedbinInterface.vala b/plugins/backend/feedbin/feedbinInterface.vala index e901e126..93b8f9c5 100644 --- a/plugins/backend/feedbin/feedbinInterface.vala +++ b/plugins/backend/feedbin/feedbinInterface.vala @@ -22,7 +22,7 @@ public class FeedReader.FeedbinInterface : Peas.ExtensionBase, FeedServerInterfa private DataBaseReadOnly m_db; private DataBase m_db_write; - public void init(GLib.SettingsBackend settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) + public void init(GLib.SettingsBackend? settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) { m_db = db; m_db_write = db_write; diff --git a/plugins/backend/feedbin/feedbinUtils.vala b/plugins/backend/feedbin/feedbinUtils.vala index 194f92eb..674aefda 100644 --- a/plugins/backend/feedbin/feedbinUtils.vala +++ b/plugins/backend/feedbin/feedbinUtils.vala @@ -18,9 +18,12 @@ class FeedReader.FeedbinUtils : GLib.Object { GLib.Settings m_settings; Password m_password; - public FeedbinUtils(GLib.SettingsBackend settings_backend, Secret.Collection secrets) + public FeedbinUtils(GLib.SettingsBackend? settings_backend, Secret.Collection secrets) { - m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.feedbin", settings_backend); + if(settings_backend != null) + m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.feedbin", settings_backend); + else + m_settings = new GLib.Settings("org.gnome.feedreader.feedbin"); var password_schema = new Secret.Schema("org.gnome.feedreader.password", Secret.SchemaFlags.NONE, diff --git a/plugins/backend/feedhq/feedhqInterface.vala b/plugins/backend/feedhq/feedhqInterface.vala index 309f0d1c..c30dc41e 100644 --- a/plugins/backend/feedhq/feedhqInterface.vala +++ b/plugins/backend/feedhq/feedhqInterface.vala @@ -22,7 +22,7 @@ public class FeedReader.FeedHQInterface : Peas.ExtensionBase, FeedServerInterfac private DataBaseReadOnly m_db; private DataBase m_db_write; - public void init(GLib.SettingsBackend settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) + public void init(GLib.SettingsBackend? settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) { m_db = db; m_db_write = db_write; diff --git a/plugins/backend/feedhq/feedhqUtils.vala b/plugins/backend/feedhq/feedhqUtils.vala index c8e9f116..483edd74 100644 --- a/plugins/backend/feedhq/feedhqUtils.vala +++ b/plugins/backend/feedhq/feedhqUtils.vala @@ -22,9 +22,12 @@ public class FeedReader.FeedHQUtils : GLib.Object { private GLib.Settings m_settings; private Password m_password; - public FeedHQUtils(GLib.SettingsBackend settings_backend, Secret.Collection secrets) + public FeedHQUtils(GLib.SettingsBackend? settings_backend, Secret.Collection secrets) { - m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.feedhq", settings_backend); + if(settings_backend != null) + m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.feedhq", settings_backend); + else + m_settings = new GLib.Settings("org.gnome.feedreader.feedhq"); var pwSchema = new Secret.Schema ("org.gnome.feedreader.feedhq", Secret.SchemaFlags.NONE, "type", Secret.SchemaAttributeType.STRING, diff --git a/plugins/backend/feedly/feedlyInterface.vala b/plugins/backend/feedly/feedlyInterface.vala index f62499ee..10f9e83e 100644 --- a/plugins/backend/feedly/feedlyInterface.vala +++ b/plugins/backend/feedly/feedlyInterface.vala @@ -20,7 +20,7 @@ public class FeedReader.feedlyInterface : Peas.ExtensionBase, FeedServerInterfac private DataBaseReadOnly m_db; private DataBase m_db_write; - public void init(GLib.SettingsBackend settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) + public void init(GLib.SettingsBackend? settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) { m_db = db; m_db_write = db_write; diff --git a/plugins/backend/feedly/feedlyUtils.vala b/plugins/backend/feedly/feedlyUtils.vala index 00132e1d..651c5004 100644 --- a/plugins/backend/feedly/feedlyUtils.vala +++ b/plugins/backend/feedly/feedlyUtils.vala @@ -25,9 +25,12 @@ public class FeedReader.FeedlyUtils : Object { private GLib.Settings m_settings; - public FeedlyUtils(GLib.SettingsBackend settings_backend) + public FeedlyUtils(GLib.SettingsBackend? settings_backend) { - m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.feedly", settings_backend); + if(settings_backend != null) + m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.feedly", settings_backend); + else + m_settings = new GLib.Settings("org.gnome.feedreader.feedly"); } public string getRefreshToken() diff --git a/plugins/backend/fresh/freshInterface.vala b/plugins/backend/fresh/freshInterface.vala index 8ce9f234..9631f859 100644 --- a/plugins/backend/fresh/freshInterface.vala +++ b/plugins/backend/fresh/freshInterface.vala @@ -27,7 +27,7 @@ public class FeedReader.freshInterface : Peas.ExtensionBase, FeedServerInterface private DataBaseReadOnly m_db; private DataBase m_db_write; - public void init(GLib.SettingsBackend settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) + public void init(GLib.SettingsBackend? settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) { m_db = db; m_db_write = db_write; diff --git a/plugins/backend/fresh/freshUtils.vala b/plugins/backend/fresh/freshUtils.vala index 1aee6c7c..343d801a 100644 --- a/plugins/backend/fresh/freshUtils.vala +++ b/plugins/backend/fresh/freshUtils.vala @@ -19,9 +19,12 @@ public class FeedReader.freshUtils : GLib.Object { Password m_password; Password m_htaccess_password; - public freshUtils(GLib.SettingsBackend settings_backend, Secret.Collection secrets) + public freshUtils(GLib.SettingsBackend? settings_backend, Secret.Collection secrets) { - m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.fresh", settings_backend); + if(settings_backend != null) + m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.fresh", settings_backend); + else + m_settings = new GLib.Settings("org.gnome.feedreader.fresh"); var pwSchema = new Secret.Schema ("org.gnome.feedreader.password", Secret.SchemaFlags.NONE, "URL", Secret.SchemaAttributeType.STRING, diff --git a/plugins/backend/inoreader/InoReaderInterface.vala b/plugins/backend/inoreader/InoReaderInterface.vala index 93ae495f..2c288e36 100644 --- a/plugins/backend/inoreader/InoReaderInterface.vala +++ b/plugins/backend/inoreader/InoReaderInterface.vala @@ -20,7 +20,7 @@ public class FeedReader.InoReaderInterface : Peas.ExtensionBase, FeedServerInter private DataBaseReadOnly m_db; private DataBase m_db_write; - public void init(GLib.SettingsBackend settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) + public void init(GLib.SettingsBackend? settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) { m_db = db; m_db_write = db_write; diff --git a/plugins/backend/inoreader/InoReaderUtils.vala b/plugins/backend/inoreader/InoReaderUtils.vala index 683f48b8..407ab7f1 100644 --- a/plugins/backend/inoreader/InoReaderUtils.vala +++ b/plugins/backend/inoreader/InoReaderUtils.vala @@ -25,9 +25,12 @@ public class FeedReader.InoReaderUtils : GLib.Object { private GLib.Settings m_settings; - public InoReaderUtils(GLib.SettingsBackend settings_backend) + public InoReaderUtils(GLib.SettingsBackend? settings_backend) { - m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.inoreader", settings_backend); + if(settings_backend != null) + m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.inoreader", settings_backend); + else + m_settings = new GLib.Settings("org.gnome.feedreader.inoreader"); } public string getUser() diff --git a/plugins/backend/local/localInterface.vala b/plugins/backend/local/localInterface.vala index 1f959e9f..8dd7b3bd 100644 --- a/plugins/backend/local/localInterface.vala +++ b/plugins/backend/local/localInterface.vala @@ -21,7 +21,7 @@ public class FeedReader.localInterface : Peas.ExtensionBase, FeedServerInterface private DataBaseReadOnly m_db; private DataBase m_db_write; - public void init(GLib.SettingsBackend settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) + public void init(GLib.SettingsBackend? settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) { m_db = db; m_db_write = db_write; diff --git a/plugins/backend/oldreader/oldreaderInterface.vala b/plugins/backend/oldreader/oldreaderInterface.vala index b6eff19a..40777e24 100644 --- a/plugins/backend/oldreader/oldreaderInterface.vala +++ b/plugins/backend/oldreader/oldreaderInterface.vala @@ -22,7 +22,7 @@ public class FeedReader.OldReaderInterface : Peas.ExtensionBase, FeedServerInter private DataBaseReadOnly m_db; private DataBase m_db_write; - public void init(GLib.SettingsBackend settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) + public void init(GLib.SettingsBackend? settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) { m_db = db; m_db_write = db_write; diff --git a/plugins/backend/oldreader/oldreaderUtils.vala b/plugins/backend/oldreader/oldreaderUtils.vala index ecb7b9b3..bdbef499 100644 --- a/plugins/backend/oldreader/oldreaderUtils.vala +++ b/plugins/backend/oldreader/oldreaderUtils.vala @@ -22,9 +22,12 @@ public class FeedReader.OldReaderUtils : GLib.Object { private GLib.Settings m_settings; private Password m_password; - public OldReaderUtils(GLib.SettingsBackend settings_backend, Secret.Collection secrets) + public OldReaderUtils(GLib.SettingsBackend? settings_backend, Secret.Collection secrets) { - m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.oldreader", settings_backend); + if(settings_backend != null) + m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.oldreader", settings_backend); + else + m_settings = new GLib.Settings("org.gnome.feedreader.oldreader"); var pwSchema = new Secret.Schema ("org.gnome.feedreader.oldreader", Secret.SchemaFlags.NONE, "type", "oldreader", diff --git a/plugins/backend/owncloud/OwncloudNewsInterface.vala b/plugins/backend/owncloud/OwncloudNewsInterface.vala index efeea033..99f03ca4 100644 --- a/plugins/backend/owncloud/OwncloudNewsInterface.vala +++ b/plugins/backend/owncloud/OwncloudNewsInterface.vala @@ -27,7 +27,7 @@ public class FeedReader.OwncloudNewsInterface : Peas.ExtensionBase, FeedServerIn private DataBaseReadOnly m_db; private DataBase m_db_write; - public void init(GLib.SettingsBackend settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) + public void init(GLib.SettingsBackend? settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) { m_db = db; m_db_write = db_write; diff --git a/plugins/backend/owncloud/OwncloudNewsUtils.vala b/plugins/backend/owncloud/OwncloudNewsUtils.vala index eafa7b8a..18ea31ae 100644 --- a/plugins/backend/owncloud/OwncloudNewsUtils.vala +++ b/plugins/backend/owncloud/OwncloudNewsUtils.vala @@ -19,9 +19,12 @@ public class FeedReader.OwncloudNewsUtils : GLib.Object { Password m_password; Password m_htaccess_password; - public OwncloudNewsUtils(GLib.SettingsBackend settings_backend, Secret.Collection secrets) + public OwncloudNewsUtils(GLib.SettingsBackend? settings_backend, Secret.Collection secrets) { - m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.owncloud", settings_backend); + if(settings_backend != null) + m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.owncloud", settings_backend); + else + m_settings = new GLib.Settings("org.gnome.feedreader.owncloud"); var pwSchema = new Secret.Schema ("org.gnome.feedreader.password", Secret.SchemaFlags.NONE, "URL", Secret.SchemaAttributeType.STRING, diff --git a/plugins/backend/ttrss/ttrssInterface.vala b/plugins/backend/ttrss/ttrssInterface.vala index b5313a16..ec76224b 100644 --- a/plugins/backend/ttrss/ttrssInterface.vala +++ b/plugins/backend/ttrss/ttrssInterface.vala @@ -27,7 +27,7 @@ public class FeedReader.ttrssInterface : Peas.ExtensionBase, FeedServerInterface private DataBaseReadOnly m_db; private DataBase m_db_write; - public void init(GLib.SettingsBackend settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) + public void init(GLib.SettingsBackend? settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write) { m_db = db; m_db_write = db_write; diff --git a/plugins/backend/ttrss/ttrssUtils.vala b/plugins/backend/ttrss/ttrssUtils.vala index b23652ac..b17e47f5 100644 --- a/plugins/backend/ttrss/ttrssUtils.vala +++ b/plugins/backend/ttrss/ttrssUtils.vala @@ -28,9 +28,12 @@ public class FeedReader.ttrssUtils : GLib.Object { private Password m_password; private Password m_htaccess_password; - public ttrssUtils(GLib.SettingsBackend settings_backend, Secret.Collection secrets) + public ttrssUtils(GLib.SettingsBackend? settings_backend, Secret.Collection secrets) { - m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.ttrss", settings_backend); + if(settings_backend != null) + m_settings = new GLib.Settings.with_backend("org.gnome.feedreader.ttrss", settings_backend); + else + m_settings = new GLib.Settings("org.gnome.feedreader.ttrss"); var pwSchema = new Secret.Schema ("org.gnome.feedreader.password", Secret.SchemaFlags.NONE, "URL", Secret.SchemaAttributeType.STRING, diff --git a/src/Backend/FeedServer.vala b/src/Backend/FeedServer.vala index fbcd26bb..98186d8c 100644 --- a/src/Backend/FeedServer.vala +++ b/src/Backend/FeedServer.vala @@ -54,7 +54,7 @@ public class FeedReader.FeedServer : GLib.Object { secrets = Secret.Collection.create_sync(secret_service, "Login", Secret.COLLECTION_DEFAULT, Secret.CollectionCreateFlags.COLLECTION_CREATE_NONE); var db = DataBase.readOnly(); var db_write = DataBase.writeAccess(); - var settings_backend = GLib.SettingsBackend.get_default(); + var settings_backend = null; // FIXME: Why does SettingsBackend.get_default() crash on Arch Linux? (extension as FeedServerInterface).init(settings_backend, secrets, db, db_write); PluginsChanedEvent(); } diff --git a/src/Backend/FeedServerInterface.vala b/src/Backend/FeedServerInterface.vala index 5962b209..7682fd94 100644 --- a/src/Backend/FeedServerInterface.vala +++ b/src/Backend/FeedServerInterface.vala @@ -21,7 +21,7 @@ public interface FeedReader.FeedServerInterface : GLib.Object { public signal void showArticleListOverlay(); public signal void writeArticles(Gee.List<Article> articles); - public abstract void init(GLib.SettingsBackend settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write); + public abstract void init(GLib.SettingsBackend? settings_backend, Secret.Collection secrets, DataBaseReadOnly db, DataBase db_write); public abstract bool supportTags(); |