X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gio%2Fgnullsettingsbackend.c;h=9f8a34ce84fa9901b5919916d5fe37c577ddc915;hb=a3d86afa81ff34ce797a3928fd619ead219a37af;hp=507aa8c9df6099c55584e246446243c423711a97;hpb=8d74c96b76b459a63492bfce466a304383e94d09;p=platform%2Fupstream%2Fglib.git diff --git a/gio/gnullsettingsbackend.c b/gio/gnullsettingsbackend.c index 507aa8c..9f8a34c 100644 --- a/gio/gnullsettingsbackend.c +++ b/gio/gnullsettingsbackend.c @@ -12,9 +12,7 @@ * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * License along with this library; if not, see . * * Author: Ryan Lortie */ @@ -56,6 +54,18 @@ g_null_settings_backend_write (GSettingsBackend *backend, GVariant *value, gpointer origin_tag) { + if (value) + g_variant_unref (g_variant_ref_sink (value)); + return FALSE; +} + +static gboolean +g_null_settings_backend_write_one (gpointer key, + gpointer value, + gpointer data) +{ + if (value) + g_variant_unref (g_variant_ref_sink (value)); return FALSE; } @@ -64,6 +74,7 @@ g_null_settings_backend_write_tree (GSettingsBackend *backend, GTree *tree, gpointer origin_tag) { + g_tree_foreach (tree, g_null_settings_backend_write_one, backend); return FALSE; } @@ -106,6 +117,19 @@ g_null_settings_backend_class_init (GNullSettingsBackendClass *class) backend_class->get_permission = g_null_settings_backend_get_permission; } +/** + * g_null_settings_backend_new: + * + * + * Creates a readonly #GSettingsBackend. + * + * This backend does not allow changes to settings, so all settings + * will always have their default values. + * + * Returns: (transfer full): a newly created #GSettingsBackend + * + * Since: 2.28 + */ GSettingsBackend * g_null_settings_backend_new (void) {