1 2008-09-11 Richard Hult <richard@imendio.com>
3 * Release 2.16.0 of the dbus version.
5 2008-09-11 Richard Hult <richard@imendio.com>
7 * gconf/Makefile.am (DISTCLEANFILES): Add generated dbus service
10 2008-05-15 Richard Hult <richard@imendio.com>
12 * gconf/gconf-database-dbus.c (gconf_database_notify_listeners):
13 Get rid of critical warning (and crash when built with
14 --disable-debug), when unsetting a key that has no writable
17 2008-05-09 Richard Hult <richard@imendio.com>
19 * gconf/gconf-client.c: (gconf_client_flush_notifies): If the key
20 is not in the cache, check if it's being monitored. Fixes issue
21 where notifications were sent out for the first change after
22 unsetting a key (for example).
24 2008-03-31 Richard Hult <richard@imendio.com>
26 * gconf/gconf-database.c (gconf_database_notify_listeners): Get
27 rid of critical warning (and crash when built with
28 --disable-debug), when unsetting a key that has no writable
31 2008-03-05 Richard Hult <richard@imendio.com>
33 * gconf/gconf-client.c (remove_key_from_cache_recursively_foreach):
34 Fix crash, not sure why a null entry can be in the cache though so
35 this is more of a workaround.
37 2008-02-07 Richard Hult <richard@imendio.com>
39 * backends/Makefile.am: Patch from Ross Burton to fix build with
42 2008-01-28 Richard Hult <richard@imendio.com>
44 * gconf/gconf-dbus.c: Patch from Ross Burton to use right the
45 match rule, fixes problems when using D-Bus 1.1.x.
47 2007-12-11 Richard Hult <richard@imendio.com>
49 * gconf/gconf-dbus.c: (ensure_dbus_connection),
50 (gconf_dbus_message_filter): Warn instead of exit when we get
51 disconnected from the bus.
53 2007-11-10 Richard Hult <richard@imendio.com>
55 * gconf/gconf-dbus.c: (gconf_handle_dbus_exception),
56 (gconf_engine_all_entries), (gconf_engine_all_dirs),
57 (gconf_engine_suggest_sync), (gconf_engine_dir_exists): Plug
58 leaks (also do some s/bool/pointer/ in g_return_val_if_fail
61 2007-06-27 Richard Hult <richard@imendio.com>
63 * gconf/gconf-database-dbus.c: (database_message_func),
64 (database_handle_suggest_sync):
65 * gconf/gconf-dbus.c: (gconf_engine_suggest_sync): Implement
68 2007-06-27 Richard Hult <richard@imendio.com>
70 * backends/Makefile.am: Patch from Ronald Bultje to fix
73 2007-06-27 Richard Hult <richard@imendio.com>
75 * gconf/gconf-database-dbus.c (database_handle_set_schema): Empty
76 schema name means unset.
78 2007-05-24 Richard Hult <richard@imendio.com>
80 * gconf/gconf-database-dbus.c: (database_handle_get_all_dirs):
81 * gconf/gconf-dbus.c: (gconf_engine_all_dirs): Use an array for
82 directories as well, to avoid hitting the max size for message
83 headers if there are many dirs (hundreds at the same level).
85 2007-05-22 Richard Hult <richard@imendio.com>
87 * dbus-tests/test-getting-and-setting.sh:
88 * dbus-tests/test-schema-bug.c: (main):
89 * dbus-tests/test-schemas.schemas: Use different keys for the
90 different tests so they don't interfere with each other.
92 * gconf/gconf-database-dbus.c:
93 (database_handle_name_owner_changed),
94 (gconf_database_dbus_teardown): Remove obsolete comments.
95 (gconf_database_dbus_notify_listeners): Notify other listeners.
97 * gconf/gconf-dbus.c: (gconf_engine_is_local):
98 * gconf/gconfd-dbus.c: (gconfd_dbus_get_connection): Remove
101 2007-05-21 Richard Hult <richard@imendio.com>
103 * gconf/gconf-dbus-utils.c: (utils_append_value_helper_pair),
104 (utils_append_value), (utils_append_entry_values),
105 (utils_get_value_helper_fundamental),
106 (utils_get_value_helper_pair): Handle empty pairs.
108 2007-05-15 Richard Hult <richard@imendio.com>
110 * dbus-tests/test-stale-value-bug.c: Improve the test.
112 * gconf/gconf-client.c (remove_key_from_cache_recursively_foreach)
113 (remove_key_from_cache_foreach): Fix the checks for keys to
116 2007-01-19 Richard Hult <richard@imendio.com>
118 * gconf/gconftool.c: (main): Back out the "killall" change and put
121 2007-01-17 Richard Hult <richard@imendio.com>
123 * dbus-tests/run-all.sh: Add test that can be used to hammer the
126 * gconf/gconf-database-dbus.c: (database_handle_lookup_ext): Fix
129 * gconf/gconf-database.c: (source_notify_cb),
130 (gconf_database_unset), (gconf_database_recursive_unset): Plug
133 * gconf/gconf-value.c: Fix leaks (bug filed upstream).
135 * gconf/gconfd.c: (main), (gconf_main): Make Ctrl-C work, no need
136 to ignore that signal. Also ignore the cleanup timeout also when
139 2007-01-17 Richard Hult <richard@imendio.com>
141 * gconf/gconf-database.c (gconf_database_unset): Fix a leaked
142 GConfValue when unsetting a value.
144 * dbus-tests/test-schema-bug.c: Add new test for testing another
147 * gconf/gconftool.c (main): Send TERM instead of HUP since the
148 maemo version doesn't have the 30 second timeout to check for the
151 * gconf/gconfd.c (main): Setup up signal handler for the right
152 signals in dbus mode (don't try to catch the "error" ones as it
153 doesn't make sense, just catch TERM, HUP, USR1).
155 2007-01-17 Richard Hult <richard@imendio.com>
157 NOTE: This change is just inserted here so that it's not missed
158 when listing changes against upstream.
160 Back out this, since it's wrong. I've commented in bugzilla upstream.
162 * gconf/gconf-client.c: Fix error handling in the
163 getters. (#102050, #360224)
165 2007-01-17 Richard Hult <richard@imendio.com>
167 * dbus-tests/test-stale-value-bug.c: Test more and also make the
168 float tests work (use double and check with a delta).
169 (change_timeout_func): Fix leak so we can use this to check for
170 leaks in the client library.
172 2007-01-11 Richard Hult <richard@imendio.com>
174 * gconf/gconfd.c (gconf_main): Disable the 30 second cleanup
175 timeout, and rely on gconftool killing the daemon instaead:
177 * gconf/gconftool.c (main): Kill the daemon after installing /
178 uninstalling schemas.
180 2007-01-10 Richard Hult <richard@imendio.com>
182 * dbus-tests/test-stale-value-bug.c: Expand test.
184 * gconf/gconf-client.c: (remove_key_from_cache_foreach),
185 (remove_key_from_cache_recursively_foreach),
186 (remove_key_from_cache), (remove_key_from_cache_recursively): Add
187 function to clear the cache.
188 (gconf_client_set), (gconf_client_unset),
189 (gconf_client_recursive_unset),
190 (gconf_client_set_float), (gconf_client_set_int),
191 (gconf_client_set_string), (gconf_client_set_bool),
192 (gconf_client_set_schema), (gconf_client_set_list),
193 (gconf_client_set_pair): Clear the cache when changing something
194 successfully, this works around the problem caused by the dbus
195 version not getting notified until after the next mainloop
198 2007-01-09 Richard Hult <richard@imendio.com>
200 * dbus-tests/test-stale-value-bug.c: Add more tests here for
201 various types and set/unset operations.
203 2006-12-07 Richard Hult <richard@imendio.com>
205 * gconf/gconfd.c: Disable the signal handlers except SIGUSR1,
206 since we don't need to keep any state in the daemon for the D-Bus
208 - Change the CORBA defines to be consistent.
210 * dbus-tests: Add some tests made specifically for this version.
212 2006-12-07 Richard Hult <richard@imendio.com>
214 * Start maemo specific changes.
216 ===========================================================
218 2006-10-07 Matthias Clasen <mclasen@redhat.com>
220 * gconf/gconf-client.c: Fix error handling in the
221 getters. (#102050, #360224)
223 ============================= 2.16.0 ======================
225 2006-08-15 Kjartan Maraas <kmaraas@gnome.org>
227 * configure.in: Fix intltool req.
229 2006-08-08 Kjartan Maraas <kmaraas@gnome.org>
231 * doc/gconftool-2.1: Add missing newline (Loïc Minier,
232 Jan Kratochvil) Closes bug #304143.
234 2006-08-07 Alexander Larsson <alexl@redhat.com>
237 Don't link to libpopt. (#336307)
238 Patch from William Jon McCann.
240 2006-06-14 Michael Meeks <michael.meeks@novell.com>
242 * gconf/GConfX.idl: declare that we raise the
243 exception we raise - fixes debug issue in sabayon &
245 gconfd (sabayon-admin): Some clown returned
246 undeclared exception 'IDL:ConfigException:1.0'
247 cf. gconfd_get_database.
249 2006-05-12 Julio M. Merino Vidal <jmmv@NetBSD.org>
253 * gconf/default.path.in: Generate the default.path file during the
254 build instead of doing it from configure.ac so that we get the correct
255 expanded value for sysgconfdir. According to Autoconf documentation
256 this is the canonical way to access *dir variables. Addresses
257 problems introduced by #336019.
259 2006-05-07 Kjartan Maraas <kmaraas@gnome.org>
261 * Makefile.am: Add intltool files to EXTRA_DIST and
263 * autogen.sh: Run intltoolize.
264 * configure.in: Fix the po/LINGUAS stuff.
266 2006-05-06 Kjartan Maraas <kmaraas@gnome.org>
268 * backends/xml-dir.c: (dir_sync): Fix a potential use after free
269 reported by the coverity checker - #1239. Closes bug #338196.
271 2006-05-05 Kjartan Maraas <kmaraas@gnome.org>
275 * gconf/gconf-sanity-check.c: (main):
276 * gconf/gconftool.c: (main):
277 Migrate to GOption. Patch by Vincent Vuntz. Closes
280 2006-05-05 Kjartan Maraas <kmaraas@gnome.org>
282 * configure.in: Reinstate the previous patch.
285 2006-05-05 Kjartan Maraas <kmaraas@gnome.org>
287 * configure.in: Revert the LINGUAS patch until we have branched.
288 * po/LINGUAS: Remove temporarily.
290 2006-05-05 Kjartan Maraas <kmaraas@gnome.org>
292 * gconf/gconf-internals.c: (read_current_server): Fix a
293 NULL pointer deref reported by Coverity. Patch from Pascal
294 Terjan. Closes bug #338617.
296 2006-05-05 Kjartan Maraas <kmaraas@gnome.org>
298 * configure.in: Move to the new LINGUAS handling.
299 * po/LINGUAS: Patch from Luis Menina. Closes bug #338036.
301 2006-05-05 Julio M. Merino Vidal <jmmv@NetBSD.org>
303 * configure.in: Fix staged installation if sysconfdir is overriden
304 from the command line. Closes bug #336019.
306 2006-05-05 Kjartan Maraas <kmaraas@gnome.org>
308 * doc/gconf/gconf-sections.txt: Add GConfSchema functions.
309 * doc/gconf/tmpl/gconf-schema.sgml: Add docs for GConfSchema.
310 Patch from <kaiw at itee.uq.edu.au>. Closes bug #147758.
312 2006-05-05 Kjartan Maraas <kmaraas@gnome.org>
314 * gconf/gconf-changeset.h:
315 * gconf/gconf-client.h:
316 * gconf/gconf-database.h:
317 * gconf/gconf-engine.h:
318 * gconf/gconf-error.h:
319 * gconf/gconf-listeners.h:
320 * gconf/gconf-locale.h:
321 * gconf/gconf-schema.h:
322 * gconf/gconf-value.h:
324 * gconf/gconfd.h: Use G_BEGIN/END_DECLS instead
325 of a lot of #ifdef __cplusplus stuff. Closes bug 306313.
326 Patch from FabrÃcio Barros Cebral.
328 2006-05-05 Kjartan Maraas <kmaraas@gnome.org>
330 * backends/markup-tree.c: (parse_value_element):
331 Use the right variable in test. Closes coverity #1238
332 and GNOME bug #338195.
334 2006-04-17 Kjartan Maraas <kmaraas@gnome.org>
336 * configure.in: Remove obsolete entry for no_NO.
337 * po/no.po: And the translation.
339 2006-03-18 Guilherme de S. Pastore <gpastore@gnome.org>
343 * configure.in: version 2.14.0.
345 2006-03-10 Kjartan Maraas <kmaraas@gnome.org>
347 * backends/markup-tree.c: (parse_tree): Patch from
348 Matthias Clasen to fix my leak fix to not crash.
351 2006-03-06 Kjartan Maraas <kmaraas@gnome.org>
353 * backends/markup-tree.c: (parse_tree): Free the parse context in
354 some more cases. Fixes bug #332528.
356 2006-03-06 Mark McLoughlin <mark@skynet.ie>
358 Based on patch from Josselin Mouette <joss@debian.org>
359 in bug #333353 to speed up the install of multiple
363 (do_load_file): split do_sync() out of here
364 (main), (do_makefile_install): call do_sync()
365 after calling do_load_file()
367 2006-03-06 Mark McLoughlin <mark@skynet.ie>
369 Patch from Christopher.Hanna@sun.com
371 * doc/gconftool-2.1: improved man page
373 2006-02-17 Benoît Dejean <benoit@placenet.org>
376 * gconf/gconf-value.c: (gconf_value_new), (gconf_value_free),
377 (gconf_entry_new_nocopy), (gconf_entry_unref): Use new g_slice API.
379 2006-01-28 Benoît Dejean <benoit@placenet.org>
381 * gconf/gconf-schema.c:
382 * gconf/gconf-value.c: Got rid of padding members in private structs.
384 2006-01-27 Tor Lillqvist <tml@novell.com>
386 * gconf-zip.in: Include backend DLLs only in the runtime zipfile.
388 * gconf/gconfd.c (main): Don't call closelog() unless we HAVE_SYSLOG_H.
390 2006-01-15 Mark McLoughlin <mark@skynet.ie>
392 * configure.in: post-release bump to 2.13.6.
394 ==================== 2.13.5 ====================
396 2006-01-15 Mark McLoughlin <mark@skynet.ie>
398 * configure.in: Version 2.13.5.
400 2006-01-10 Thomas Vander Stichele <thomas at apestaart dot org>
402 * backends/Makefile.am:
403 don't use top_builddir to link in library from current directory;
406 2006-01-05 Vincent Untz <vuntz@gnome.org>
408 * gconf/gconf-client.c: (clear_dir_cache_foreach): new, clears a cache
409 entry if it matches the directory
410 (gconf_client_real_remove_dir): remove from cache all entries that are
414 2006-01-05 Tor Lillqvist <tml@novell.com>
416 * gconf-zip.in: Include the backend DLLs in the runtime zipfile.
418 2006-01-03 Mark McLoughlin <mark@skynet.ie>
420 Switch on "subtree merging" by default in the defaults
423 * gconf/gconftool.c: (do_get_default_source): add the
424 "merged" flag to the default target for
425 --makefile-install-rule
427 * backends/markup-backend.c:
428 (resolve_address), (ms_new): add a new "merged" flag
429 signalling that the entire tree should be saved as
432 * backends/markup-tree.[ch]:
433 (markup_tree_get): add "merged" param and set flag
435 (recursively_load_subtree): copy function from
437 (markup_dir_sync): when saving the tree, save it as a
438 merged subtree if the "merged" flag is set
440 * backends/gconf-merge-tree.c: (recursively_load_subtree):
441 remove; it's in markup-tree.c now
443 * configure.in: remove --enable-gconf-source option which
444 was only used when we installed standard-schemas
446 * standard-schemas: remove old cruft
448 2006-01-03 Mark McLoughlin <mark@skynet.ie>
450 Pointed out by Nicolas Peninguy <npeniguy@gmail.com>
453 * gconf/gconf-internals.c: (gconf_value_decode): fix crasher
454 with previous fix for decoding schemas
456 2005-12-30 Abel Cheung <maddog@linuxhall.org>
458 * configure.in: Added "is" "zh_HK" to ALL_LINGUAS.
460 2005-12-11 Mark McLoughlin <mark@skynet.ie>
462 * backends/markup-tree.c:
463 (markup_entry_get_value): re-work the logic for finding
464 the best schema for the given locales.
466 2005-12-11 Mark McLoughlin <mark@skynet.ie>
468 * backends/markup-tree.c:
469 - Introduce the concept of a "subtree root" - a point
470 in the tree where we save a subtree in a merged file.
471 - When loading a subtree (%gconf-tree.xml), take note of
472 any available translations (%gconf-tree-$(locale).xml)
473 - When getting/setting/unsetting a schema, ensure that
474 the appropriate translations are loaded
475 - When parsing a translations file, allow for missing
476 attributes and elements and read the translations of
478 - When syncing a subtree, write out all translations
479 of descriptions which are currently cached in memory
482 * backends/gconf-merge-tree.c: (merge_tree): update for
483 markup_dir_build_file_path() change
485 2005-12-09 Jorn Baayen <jorn@openedhand.com>
487 * gconf/gconf-internals.h:
488 * gconf/gconf-value.h:
489 Publicize gconf_value_compare() and gconf_entry_equal().
492 2005-12-09 Mark McLoughlin <mark@skynet.ie>
494 * configure.in: post-branch bump to 2.13.1
496 2005-12-08 Kjartan Maraas <kmaraas@gnome.org>
498 * gconf/gconf-internals.c: (gconf_value_decode): Make
499 this function work for schemas too. Patch from Nicolas Peninguy
500 <npeniguy@gmail.com>. Closes bug #323509.
502 2005-12-08 Dan Williams <dcbw@redhat.com>
504 * gconf/gconf.c: (gconf_unescape_string): Don't stomp on
505 the function-level scoped 'end' from deep in the function.
508 2005-11-11 Dinoop Thomas <dinoop.thomas@wipro.com>
510 * gconf/gconf.c: (gconf_debug_shutdown): Corrected documentation.
511 * doc/gconf/gconf-sections.txt: Included the functions for which doc was
513 * doc/gconf/tmpl/gconf-changeset.sgml,
514 doc/gconf/tmpl/gconf-client.sgml,
515 doc/gconf/tmpl/gconf-engine.sgml,
516 doc/gconf/tmpl/gconf-error.sgml,
517 doc/gconf/tmpl/gconf-internals.sgml,
518 doc/gconf/tmpl/gconf-listeners.sgml,
519 doc/gconf/tmpl/gconf-value.sgml,
520 doc/gconf/tmpl/gconf.sgml: Included documentation for all the missing
521 functions exported by gconf library.
523 2005-11-08 Mark McLoughlin <mark@skynet.ie>
525 Patch from Jens Granseuer <jensgr@gmx.net> in bug #320852
527 * gconf/gconf-listeners.c: (ltable_insert): remove C99
530 2005-11-03 Alexander Larsson <alexl@redhat.com>
533 Post release version bump
535 ==================== 2.12.1 ====================
537 2005-11-03 Alexander Larsson <alexl@redhat.com>
542 2005-11-01 Kjartan Maraas <kmaraas@gnome.org>
544 * gconf/gconf-backend.c: (gconf_get_backend): Use
545 G_MODULE_BIND_LAZY in g_module_open().
546 * gconf/gconf-internals.c: (gconf_value_from_corba_value),
547 (gconf_value_type_to_string), (gconf_unquote_string_inplace),
548 (type_byte), (byte_type), (gconf_value_encode),
549 (gconf_get_lock_or_current_holder): Remove unused and
551 * gconf/gconf-listeners.c: (ltable_insert): Warning fix.
552 * gconf/gconf-value.c: (gconf_value_compare): Same here.
553 * gconf/gconf.c: (gconf_unescape_key),
554 (corba_errno_to_gconf_errno), (gconf_server_broken),
555 (gconf_handle_corba_exception): And here.
556 * gconf/gconfd.c: (main): Missing closelog() call.
558 2005-10-28 Erdal Ronahi <erdal.ronahi@gmail.com>
560 * configure.in: Added ku (Kurdish) to ALL_LINGUAS
562 2005-10-27 Alexander Larsson <alexl@redhat.com>
564 * gconf/gconf-sources.c (gconf_sources_is_affected):
565 Correctly handle the case where the modified source
566 is not in the sources list.
568 2005-10-18 Tor Lillqvist <tml@novell.com>
570 * gconf/gconf-backend.c (invalid_chars[]): Do allow space in
571 configuration source addresses on Windows, as space is common in
572 user names, and thus home directories (i.e., profile folders).
574 2005-10-09 Mark McLoughlin <mark@skynet.ie>
576 Based on patch from Lorenzo Colitti <lorenzo@colitti.com>
579 * backends/markup-tree.c: (parse_tree): read and process
580 the xml file incrementally in 4k chunks.
582 2005-09-13 Stepan Kasal <kasal@ucw.cz>
584 * gconf-2.m4.in (AM_GCONF_SOURCE_2): Simplify the handling of
585 --enable-schemas-install.
586 * Makefile.am (EXTRA_DIST): Remove sources for files gnerated at
587 config time; they are distributed automatically.
588 (DISTCLEANFILES): Deleted; we don't use intltool here.
589 * .cvsignore: Add mkinstalldirs.
591 2005-09-10 Tor Lillqvist <tml@novell.com>
593 * gconf/gconf-backend.c (gconf_address_resource): On Win32, do
594 _gconf_win32_replace_prefix() on the return value so that we
595 change configure-time prefix pathnames in the path file into
596 corresponding end-user installation prefix pathnames.
598 * gconf/gconf-sanity-check.c: Use gstdio wrappers here, too.
600 * backends/markup-backend.c (get_dir_from_address): Use
601 G_IS_DIR_SEPARATOR().
603 2005-09-06 Mark McLoughlin <mark@skynet.ie>
605 * configure.in: post-release bump to 2.12.1.
607 ==================== 2.12.0 ====================
609 2005-09-06 Mark McLoughlin <mark@skynet.ie>
611 * configure.in: Version 2.12.0.
613 2005-08-29 Tor Lillqvist <tml@novell.com>
615 * gconf-zip.in: Use correct capitalization of GConf in the zipfile
618 2005-08-22 Mark McLoughlin <mark@skynet.ie>
620 * configure.in: post-release bump to 2.11.93.
622 ==================== 2.11.92 ====================
624 2005-08-22 Mark McLoughlin <mark@skynet.ie>
626 * configure.in: Version 2.11.92.
628 2005-08-10 Adam Weinberger <adamw@gnome.org>
630 * backends/evoldap-backend.c: Minor spelling fix
631 and capitalization tweak (fixes bug #301133)
633 2005-07-25 Mark McLoughlin <mark@skynet.ie>
635 * configure.in: post-release bump to 2.11.91.
637 ==================== 2.11.90 ====================
639 2005-07-25 Mark McLoughlin <mark@skynet.ie>
641 * configure.in: Version 2.11.90.
643 2005-07-14 Aivars Kalvans <aivars.kalvans@inbox.lv>
645 Reduce number g_string_append_c() calls (bug#309760)
647 * configure.in: flockfile is not used anymore
648 * gconf/gconf.c (gconf_escape_key): join two
649 g_string_append_c() and g_string_append_printf() call
650 * gconf/gconfd.c (read_line): use fgets() instead of getc_unlocked()
653 2005-07-13 Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
655 * gconf/gconf-client.c (gconf_client_notify):
656 s/g_entry_unref/gconf_entry_unref (a typo).
658 2005-07-13 Aivars Kalvans <aivars.kalvans@inbox.lv>
660 * gconf/gconf-client.c (gconf_client_notify): unref GConfEntry
661 after notifying client. Fixes bug #158756
663 2005-06-21 Mark McLoughlin <mark@skynet.ie>
665 * configure.in: require glib 2.7.0
667 2005-06-21 Mark McLoughlin <mark@skynet.ie>
669 Patch from Marcus Meissner <meissner@suse.de> in
672 * gconf/gconf-changeset.h,
673 gconf/gconf-client.h: use G_GNUC_NULL_TERMINATED for
674 gconf_(client|engine)_change_set_from_current()
676 2005-06-18 Aivars Kalvans <aivars.kalvans@inbox.lv>
678 * gconf/gconf-sources.c (gconf_source_free): free ->address
681 2005-06-17 Theppitak Karoonboonyanan <thep@linux.thai.net>
683 * configure.in: Added 'th' (Thai) to ALL_LINGUAS.
685 2005-06-13 Mark McLoughlin <mark@skynet.ie>
687 Fixes bug #306937 - gconfd-2 not shutting down when its
690 * gconf/gconfd.c: (no_databases_in_use): account for the
691 fact that the default database is on the global list of
694 2005-06-08 Tor Lillqvist <tml@novell.com>
696 * configure.in: Require GLib 2.6.0 so we can use the "gstdio
700 * gconf/*.c: Use gstdio wrappers and gdir for better support of
701 non-ASCII pathnames on Windows. Use g_strerror() consistently in
702 error messages, as g_printerr() etc want UTF-8.
704 * gconf/Makefile.am: Append EXEEXT to gconfd's name.
706 * gconf/gconf-internals.h: Use functions instead of variables to
707 access the run-time pathnames on Win32. This enables us to have a
708 cleaner DllMain(). Add underscore prefix to the internal
709 Win32-only functions.
711 * gconf/dllmain.c (DllMain): Use minimalistic DllMain() that only
712 stores the handle to the DLL.
713 (setup): Do the real work here instead.
714 (_gconf_win32_get_locale_dir, etc): Functions to return the
717 * gconf/gconf-internals.c (_gconf_win32_get_home_dir):
718 As g_get_home_dir() has now been fixed to never return NULL on
719 Windows, we don't have to bother checking that here.
721 2005-05-17 Mark McLoughlin <mark@skynet.ie>
723 * configure.in: post-release bump to 2.11.2.
725 ==================== 2.11.1 ====================
727 2005-05-17 Mark McLoughlin <mark@skynet.ie>
729 * configure.in: Version 2.11.1.
731 2005-05-17 Mark McLoughlin <mark@skynet.ie>
733 * backends/README.evoldap: update.
735 2005-05-17 Mark McLoughlin <mark@skynet.ie>
737 Re-work a bit so it now supports putting the addressbook,
738 calendar and task sources in LDAP.
740 * backends/evoldap-backend.c:
741 (get_evolution_uid), (get_variable): renamed the $(ACCOUNT_UID)
742 variable to $(EVOLUTION_UID)
743 (parse_conf_file): upd to lookup the new templates.
744 (subst_variables_into_template): allow substituing into
746 (build_value_from_entries): split out; constructs a list value
747 by munging the LDAP entries with a template.
748 (lookup_values_from_ldap): lookup the addressbook, calendar
749 and tasks sources too.
750 (query_value), (all_entries), (all_subdirs),
751 (dir_exists): upd. to handle addressbook, calendar and tasks.
752 (destroy_source): free new stuff.
754 * backends/evoldap.conf: change the format slightly to add
755 templates for addressbook, calendar and tasks.
757 * backends/evoldap.schema: add new schema.
759 2005-05-09 Mark McLoughlin <mark@skynet.ie>
761 Update to use GNOME OIDs as assigned by
762 Jochen Friedrich <jochen@scram.de>
764 * backends/evoldap.schema: use GNOME OIDs.
766 2005-05-06 Mark McLoughlin <mark@skynet.ie>
768 Small fix for previous commit.
770 * gconf/gconfd.c: (gconfd_notify_other_listeners):
771 Don't try and free a NULL GConfValue.
773 2005-05-06 Mark McLoughlin <mark@skynet.ie>
775 Fix for crasher based on patch from Josselin Mouette <joss@debian.org>
778 * gconf/gconfd.c: (gconfd_notify_other_listeners): if the
779 value is unset, create an InvalidVal ConfigValue.
781 2005-04-27 Mark McLoughlin <mark@skynet.ie>
783 * backends/Makefile.am: link the evoldap backend with libxml.
785 2005-04-25 Mark McLoughlin <mark@skynet.ie>
787 Pointed out by Gustavo Carneiro <gjc@inescporto.pt> in
790 * gconf/gconf-enum-types.[ch]: run "make regenerate-built-sources"
791 so that we get GCONF_TYPE_UNSET_FLAGS.
793 * gconf/gconf-error.h,
794 gconf/gconf-value.h: remove unneccessary glib-mkenums options
797 * gconf/regenerate-enum-footer.sh,
798 gconf/regenerate-enum-header.sh: tweak the arguments to glib-mkenums
799 so that we get the same output that we were getting before and the
800 command line is a wee bit more readable.
802 2005-04-18 Mark McLoughlin <mark@skynet.ie>
804 * backends/evoldap-backend.c, backends/evoldap.conf,
805 backends/evoldap.schema, backends/README.evoldap:
806 Add Evolution mail account LDAP backend.
808 * configure.in, backends/Makefile.am: build the backend
809 if we can find the openldap library and header.
811 2005-05-07 Gareth Owen <gowen72@yahoo.com>
813 * po/en_GB.po: Updated British English translation.
815 2005-04-04 Mark McLoughlin <mark@skynet.ie>
817 Patch from Stepan Kasal <kasal@ucw.cz>
819 * gconf-2.m4.in (AM_GCONF_SOURCE_2): Use "--enable-schemas-install",
820 not "--disable-schemas-install", in the error message; one has to
821 give "--enable-schemas-install=foo" to get here, the form
822 "--disable-schemas-install=*" is refused immediately by the init
823 code of the configure script.
825 2005-03-30 Steve Murphy <murf@e-tools.com>
827 * configure.in: Added "rw" to ALL_LINGUAS.
829 2005-03-27 Tor Lillqvist <tml@novell.com>
831 * configure.in: Apparently AC_LIBTOOL_WIN32_DLL isn't deprecated
832 after all, and in fact necessary with HEAD libtool.
834 2005-03-23 Tor Lillqvist <tml@novell.com>
836 * gconf/gconfd.c (test_safe_tmp_dir): Nah, stat() isn't useful for
837 permission checking on Win32. Bypass for now on Win32.
839 2005-03-18 Tor Lillqvist <tml@novell.com>
843 * gconf-zip.in: New file, script to build zipfile-based
844 distribution for Windows.
847 * configure.in: Distribute and expand it.
849 * configure.in: Check for Win32, Define automake conditional
850 OS_WIN32. Force shared library (DLL) build on Windows. Check for
851 some more headers and functions.
853 * */*.c: Conditionalize on HAVE_SYSLOG_H, HAVE_SYS_WAIT_H,
854 HAVE_GETUID, HAVE_FSYNC, HAVE_FCHMOD, HAVE_SIGACTION, F_GETFD,
855 FD_CLOEXEC, F_SETLK, SIGBUS, SIGPIPE, SIGHUP, SIGUSR1, and ELOOP.
857 * backends/Makefile.am: Explicitly link with INTLLIBS.
859 * backends/markup-tree.c (save_tree): Can't rename or remove open
862 * backends/xml-backend.c: Don't use G_MODULE_EXPORT on Win32. If
863 we use it, only the functions thus marked will be exported, and
864 xml-test uses also other ones. Instead rely on the auto-export
867 * gconf/Makefile.am: Pass -DPREFIX=$(prefix). Include dllmain.c
870 * gconf/dllmain.c: New file. Used for installation location
872 (DllMain) DLL entry point. Automatically called when the DLL is
873 attached to a process. Deduce the run-time installation location
874 and construct run-time pathnames.
875 (gconf_win32_replace_prefix): New funcion. Replaces a
876 configure-time prefix in a pathname with the corresponding
877 end-user run-time installation prefix.
879 * gconf/gconf-internals.c (gconf_win32_get_home_dir): New
880 function, returns the home directory with forward
881 slashes. Guaranteed to return non-NULL, unlike GLib's
883 (get_variable, gconf_get_daemon_dir): Use gconf_win32_get_home_dir().
884 (gconf_load_source_path): Use gconf_win32_replace_prefix().
885 (create_new_locked_file, open_empty_locked_file,
886 gconf_release_lock): Use _sopen() to open file with locking on
888 (close_fd_func): Not used on Win32, where there is no FD_CLOEXEC,
889 and a gspawn child setup function is run in the parent process
892 * gconf/gconf-internals.h: mkdir() takes only one parameter on
893 Win32. S_IRWX{U,G,O} aren't in mingw's sys/stat.h. Use run-time
894 installation prefix instead of configure-time. Redefine the
895 GCONF_*DIR macros to refer to the variables from the dllmain.c
896 file. Use NUL: on Windows instead of /dev/null.
898 * gconf/gconf-sanity-check.c
899 * gconf/gconftool.c: Use POPT_AUTOHELP.
901 * gconf/gconf.c: Use g_get_current_time() instead of gettimeofday().
903 * gconf/gconfd.c (gconf_server_load, get_log_names): Use
904 gconf_win32_get_home_dir().
905 (signal_handler): If we don't HAVE_SIGACTION, use signal(), and
906 re-arm the signal handler.
907 (test_safe_tmp_dir): Can't open() a directory on Win32.
908 (get_log_names): Use g_build_filename() instead of
909 gconf_concat_dir_and_key() on all platforms.
911 2005-03-14 Mark McLoughlin <mark@skynet.ie>
913 * acinclude.m4: remove - we don't use anything from
914 it anymore. Fixes bug #153049
916 2005-03-14 Mark McLoughlin <mark@skynet.ie>
918 * configure.in: bump version to 2.11.1 after branching.
920 2005-03-07 Mark McLoughlin <mark@skynet.ie>
922 * configure.in: post-release bump to 2.10.1.
924 ==================== 2.10.0 ====================
926 2005-03-07 Mark McLoughlin <mark@skynet.ie>
928 * configure.in: Version 2.10.0.
930 2005-02-16 Adi Attar <aattar@cvs.gnome.org>
932 * configure.in: Added "xh" to ALL_LINGUAS.
934 2005-02-07 Mark McLoughlin <mark@skynet.ie>
936 * configure.in: post-release bump to 2.9.92.
938 ==================== 2.9.92 ====================
940 2005-02-07 Mark McLoughlin <mark@skynet.ie>
942 * configure.in: Version 2.9.91.
944 2005-02-06 Mark McLoughlin <mark@skynet.ie>
946 Fix bug #154005 - "preload breaks saved state", caused
947 by a bug in the way the listeners tree was constructed.
949 * gconf/gconf-listeners.c:
950 (ltable_entry_new): take a list of path elements
951 and index to the entry and construct the full
953 (ltable_insert): update for above so that we
954 don't pass use the wrong path for full_name.
956 2005-01-18 Mark McLoughlin <mark@skynet.ie>
958 Fixes problem where a path file which only includes
959 another path file wouldn't work.
961 * gconf/gconf-internals.c: (gconf_load_source_path):
962 assign the return value of g_slist_concat() to something.
964 2005-01-17 Mark McLoughlin <mark@skynet.ie>
966 Fix double free with gconf_client_clear_cache()
968 * gconf/gconf-client.c: (clear_cache_foreach): don't
969 free the key explicitly - the key is owned by the
972 2005-01-12 Vincent Untz <vincent@vuntz.net>
974 * gconf-value.c: (gconf_value_validate): add sanity check
976 2004-11-30 Mark McLoughlin <mark@skynet.ie>
978 * configure.in: post-release bump to 2.9.3.
980 ==================== 2.9.2 ====================
982 2004-11-30 Mark McLoughlin <mark@skynet.ie>
984 * configure.in: Version 2.9.2.
986 Tue Nov 16 12:24:26 2004 Jonathan Blandford <jrb@redhat.com>
988 * doc/gconf/gconf-docs.sgml: add a title/name instead of [Insert
991 2004-11-02 Fernando Herrera <fherrera@onirica.com>
993 * backends/markup-tree.c: (markup_entry_get_value): Read the schema
994 file until a matching locale is found and the C one. This solves
995 bug #152175 when current locale is before the C.
997 2004-11-02 Fernando Herrera <fherrera@onirica.com>
999 * gconf/gconf-sources.c: (gconf_sources_all_entries): Get schema_name
1000 also if we got a value from a previous source. Fix #131011
1002 2004-10-12 Mark McLoughlin <mark@skynet.ie>
1004 * configure.in: post-release bump to 2.8.2.
1006 ==================== 2.8.1 ====================
1008 2004-10-12 Mark McLoughlin <mark@skynet.ie>
1010 * configure.in: Version 2.8.1.
1012 2004-10-04 Mark McLoughlin <mark@skynet.ie>
1014 GConf part of fix for gconf-editor spewing warnings
1015 on startup. See bug #144833.
1017 * backends/markup-backend.c: (resolve_address): if the
1018 toplevel directory isn't writable, mark the whole source
1021 2004-09-30 Kjartan Maraas <kmaraas@gnome.org>
1023 * gconf/gconf-internals.c: (gconf_activate_server):
1024 Fix pipe misuse reported by valgrind. Suggested fix
1025 by Mark McLoughlin. Closes bug #153929.
1027 2004-09-28 Kjartan Maraas <kmaraas@gnome.org>
1029 * gconf/gconf-sanity-check.c: (main): Plug a leak.
1030 * gconf/gconfd.c: (main): Plug a couple of leaks.
1031 Ref bug #153929. Still one to go.
1033 2004-09-28 Mark McLoughlin <mark@skynet.ie>
1035 Leak identified by Kjartan in bug #153891.
1037 * gconf/gconfd.c: (gconf_server_load_sources):
1040 * gconf/gconf-internals.c:
1041 (gconf_load_source_path): remove some crufty code,
1042 don't unneccessarily copy strings.
1044 2004-09-14 Mark McLoughlin <mark@skynet.ie>
1046 * configure.in: post-release bump to 2.8.1.
1048 ==================== 2.8.0.1 ====================
1050 2004-09-13 Mark McLoughlin <mark@skynet.ie>
1052 * configure.in: Version 2.8.0.1.
1054 2004-09-14 Mark McLoughlin <mark@skynet.ie>
1056 * autogen.sh: use automake 1.7 and run gtkdocize.
1058 * configure.in: check for glib-genmarshal and use
1061 * Makefile.am: add --enable-gtk-doc to
1062 DISTCHECK_CONFIGURE_FLAGS.
1064 * gconf/Makefile.am: re-do how the marshallers
1067 * doc/gconf/Makefile.am: use gtk-doc.make.
1069 * doc/gconf/gconf.sgml: tweak to validate.
1071 * backends/Makefile.am: make xml-test link
1072 against the backend rather than rebuilding
1075 * gconf-2.m4.in: rename from gconf.m4.in.
1077 2004-09-13 Mark McLoughlin <mark@skynet.ie>
1079 * configure.in: post-release bump to 2.8.1.
1081 ==================== 2.8.0 ====================
1083 2004-09-13 Mark McLoughlin <mark@skynet.ie>
1085 * configure.in: Version 2.8.0.
1087 2004-08-30 Mark McLoughlin <mark@skynet.ie>
1089 * configure.in: post-release bump to 2.7.93.
1091 ==================== 2.7.92 ====================
1093 2004-08-30 Mark McLoughlin <mark@skynet.ie>
1095 * configure.in: Version 2.7.92.
1097 2004-08-30 Mark McLoughlin <mark@skynet.ie>
1099 Fix problem with schemas install. Bug #151334.
1101 * gconf/gconftool.c: (process_locale_info): install the
1102 global default in the C locale only.
1104 2004-08-30 Mark McLoughlin <mark@skynet.ie>
1106 Lots of debugging info from Mickey Stein <yekkim@pacbell.net>
1107 narrowed this one down in bug #150779.
1109 * gconf/gconfd.c: (drop_old_databases): don't drop the default
1110 database here, we do that later. Hangover from the fact that
1111 the default database didn't use to be on db_list.
1113 2004-08-30 Mark McLoughlin <mark@skynet.ie>
1115 Patch from Josselin Mouette <joss@debian.org> in bug #148028
1117 * gconf/gconfd.c: (periodic_cleanup_timeout): save and reload
1118 ~/.gconfd/saved_state so we don't drop listeners when reloading
1121 2004-08-27 Mark McLoughlin <mark@skynet.ie>
1123 * gconf/gconftool.c: (process_locale_info): don't explicitly
1124 install the global default in a schema for every locale since
1125 we happily fall back to the C locale anyway. Fixes bug #131488.
1127 2004-08-25 Mark McLoughlin <mark@skynet.ie>
1129 * backends/markup-tree.c: (markup_entry_get_value): don't
1130 abort if we find no local schema to match any locales - there
1131 may not be a "C" local schema at all. See bug #147522 for a
1132 test case from Caio Begotti <caio1982@gmail.com >
1134 2004-08-19 Mark McLoughlin <mark@skynet.ie>
1136 * configure.in: post-release bump to 2.7.92.
1138 ==================== 2.7.91.1 ====================
1140 2004-08-19 Mark McLoughlin <mark@skynet.ie>
1142 * configure.in: Version 2.7.91.1.
1144 2004-08-19 Mark McLoughlin <mark@skynet.ie>
1146 Revert the patch to make use of the merge-subtree feature at
1147 specific points in the tree. Not clear that it solves the
1148 problems we thought it solved. Patch archived in bug #138498
1150 * backends/markup-tree.[ch]:
1151 (markup_tree_get): remove try_merge flag.
1152 (markup_dir_sync): don't try and save as a merged subtree.
1154 * backends/markup-backend.c: (resolve_address), (ms_new):
1155 Remove the "nomerge" backend flag.
1157 * backends/gconf-merge-tree.c:
1158 (recursively_load_subtree): add back.
1159 (merge_tree): upd. for markup_tree_get() change.
1161 2004-08-16 Christian Rose <menthos@menthos.com>
1163 * configure.in: Added "bs" to ALL_LINGUAS.
1165 2004-08-16 Mark McLoughlin <mark@skynet.ie>
1167 * configure.in: post-release bump to 2.7.92.
1169 ==================== 2.7.91 ====================
1171 2004-08-16 Mark McLoughlin <mark@skynet.ie>
1173 * configure.in: Version 2.7.91.
1175 2004-08-11 Kjartan Maraas <kmaraas@gnome.org>
1177 * backends/xml-cache.c: (cache_clean): Use NULL in place of 0.
1178 * configure.in: Added nb to ALL_LINGUAS.
1179 * gconf/gconf-internals.c: (gconf_invalid_corba_value): ANSI
1180 parameter list warning.
1181 * gconf/gconf-sanity-check.c: (ensure_gtk): NULL vs. 0
1182 * gconf/gconfd.c: (main): Same. Closes bug #149843.
1184 2004-08-10 Mark McLoughlin <mark@skynet.ie>
1186 * gconf/gconftool.c: (main): set the umask for
1187 --makefile-install-mode so we always install the
1188 schemas with the correct permissions. bug #145041.
1190 2004-08-07 Danilo Å egan <dsegan@gmx.net>
1194 * gconf/gconftool.c (options): s/dir/directory/ s/standard out/standard output/.
1195 * gconf/gconfd.c (main): s/fd/file descriptor/.
1196 * gconf/gconf-sources.c (gconf_sources_new_from_addresses): s/config/configuration/.
1197 * backends/markup-tree.c (parse_value_element): s/car_type/first-element/.
1199 2004-08-03 Mark McLoughlin <mark@skynet.ie>
1201 * configure.in: post-release bump to 2.7.91.
1203 ==================== 2.7.90 ====================
1205 2004-08-03 Mark McLoughlin <mark@skynet.ie>
1207 * configure.in: Version 2.7.90.
1209 2004-08-03 Mark McLoughlin <mark@skynet.ie>
1211 Patch from Carlos Daniel Ruvalcaba Valenzuela <clsdaniel@yahoo.com.mx>
1214 * gconf/gconf-internals.[ch]: (gconf_escape_percents): remove unused
1215 (and internal) function.
1217 2004-07-09 Mark McLoughlin <mark@skynet.ie>
1219 Patch from Kai Willadsen <kaiw@itee.uq.edu.au> in
1222 * doc/gconf/gconf.sgml,
1223 doc/gconf/tmpl/gconf-client.sgml,
1224 doc/gconf/tmpl/gconf.sgml,
1225 doc/intro-article.sgml,
1226 gconf/gconf-client.h,
1227 gconf/gconf-listeners.h: bring the docs up to
1228 date with the patch that we're using GObject instead
1231 2004-07-07 Mark McLoughlin <mark@skynet.ie>
1233 * configure.in: post-release bump to 2.7.4.
1235 ==================== 2.7.3.1 ====================
1237 2004-07-07 Mark McLoughlin <mark@skynet.ie>
1239 * configure.in: Version 2.7.3.1.
1241 2004-07-07 Mark McLoughlin <mark@skynet.ie>
1243 * gconf/gconftool.c: (process_key_list): one character
1244 fix to make the schema actually be applied.
1246 2004-07-07 Fernando Herrera <fherrera@onirica.com>
1248 * gconf/default.path.in: Removed outdated comment.
1250 2004-07-07 Mark McLoughlin <mark@skynet.ie>
1252 * gconf/gconftool.c: (do_makefile_uninstall): merge with
1253 do_makefile_install() by adding a "unload" flag.
1255 2004-07-05 Mark McLoughlin <mark@skynet.ie>
1257 * configure.in: post-release bump to 2.7.4.
1259 ==================== 2.7.3 ====================
1261 2004-07-05 Mark McLoughlin <mark@skynet.ie>
1263 * configure.in: Version 2.7.3.
1265 2004-07-05 Mark McLoughlin <mark@skynet.ie>
1267 Patch from Josselin Mouette <joss@debian.org> to handle
1268 SIGHUP by reloading all databases. Intended to be used
1269 in package's postinst scripts to get all running gconfds
1273 (signal_handler): handle SIGHUP by setting flag.
1274 (periodic_cleanup_timeout): reload all databases when
1275 the reload flag is set.
1277 2004-07-04 Mark McLoughlin <mark@skynet.ie>
1279 Patch from Julio M. Merino Vidal <jmmv@menta.net> in bug #134517
1280 to add a --sysconfsubdir configure argument which allows the
1281 sub-directory GConf uses under $sysconfdir to be change.
1283 * configure.in: add --sysconfsubdir argument and subst $sysgconfdir
1284 which contains the full sysconf path GConf uses.
1287 examples/Makefile.am,
1289 gconf/default.path.in,
1291 standard-schemas/Makefile.am,
1292 wrappers/cxx/Makefile.am: use $sysgconfdir.
1294 2004-07-02 Mark McLoughlin <mark@skynet.ie>
1296 Fixup some bugs with the merge files support which was
1297 causing unset entries not to be completely wiped out.
1299 * backends/markup-tree.c:
1300 (clean_old_local_schemas): rename.
1301 (clean_old_local_schemas_recurse): if we're saving as a subtree,
1302 recurse down the tree.
1303 (delete_useless_subdirs): ignore the some_subdir_needs_sync and
1304 entries_need_save flags on the subdir - they're irrelevant if
1305 there's no entries or subdirs. Also, check whether the subdir
1306 is in a subtree file rather than current dir.
1307 (delete_useless_subdirs_recurse): correctly recurse over subdirs.
1308 (delete_useless_entries_recurse): implement recursively deleting
1310 (recursively_load_subtree): set the not_in_filesytem flag if we're
1311 going to be saving as a subtree.
1312 (markup_dir_sync): recusively clean schemas and delete entries
1313 if we're saving as a subtree.
1315 2004-07-02 Mark McLoughlin <mark@skynet.ie>
1317 Based on a patch to add --unload option from
1318 Julio M. Merino Vidal <jmmv@menta.net> in bug #130129.
1320 * gconf/gconftool.c:
1321 (main): add --unload option.
1322 (do_load_file): add an 'unload' flag.
1323 (set_values), (process_entry),
1324 (process_key_list), (hash_install_foreach), (process_schema),
1325 (process_list): pass the flag about and unset/unassociate
1326 things as appropriate.
1327 (do_makefile_uninstall): pass the unload flag to do_load_file().
1329 2004-07-02 Mark McLoughlin <mark@skynet.ie>
1331 Fix for bug #145141.
1333 * backends/markup-tree.c: (load_subdirs): recognise
1334 subdirs which don't contain a %gconf.xml file but do
1335 contain a %gconf-tree.xml file.
1337 2004-07-01 Pawan Chitrakar <pawan@nplinux.org>
1339 * configure.in: Added "ne" Nepali in ALL_LINGUAS
1341 2004-06-27 Ross Burton <ross@burtonini.com>
1343 * doc/Makefile.am: Distribute the incredibly useful FAQ and DTD.
1345 2004-06-22 Mark McLoughlin <mark@skynet.ie>
1347 * backends/markup-tree.c: fix tiny typo which was causing
1348 /schemas/apps to be saved as one gigantic file.
1350 2004-06-21 Mark McLoughlin <mark@skynet.ie>
1352 Fix for bug #138498 - turn on "subtree-in-a-file" for the
1353 subdirectories of the following directories:
1356 /apps/panel/profiles",
1361 /schemas/desktop/gnome
1366 You can turn this of by passing the "nomerge" flag to the
1367 backend - e.g. xml:readwrite,nomerge:$(HOME)/.gconf
1369 * backends/markup-tree.[ch]:
1370 (markup_tree_get): pass in the nomerge path.
1371 (markup_dir_build_file_path),
1372 (markup_dir_build_dir_path): simple wrappers for build_path().
1373 (load_subtree), (load_entries), (load_subdirs),
1374 (delete_useless_subdirs): upd. for above change.
1375 (recursively_load_subtree): impl. recursively loading the tree
1377 (should_save_as_subtree): logic to figure out which dirs should
1378 be saved as merged files.
1379 (markup_dir_sync): save the dir in a merged file if neccessary.
1380 (markup_dir_build_path): allow building a non-filesystem path.
1381 (parse_tree), (save_tree): upd.
1382 (write_dir): set the "not_in_filesystem" flag.
1384 * backends/markup-backend.c:
1385 (resolve_address), (ms_new): parse and use the "nomerge" flag.
1387 * backends/gconf-merge-tree.c: (merge_tree): upd.
1389 2004-06-21 Mark McLoughlin <mark@skynet.ie>
1391 * gconf/gconfd.c: (shutdown_databases): don't free the
1392 default database twice. Its on the databases list now
1393 so it doesn't need to freed explicitly.
1395 2004-06-21 Mark McLoughlin <mark@skynet.ie>
1397 Patch from Leonardo Quijano Vincenzi <lquijano@hotpop.com>
1400 * doc/gconf/tmpl/gconf-client.sgml: warn the g_type_init()
1401 must be called before using GConfClient.
1403 2004-06-12 Mark McLoughlin <mark@skynet.ie>
1405 Patch from Daniel Elstner <daniel.elstner@gmx.net>
1408 * gconf.m4.in (AM_GCONF_SOURCE_2): Use $(sysconfdir)/gconf/schemas
1409 as the default value of GCONF_SCHEMA_FILE_DIR, without the trailing
1410 slash. Also get rid of the pointless else branch.
1412 2004-06-12 Mark McLoughlin <mark@skynet.ie>
1414 Patch from Julio M. Merino Vidal <jmmv@menta.net>
1417 * doc/gconf/Makefile.am: don't create a directory if
1420 2004-06-12 Mark McLoughlin <mark@skynet.ie>
1422 Patch from Mariano Suárez-Alvarez <msuarezalvarez@arnet.com.ar>
1423 in bug #122958 to change the encoding logic so as to produce
1424 shorter encoded keys when encoding non-ascii characters. Does
1425 not require changes to the decoder.
1427 * gconf/gconf.c: (gconf_escape_key): use a shorter encoding
1428 for non-ascii characters.
1430 2004-06-12 Mark McLoughlin <mark@skynet.ie>
1432 64-bit fix from Joe Marcus Clarke <marcus@freebsd.org>
1434 * backends/markup-tree.c: (parse_tree): the length
1435 returned from g_file_get_contents() is a gsize
1438 2004-06-09 Kjartan Maraas <kmaraas@gnome.org>
1440 * gconf/gconf-internals.c: (gconf_activate_server):
1441 Plug a small leak. Fixes bug #143941.
1443 2004-05-31 Mark McLoughlin <mark@skynet.ie>
1445 * configure.in: post-release bump to 2.7.2.
1447 ==================== 2.7.1 ====================
1449 2004-05-31 Mark McLoughlin <mark@skynet.ie>
1451 * configure.in: Version 2.7.1.
1453 2004-05-04 Morten Welinder <terra@gnome.org>
1455 * gconf/gconf-internals.c (gconf_activate_server): Delete stray
1456 ";" aka null statement. (Valid only in C99 where it had no
1459 2004-04-23 Mark McLoughlin <mark@skynet.ie>
1461 * gconf/gconf-sources.c: (gconf_sources_new_from_addresses): return
1462 NULL and the last error if we failed to resolve any of the addresses.
1464 2004-04-21 Richard Hult <richard@imendio.com>
1466 * gconf/gconf-database.c (gconf_database_unset): Init
1467 modified_sources to NULL since we access it later. Fixes random
1470 2004-04-19 Mark McLoughlin <mark@skynet.ie>
1472 Based on a patch from Julio Merino <jmmv@hispabsd.org>
1475 * configure.in: add a --enable-gtk=yes/no/auto (defaults to auto)
1477 2004-04-19 Mark McLoughlin <mark@skynet.ie>
1479 Patch Elijah Newren <bugsqueesher@yahoo.com> in bug #138009
1481 * examples/basic-gconf-app.c: (config_entry_commit):
1482 return a boolean so we don't crash.
1484 2004-04-19 Mark McLoughlin <mark@skynet.ie>
1486 Based on a patch from Ryan Lovett <ryan@ocf.berkeley.edu>
1489 * backends/markup-backend.c: (resolve_address):
1490 backends/xml-backend.c: (resolve_address): check to see
1491 if the dir exists before trying to create it rather than
1492 relying on EEXIST from mkdir.
1494 2004-04-19 Mark McLoughlin <mark@skynet.ie>
1496 * backends/dir-utils.[ch],
1497 backends/val-encode.[ch]: remove last remenants
1500 2004-04-19 Mark McLoughlin <mark@skynet.ie>
1502 Tracked down by Gustavo Giráldez <gustavo.giraldez@gmx.net>
1505 * gconf/gconfd.c: (logfile_save): don't save default_db explicitly
1506 since its now stored in the same list as the other dbs - but do
1507 make sure that it gets saved as "def" rather than using its full
1510 2004-04-16 Colin Walters <walters@redhat.com>
1512 * gconf/gconf-internals.c (gconf_activate_server): Move temporary
1513 directory creation into daemon code, so that we play better with
1514 SELinux. Patch reviewed by (and several improvements suggested by)
1515 Mark McLoughlin <mark@skynet.ie>.
1517 2004-04-13 Mark McLoughlin <mark@skynet.ie>
1519 Fix pointed out by Frédéric L. W. Meunier <1@pervalidus.net>.
1521 * gconf.m4.in: add quotes around AM_GCONF_SOURCE_2 to
1522 quell autoconf's rudeness.
1524 2004-04-08 Guntupalli Karunakar <karunakar@freedomink.org>
1526 * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
1528 2004-04-08 Adam Weinberger <adamw@gnome.org>
1530 * configure.in: Added en_CA to ALL_LINGUAS.
1532 2004-04-05 Mark McLoughlin <mark@skynet.ie>
1534 Revert the --dump behaviour change (not dumping schema defaults)
1535 and add a --ignore-schema-defaults argument which applies to
1536 all arguments which get the value of a key.
1538 * gconf/gconftool.c:
1539 (main): check that --ignore-schema-defaults is being used with
1540 an option which gets a value.
1541 (list_pairs_in_dir), (dump_entries_in_dir):
1542 respect --ignore-schema-defaults.
1543 (get_maybe_without_default): helper function.
1544 (do_get), (do_get_type), (do_get_list_size), (do_get_list_element):
1545 respect --ignore-schema-defaults.
1547 2004-04-02 Mark McLoughlin <mark@skynet.ie>
1549 * gconf/gconftool.c: (set_values), (process_entry): handle
1550 an <entry> with only a <schema_name> correctly.
1552 2004-04-01 Mark McLoughlin <mark@skynet.ie>
1554 * gconf/gconftool.c: (dump_entries_in_dir): don't dump
1555 the value if its the schema default.
1557 2004-04-01 Mark McLoughlin <mark@skynet.ie>
1559 * gconf/default.path.in: fix the position of the
1560 local-defaults.path include. Bug #137578.
1562 2004-03-31 Mark McLoughlin <mark@skynet.ie>
1564 Fix last remaining obvious issue I'm seeing with the previous
1565 patches. gconfd was crashing when removing objects from the
1568 * gconf/gconf-database.c: (gconf_database_recursive_unset):
1569 Don't try and propogate a NULL error.
1571 * gconf/gconf-sources.c:
1572 (gconf_sources_unset_value): create modified_sources when
1573 they it doesn't exist.
1574 (prepend_unset_notify): add a couple of assertions.
1575 (recursive_unset_helper): unset modified_sources between
1576 unsets so that we don't append to the same source list.
1578 2004-03-30 Mark McLoughlin <mark@skynet.ie>
1580 * gconf/gconf-backend.c: (gconf_backend_verify_vtable):
1581 Return TRUE if the vtable is okay.
1583 2004-03-30 Mark McLoughlin <mark@skynet.ie>
1585 * doc/gconf/tmpl/gconf-backend.sgml: add some documentation
1586 for set_notify_func().
1588 2004-03-30 Mark McLoughlin <mark@skynet.ie>
1590 * tests/testbackend.c: (foreach_recursive), (sync_and_clear),
1591 (check_unset), (set_value), (get_value): upd. for the fact
1592 we have a copy of the vtale now rather than a pointer to it.
1594 2004-03-30 Mark McLoughlin <mark@skynet.ie>
1596 * gconf/gconf-backend.h: actually add the vtable_size
1599 2004-03-29 Mark McLoughlin <mark@skynet.ie>
1601 * gconf/gconf-database.c:
1602 (safe_g_hash_table_insert): remove - no hash table here.
1604 2004-03-29 Mark McLoughlin <mark@skynet.ie>
1606 * gconf/gconf-engine.h: add gconf_engine_get_for_addresses()
1607 and gconf_engine_get_local_for_addresses().
1610 (gconf_engine_connect): implement setting up a database from
1611 an arbitrary stack of sources.
1612 (register_engine): use the concatenation of addresses for the key.
1613 (unregister_engine): free the persistent address and address list on
1615 (lookup_engine): use the concatenation of addresses for the key.
1616 (gconf_engine_get_local_for_addresses): add.
1617 (gconf_engine_get_for_address): update for register_engine change.
1618 (gconf_engine_get_for_addresses): impl support for remote composite dbs.
1619 (update_listener): update for the fact that listeners are now saved using
1620 the persistent name.
1622 * gconf/GConfX.idl: extend the ConfigServer interface
1623 by adding ConfigServer2 inherting from ConfigServer.
1624 Add ConfigServer2::get_database_for_addresses().
1626 * gconf/gconf-backend.c:
1627 (gconf_address_valid), (gconf_get_backend): check the backend
1628 address doesn't contain any special characters.
1630 * gconf/gconf-database.[ch]:
1631 (source_notify_cb): don't notify unless this change could
1632 actually cause a change for the client.
1633 (gconf_database_notify_listeners): impl. notifying "other"
1634 listeners - clients listening on other stacks which contains
1635 any of the modified sources.
1636 (gconf_database_set), (gconf_database_unset): keep track of
1637 the sources modified by the change and update for the
1638 notify_listeners change.
1639 (gconf_database_recursive_unset): ditto and upd. for the
1640 change in the listeners list returned by
1641 gconf_sources_recursive_unset().
1642 (gconf_database_get_persistent_name): make the persistent
1643 name a concatenation of the individual addresses instead
1644 of the first address.
1646 * gconf/gconf-internals.[ch]:
1647 (gconf_address_list_get_persistent_name): impl method similar
1648 to gconf_database_get_persistent_name, except concatenate
1649 the addresses from a GSList.
1650 (gconf_persistent_name_get_address_list): do the reverse.
1651 (gconf_address_list_free): free the list of strings.
1653 * gconf/gconf-sources.[ch]:
1654 (gconf_sources_new_from_source): allow creating an empty source
1656 (gconf_sources_set_value),
1657 (gconf_sources_unset_value): return the sources modified by
1659 (prepend_unset_notify), (recursive_unset_helper),
1660 (gconf_sources_recursive_unset): return a list of GConfUnsetNotifys
1661 which contains both the key and the modified source.
1662 (get_address_resource): copy and paste of gconf_address_resource
1663 except it doesn't dup the return value.
1664 (gconf_sources_is_affected): figure out if a change to a particular
1665 key in one source affects the key with a particular stack of sources.
1667 * gconf/gconfd.[ch]: impl ConfigServer2 inheritance.
1668 (gconfd_get_database): upd for obtain_database change.
1669 (gconfd_get_composite_database): implement.
1670 (init_databases): rename dbs_by_address to dbs_by_addresses.
1671 (set_default_database): register the default db like the others.
1672 (register_database): use the persistent name as the key.
1673 (unregister_database): ditto.
1674 (lookup_database): ditto.
1675 (obtain_database): use a list of addresses, not a single one.
1676 (gconfd_notify_other_listeners): impl notifying listeners
1677 on GConfDatabases other than the one which was changed.
1678 (listener_logentry_restore_and_destroy_foreach): restore by
1679 splitting the address list string.
1681 * gconf/gconftool.c: (main): enable --config-source without
1682 --direct as it works better now. Also allow --config-source
1683 to be an address list.
1685 2004-03-29 Mark McLoughlin <mark@skynet.ie>
1687 * backends/markup-backend.c,
1688 backends/xml-backend.c: initialize the set_notify_func
1691 2004-03-29 Mark McLoughlin <mark@skynet.ie>
1693 Re-work the notifications-from-backends patch so that the
1694 backend doesn't have to keep track of a callback per
1695 listener as suggested by Cyrille.
1697 * gconf/gconf-backend.h: add a set_notify_func() member to
1698 the vtable and remove the callback arg from add_listener().
1700 * gconf/gconf-database.c:
1701 (gconf_database_new): set the notification callback here.
1702 (gconf_database_readd_listener): upd.
1704 * gconf/gconf-sources.[ch]:
1705 (gconf_source_set_notify_func): add.
1706 (gconf_source_add_listener): upd.
1707 (gconf_sources_set_notify_func): add.
1708 (gconf_sources_add_listener): upd.
1710 2004-03-26 Mark McLoughlin <mark@skynet.ie>
1712 * gconf/gconf-database.c: (source_notify_cb): don't leak
1715 * gconf/gconf-sources.c:
1716 (gconf_sources_add_listener),
1717 (gconf_sources_remove_listener): fix mistake pointed out
1720 2004-03-25 Mark McLoughlin <mark@skynet.ie>
1722 Allow backends to notify the daemon of changes to entries.
1723 Based on a patch from Cyrille Moureaux <Cyrille.Moureaux@Sun.COM>
1726 * gconf/gconf-backend.h: add add_listener() and
1727 remove_listener() members to the vtable.
1729 * gconf/gconf-database.c:
1730 (source_notify_cb): re-compute the value and notify
1731 listeners when the backend reports the key has changed.
1732 (gconf_database_readd_listener),
1733 (gconf_database_remove_listener): add/remove backend
1736 * gconf/gconf-sources.[c]:
1737 (gconf_source_add_listener),
1738 (gconf_source_remove_listener),
1739 (gconf_sources_add_listener),
1740 (gconf_sources_remove_listener): impl. the glue.
1742 * doc/gconf/tmpl/gconf-backend.sgml: update the backend
1745 * backends/markup-backend.c,
1746 backends/xml-backend.c: set the add_listener() and
1747 remove_listener() members to NULL.
1749 2004-03-24 Mark McLoughlin <mark@skynet.ie>
1751 * gconf/gconf-backend.h: add a vtable_size member to
1754 * gconf/gconf-backend.c:
1755 (gconf_backend_verify_vtable): impl. copying handling
1756 mismatches in vtable sizes and also refuse to use the
1757 backend if any of the functions we require are NULL.
1758 (gconf_get_backend): fixup error handling a bit.
1760 * gconf/gconf-sources.c: update to take into account
1761 that the we have a copy of the vtable now rather than
1762 just a pointer to it.
1764 * doc/gconf/tmpl/gconf-backend.sgml: upd.
1766 * backends/markup-backend.c,
1767 backends/xml-backend.c: add sizeof (GConfBackendVTable) to
1770 2004-03-24 Mark McLoughlin <mark@skynet.ie>
1772 * gconf/gconf-database.c: (impl_ConfigDatabase_set): don't
1773 convert the value into a string and then do nothing with it.
1775 2004-03-30 Mark McLoughlin <mark@skynet.ie>
1777 * configure.in: bump to 2.7.1. 2.6.x development is on
1778 the gnome-2-6 branch now.
1780 2004-03-24 Mark McLoughlin <mark@skynet.ie>
1782 * configure.in: kill the message-of-doom.
1784 2004-03-22 Guntupalli Karunakar <karunakar@freedomink.org>
1786 * configure.in: Added "pa" (Punjabi) to ALL_LINGUAS.
1788 2004-03-22 Mark McLoughlin <mark@skynet.ie>
1790 * configure.in: post-release bump to 2.6.1.
1792 2004-03-22 Mark McLoughlin <mark@skynet.ie>
1794 * configure.in: Version 2.6.0
1796 2004-03-18 Ross Burton <ross@burtonini.com>
1799 Added a FAQ, based upon the old FAQ and updated for the new
1802 2004-03-16 Gareth Owen <gowen72@yahoo.com>
1804 * configure.in: Added "en_GB" (British) to ALL_LINGUAS
1806 2004-03-02 Dinesh Nadarajah <dinesh_list@sbcglobal.net>
1808 * ta.po: Started Tamil Translation.
1810 2004-02-24 Mark McLoughlin <mark@skynet.ie>
1812 * configure.in: Version 2.5.90.
1814 2004-02-01 Robert Sedak <robert.sedak@sk.htnet.hr>
1816 * configure.in: Added "hr" (Croatian) to ALL_LINGUAS.
1818 2003-12-14 Havoc Pennington <hp@redhat.com>
1820 * configure.in: 2.5.1
1822 2003-12-03 Ross Burton <ross@burtonini.com>
1824 * tmpl/gconf.sgml: lamest patch *ever*, remove a newline.
1826 Tue Nov 4 17:17:07 2003 Jonathan Blandford <jrb@redhat.com>
1828 * gconf/gconf-changeset.h: register GConfChangeSet as a boxed type.
1830 2003-11-02 Havoc Pennington <hp@pobox.com>
1832 * ChangeLog: ascii-ize various people's names; Emacs can't handle
1835 * backends/Makefile.am: cut over to the new backend implementation
1837 * configure.in: change to 2.5.0, add "this is the unstable
1840 2003-10-28 Ghee Teo <ghee.teo@sun.com>
1842 * gconf/default.path.in: added hooks for paths to preserve
1843 local configuration gconf values as in bug #107481.
1845 2003-10-28 Mark McLoughlin <mark@skynet.ie>
1847 * backends/gconf-merge-tree.c: include locale.h - patch
1848 from Damien Carbery <damien.carbery@sun.com> in bug #125688.
1850 2003-10-27 Mark McLoughlin <mark@skynet.ie>
1852 Patch to allow a single XML file to represent an arbitrary
1853 GConf tree rather than a single directory. Also fixes
1854 many little bugs with the markup backend. See bug #116948.
1856 * backends/Makefile.am: install the markup backend and
1857 build gconf-merge-tree.
1859 * backends/markup-tree.c: if a %gconf-tree.xml file exists
1860 in a given directory, load that and ignore any %gconf.xml
1861 files in the directory and any sub-directories. Also,
1862 fix many little buglets to make this work compatibly with
1865 * gconf/gconftool.c:
1866 (recurse_subdir_dump), (do_dump_values): sort the directories
1868 (print_schema_in_xml): don't add extra whitespace to schema
1870 (print_value_in_xml): dump " " strings as empty strings.
1871 (compare_entries), (dump_entries_in_dir): dump entries
1872 sorted by the key name.
1874 * backends/markup-backend.c: (cleanup_timeout): fixup.
1876 * backends/gconf-merge-tree.c: utility to merge a GConf
1877 tree into a single markup backend %gconf-tree.xml file.
1878 Doing this to a tree means that any changes you make
1879 to that tree using the markup backend will not be reflected
1880 if you go back to the XML backend.
1882 * tests/testbackend.c: include stdio.h to fix warnings.
1884 Wed Oct 22 22:59:47 2003 Matthias Clasen <maclas@gmx.de>
1886 * doc/gcnf/Makefile.am:
1887 * doc/gconf/gconf.sgml:
1888 * doc/gconf/tmpl/gconf-backend.sgml:
1889 * doc/gconf/tmpl/gconf-client.sgml:
1890 * doc/gconf/tmpl/gconf-engine.sgml:
1891 * doc/gconf/tmpl/gconf.sgml: Use gtk-doc in xml mode. (#111791)
1893 2003-10-22 Havoc Pennington <hp@redhat.com>
1895 * gconf/gconf.c, gconf/gconfd.c: use g_string_new (NULL)
1896 rather than g_string_new ("") #106974 Morten Welinder
1898 * gconf/gconfd.c (gconf_main): change cleanup/exit timeout to 30
1901 * backends/xml-cache.c (cache_clean): whack string that needed
1902 ngettext, as it was dumb debug spew. #123866 Danilo Segan
1904 * gconf/gconf.c (gconf_handle_corba_exception): fix to avoid
1905 passing arbitrary data as printf format, #123556 Dan Winship
1907 * backends/markup-backend.c (resolve_address): remove unused
1908 variables, #122734 Kjartan Maraas
1910 * gconf.spec.in: remove, not maintained
1912 * gconf/gconf-error.c (gconf_error_new_valist): don't put a
1913 newline in error messages, bug #111845 Morten Welinder
1915 * throughout: s/dir/directory/ bug #111822 Christian Rose
1917 * gconf/gconfd.c (gconf_server_load_sources): avoid string
1918 concatenation with #defines, confuses gettext, #111821
1921 * gconf/gconfd.h: fix gconf_get_poa() declaration, #110186
1924 * gconf/gconf-internals.c (read_current_server_and_set_warning):
1925 fix a warning, bug #110179
1927 * gconf/gconfd.c (test_safe_tmp_dir): fix warning
1929 2003-10-22 Havoc Pennington <hp@redhat.com>
1931 * gconf/gconf-client.c: patch from Ray Strode to avoid breaking
1932 the schema name cache, bug #94412
1934 * doc/rationales.txt: add file to track bugzilla numbers to refer
1937 2003-10-22 Vincent Untz <vincent@vuntz.net>
1939 * backends/xml-dir.c (dir_load_doc): don't mark "%s" as translatable.
1942 2003-10-09 Ross Burton <ross@burtonini.com>
1945 * doc/gconftool-2.1:
1946 Added a basic man page.
1948 2003-10-07 Aygimantas Beru?ka <uid0@tuxfamily.org>
1950 * configure.in: Added "lt" to ALL_LINGUAS
1952 2003-09-26 Havoc Pennington <hp@pobox.com>
1954 * gconf/gconf.c (gconf_engine_all_dirs): fix crash calling this
1955 with --direct (local source), the list contains strings not
1958 Wed Sep 10 15:23:17 2003 Jonathan Blandford <jrb@redhat.com>
1960 * configure.in: Rerelease 2.4.0.1 to fix glib-gettext problem.
1962 2003-09-08 Havoc Pennington <hp@redhat.com>
1964 * configure.in: 2.4.0
1966 2003-09-05 Taneem Ahmed <taneem@bengalinux.org>
1968 * configure.in: Added "bn" to ALL_LINGUAS.
1970 2003-08-30 Laurent Dhima <laurenti@alblinux.net>
1972 * configure.in: Added "sq" (Albanian) to ALL_LINGUAS.
1974 2003-08-18 Muktha <muktha.narayan@wipro.com>
1976 * gconf/gconftool.c (main) : Print usage message when no options are
1977 passed to gconftool-2. Fixes #70316.
1979 2003-08-11 Christophe Fergeau <teuf@gnome.org>
1981 * doc/gconf/tmpl/gconf-client.sgml:
1982 * doc/gconf/tmpl/gconf.sgml: Update API documentation (in particular
1983 the gconf_client doc). Fixes #89348.
1985 2003-08-11 Frederic Crozat <fcrozat@mandrakesoft.com>
1987 * gconf/gconf-client.c: (gconf_client_real_unreturned_error),
1988 (gconf_client_real_error), (cache_pairs_in_dir):
1989 * gconf/gconf-internals.c: (gconf_log):
1990 * gconf/gconf-listeners.c: (ltable_insert), (ltable_remove),
1991 (spew_func), (ltable_spew):
1992 * gconf/gconfd.c: (main):
1993 * gconf/gconftool.c: (main), (recurse_subdir_list),
1994 (do_recursive_list), (do_dump_values), (list_pairs_in_dir),
1995 (print_schema_in_xml), (print_pair_in_xml), (print_list_in_xml),
1996 (print_value_in_xml), (dump_entries_in_dir), (do_dir_exists),
1997 (do_spawn_daemon), (do_get), (read_value_type), (do_set),
1998 (do_get_type), (do_get_list_size), (do_get_list_element),
1999 (do_schema_info), (do_associate_schema), (do_dissociate_schema),
2000 (do_set_schema), (do_all_entries), (do_unset),
2001 (do_recursive_unset), (do_all_subdirs), (get_list_value_from_xml),
2002 (get_pair_value_from_xml), (get_schema_values_from_xml),
2003 (get_values_from_xml), (set_values), (fill_default_from_string),
2004 (extract_global_info), (process_locale_info), (process_key_list),
2005 (get_schema_from_xml), (hash_install_foreach),
2006 (hash_uninstall_foreach), (process_schema), (process_list),
2007 (do_load_file), (do_makefile_install), (do_makefile_uninstall),
2008 (check_err), (key_breakage), (do_break_key), (do_break_directory),
2009 (do_get_default_source):
2010 * gconf/gnome-testclient.c: (notify_func), (main):
2011 * gconf/testclient.c: (main), (notify_func):
2012 use g_print/g_printerr instead of printf/fprintf(strerr). It
2013 fixes UTF-8 being displayed on command line with non-UTF-8 locales.
2015 2003-08-09 Guntupalli Karunakar <karunakar@freedomink.org>
2017 * configure.in: Added "hi" in ALL_LINGUAS.
2019 2003-03-16 Jeffrey Stedfast <fejj@ximian.com>
2023 * backends/xml-dir.c (gconf_xml_doc_dump): Replacement for
2024 xmlDocDump() which is not reliable. While we're at it, also dump
2026 (dir_sync): Call the new gconf_xml_doc_dump() rather than
2027 xmlDocDump() because we don't want to risk losing user settings.
2029 2003-07-19 Havoc Pennington <hp@pobox.com>
2031 * doc/gconf/gconf.sgml: doc fixes from Samuel Stringham
2034 2003-07-17 Havoc Pennington <hp@redhat.com>
2036 * gconf/gconftool.c (do_recursive_unset): do a suggest_sync after
2037 do_recursive_unset() (which shouldn't be necessary except that we
2038 suck). Patch from Greg Hudson #117713
2040 * gconf/gconf-value.h: flags can't be 0, patch from
2041 Greg Hudson, #117712
2043 2003-07-07 Mark McLoughlin <mark@skynet.ie>
2045 * gconf/gconf-client.c:
2046 (recurse_subdir_list): the subdir list contains full
2047 paths, so don't append it to the full path. Fixes
2048 recursive preloading.
2049 (gconf_client_preload): don't get (and leak) the list
2050 of subdirs if we're only doing onelevel preloading.
2052 2003-06-28 Dafydd Harries <daf@parnassus.ath.cx>
2054 * gconf/gconftool.c (main): Slight extra option tweaking.
2056 2003-06-26 Dafydd Harries <daf@parnassus.ath.cx>
2058 * gconf/gonftool.c (main): Tidied up "--foo option must be used by
2061 2003-06-26 Ross Golder <ross@golder.org>
2063 * gconf/gconftool.c (do_dissociate_schema): Fixed a misleading
2065 * gconf/gconftool.c (do_associate_schema): Prevent segfault when
2066 no args supplied (#116040)
2067 * gconf/gconftool.c (do_dissociate_schema): Prevent segfault when
2068 no args supplied (#116040)
2070 2003-06-26 Abel Cheung <maddog@linux.org.hk>
2072 * configure.in: Added "am" "mk" to ALL_LINGUAS.
2074 2003-06-26 Abel Cheung <maddog@linux.org.hk>
2076 * configure.in: Added "am" "mk" to ALL_LINGUAS.
2078 2003-06-23 Havoc Pennington <hp@redhat.com>
2082 * configure.in: 2.3.3
2084 2003-06-22 James M. Cape <jcape@ignore-your.tv>
2086 * gconf/gconf-database.c: Fix for GCC 3.3 warning (fixes #115722).
2088 2003-06-18 Mohammad DAMT <mdamt@bisnisweb.com>
2090 * po/id.po: Added Indonesian translation
2091 * configure.in: Added "id" to ALL_LINGUAS
2093 2003-06-18 Rodrigo Moya <rodrigo@ximian.com>
2097 * gconf/gconf-sources.h: moved GConfUnsetFlags enum...
2099 * gconf/gconf-value.h: ...to here.
2101 * gconf/gconf-client.[ch] (gconf_client_recursive_unset):
2102 implemented new function for calling the unrecursive_unset
2103 method on the engine.
2105 2003-06-12 Guntupalli Karunakar <karunakar@freedomink.org>
2107 * configure.in: Added "ml" in ALL_LINGUAS.
2109 2003-06-06 Michael Meeks <michael@ximian.com>
2111 * configure.in: remove the explicit linc module.
2113 2003-05-31 Michael Meeks <michael@ximian.com>
2115 * backends/markup-tree.c: include <stdio.h>
2117 2003-05-19 Ross Burton <ross@burtonini.com>
2119 * gconf/gconftool.c: Implement uninstalling GConf schemas, closing
2120 #104487. Patch based on work by jmmv@hispabsd.org <Julio Merino>.
2122 2003-05-19 Telsa Gwynne <hobbit@aloss.ukuu.org.uk>
2124 * configure.in: Add cy (Welsh) to ALL_LINGUAS
2126 2003-05-09 Mark McLoughlin <mark@skynet.ie>
2128 * gconf/gconftool.c:
2129 (print_value_in_xml): escape the string text before
2130 outputting it in the XML.
2131 (dump_entries_in_dir): ouput the keyname relative to
2132 the base directory rather than the current directory.
2134 2003-05-08 Ross Burton <ross@burtonini.com>
2136 * gconf/gconf-client.[ch]: Add gconf_client_notify(), to fake a
2137 notification from a monitored key. Fixes #70553.
2139 2003-05-07 Danilo Egan <dsegan@gmx.net>
2141 * configure.in: Added "sr" and "sr@Latn" to ALL_LINGUAS.
2143 2003-05-03 Havoc Pennington <hp@pobox.com>
2145 * configure.in: 2.3.2
2149 2003-04-26 Masahiro Sakai <sakai@tom.sfc.keio.ac.jp>
2151 * configure.in: call AC_LIBTOOL_WIN32_DLL.
2153 * backends/Makefile.am: add -no-undefined to *_la_LDFLAGS.
2154 add $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la to *_la_LIBADD.
2156 * gconf/Makefile.am (libgconf_2_la_LDFLAGS): add -no-undefined.
2158 * gconf/gconfd.c (main): use g_strdup_printf() instead of strlen() +
2159 g_malloc() + g_snprintf().
2161 03-04-23 Muktha <muktha.narayan@wipro.com>
2163 When reading the saved_state file, gconfd will not log message if
2164 the saved_state file is not present. Fixes bug #110944.
2166 2003-03-27 Brian Cameron <brian.cameron@sun.com>
2168 * gconf/gconf-sanity-check.c
2169 Updated text of the lock question to more clear text that was
2170 approved by the docs team. Havoc reviewed/approved this
2173 2003-03-27 Ross Burton <ross@burtonini.com>
2175 * gconf/gconftool.c:
2176 Added --get-type, --get-list-size and --get-list-element. Patch
2177 from TODO, closing #91349.
2178 (do_dump_values): Return an int as the prototype says we do.
2180 Applied patch from Jeff Franks <jcf@tpg.com.au> with a extensions,
2182 * gconf/gconf-schema.h:
2183 * gconf/gconf-value.h: Wrapped both header files in an extern "C"
2186 * gconf/gconf-internals.h:
2187 * gconf/gconf-value.h: Exported gconf_entry_copy(), _ref and
2188 _unref. Moved declaration from gconf-internals.h to
2189 gconf-value.h. Also deprecated gconf_entry_free().
2191 * doc/gconf/tmpl/gconf-value.sgml: Fixed typo, GCONF_VALUE_DOUBLE,
2192 in the description for gconf_value_get_float(). Changed the value
2193 type to GCONF_VALUE_FLOAT.
2195 * gconf/gconf-client.h: Added missing GCONF_CLIENT_GET_CLASS
2198 2003-03-26 Havoc Pennington <hp@pobox.com>
2200 * gconf/gconf-internals.c (gconf_get_daemon_dir): we need
2201 giop_tmpdir_init(), linc_get_tmpdir() isn't helpful. Revert to
2202 /tmp/gconfd-foo for now.
2204 2003-03-26 Havoc Pennington <hp@pobox.com>
2206 * gconf/gconf-internals.c (gconf_get_daemon_dir): call
2207 linc_set_tmpdir() to maybe make it work
2209 2003-03-26 Havoc Pennington <hp@redhat.com>
2211 * configure.in: bump to 2.3.1
2213 Apply "local locks" patch with linc_get_tmpdir modification from
2214 Michael, and the default changed to local locks. Now to
2215 get global locks you must set GCONF_GLOBAL_LOCKS=1.
2217 * gconf/gconf-internals.c (gconf_log): convert to locale encoding
2218 to pass stuff to syslog
2220 2003-03-26 Christian Rose <menthos@menthos.com>
2222 * configure.in: Added "yi" to ALL_LINGUAS.
2224 2003-03-14 Mark McLoughlin <mark@skynet.ie>
2226 Basically the same patch as the previous one .. but
2227 for the markup backend.
2229 * backends/markup-backend.c:
2230 (resolve_address): update.
2231 (clear_cache): use markup_tree_rebuild() instead of
2232 re-creating the tree.
2233 (ms_new): remove the read_only arg and s/markup_tree_new/
2235 (ms_destroy): s/markup_tree_free/markup_tree_unref/
2237 * backends/markup-tree.[ch]:
2238 (markup_tree_get), (markup_tree_unref): rename these
2239 from new()/free() and share caches for sources with
2240 the same root directory.
2241 (markup_tree_rebuild): impl.
2242 (markup_dir_needs_sync): we don't keep the read_only
2243 flag per-tree anymore so don't check it here.
2245 2002-07-16 Mark McLoughlin <mark@skynet.ie>
2247 Use the same cache for multiple sources with the same
2250 * backends/xml-cache.[ch]:
2251 (cache_get): rename from cache_new and return and existing
2252 cache for this root dir if one exists. Also use g_free
2253 as a key destroy handler for the nonexistant hash instead
2254 of doing it manually.
2255 (cache_unref): rename from cache_destroy and only destroy
2256 when refcount drops to zero.
2257 (cache_set_nonexistent), (cache_destroy_nonexistant_foreach):
2258 don't free the key here.
2260 * backends/xml-backend.c:
2261 (xs_new): s/cache_new/cache_get/
2262 (xs_destroy): s/cache_destroy/cache_unref/.
2264 2003-03-14 Mark McLoughlin <mark@skynet.ie>
2266 * backends/Makefile.am: kill unused bdb SOURCES.
2268 2003-03-13 Mark McLoughlin <mark@skynet.ie>
2270 Implement --load and --dump options for gconftool. e.g.:
2271 gconftool-2 --dump /apps/metacity > metacity.dump
2272 gconftool-2 --config-source blah --load metacity.dump
2274 gconftool-2 -load metacity.dump /apps/other_metacity
2276 * gconf/gconftool.c:
2277 (recurse_subdir_dump), (do_dump_values),
2278 (print_schema_in_xml), (print_pair_in_xml),
2279 (print_list_in_xml), (print_value_in_xml), (get_key_relative),
2280 (dump_entries_in_dir): impl dumping to XML.
2281 (get_list_value_from_xml), (get_car_cdr_value),
2282 (get_pair_value_from_xml), (get_schema_values_from_xml),
2283 (get_values_from_xml), (get_first_value_from_xml), (set_values):
2284 impl loading entries from XML.
2285 (hash_listify_foreach), (process_entry), (fill_default_from_string),
2286 (extract_global_info), (process_locale_info), (get_schema_from_xml),
2287 (hash_install_foreach), (process_schema), (process_list),
2288 (do_load_file), (do_makefile_install): munge the entries loading
2289 code with schemas loading code.
2291 2003-03-05 Havoc Pennington <hp@pobox.com>
2293 * backends/Makefile.am: remove BDB backend
2295 * configure.in: remove BDB backend support
2297 2003-03-04 Mark McLoughlin <mark@skynet.ie>
2299 Fixes weird bug where a directory appears to not exist when
2300 you create subdirectories of it.
2302 * backends/xml-cache.c:
2303 (cache_lookup): use unset_nonexistent.
2304 (cache_unset_nonexistent): unset the existent flag not
2305 only on this directory but all parent directories.
2307 2003-02-25 Havoc Pennington <hp@redhat.com>
2309 * configure.in: bump to 2.3.0 unstable version number to avoid
2312 2003-02-22 Roozbeh Pournader <roozbeh@sharif.edu>
2314 * configure.in: Added "fa" to ALL_LINGUAS.
2316 2003-02-12 Mark McLoughlin <mark@skynet.ie>
2318 * gconf/gconf.c: (gconf_engine_set),
2319 (gconf_engine_associate_schema): don't rely on
2320 caller passing in a valid GError** in assertions.
2322 2003-02-12 Mark McLoughlin <mark@skynet.ie>
2324 * backends/xml-dir.c: (listify_foreach): set the schema
2325 name even when the key is set.
2327 2003-01-21 Ross Burton <ross@burtonini.com>
2329 * doc/gconf-1.0.dtd: Add comments to the DTD.
2331 2003-01-21 Christian Rose <menthos@menthos.com>
2333 * configure.in: Added "mn" to ALL_LINGUAS.
2335 2003-01-12 Havoc Pennington <hp@pobox.com>
2337 * configure.in: 2.1.90
2339 2002-12-04 Havoc Pennington <hp@pobox.com>
2341 * backends/markup-tree.c (markup_entry_get_value): fix
2342 a logic error causing us to deref a null pointer, reported
2343 by Brian Alexander Quistorff
2345 2002-11-22 Dan Mills <thunder@ximian.com>
2347 * configure.in: fix gtk-doc version check.
2349 2002-11-09 Dmitry G. Mastrukov <dmitry@taurussoft.org>
2351 * configure.in: Added Belarusian to ALL_LINGUAS
2353 2002-11-02 Havoc Pennington <hp@pobox.com>
2355 * gconf/gconf-internals.c
2356 (gconf_value_list_to_primitive_list_destructive): fix using the
2357 wrong type (value->type not value->list_type) in an error message,
2360 2002-10-18 Havoc Pennington <hp@pobox.com>
2362 * gconf/gconf-internals.c (subst_variables): patch from
2363 Benn Vosseteig fixing a crash with a long path to $HOME
2365 2002-09-30 Yanko Kaneti <yaneti@declera.com>
2367 * doc/gconf/gconf.sgml:
2368 * doc/gconf-1.0.dtd: Some additions to match the full range of schema
2369 elements curently accepted by gconftool. Supposedly complete now.
2371 2002-09-18 Yanko Kaneti <yaneti@declera.com>
2373 * doc/Makefile.am: change the gconf-1.0.dtd install location to
2374 $(datadir)/sgml/gconf which sounds more standards compliant.
2376 2002-09-18 Havoc Pennington <hp@pobox.com>
2378 * backends/markup-backend.c (resolve_address): add FIXME about
2381 2002-09-18 Havoc Pennington <hp@pobox.com>
2383 Merge gconf-markup-hacking branch
2385 * tests/testbackend.c: add a test for backends
2387 * gconf/gconftool.c (extract_global_info): add more error
2388 checking, adding more error strings
2390 * gconf/gconf-schema.c (gconf_schema_validate): do some more
2391 validation with error strings that couldn't be added to stable
2394 * backends/xml-dir.c: fix quoting in error string
2396 * backends/xml-backend.c (resolve_address): fix quoting in error
2399 * backends/markup-tree.c: make it work
2401 * backends/markup-backend.c: make it work
2403 * backends/Makefile.am (libgconfbackend_markup_la_SOURCES): add
2406 2002-09-18 Yanko Kaneti <yaneti@declera.com>
2408 * gconf.m4.in: Introduce --disable-schemas-install and the
2409 GCONF_SCHEMAS_INSTALL conditional, which allows disabling
2410 the schemas installation given the package decides to support it.
2413 * doc/gconf/gconf.sgml:
2414 * doc/gconf-1.0.dtd (ADDED): formal dtd for the schema files.
2415 Not yet complete. Installed in $(pkgdatadir)/xml/gconf/ for now.
2417 2002-09-18 Havoc Pennington <hp@pobox.com>
2419 * configure.in: bump to 2.1.0, to get in sync with gnome and allow
2422 2002-09-09 jacob berkman <jacob@ximian.com>
2426 * gconf/Makefile.am:
2427 * gconf/gconf-database.h:
2428 * gconf/gconf-internals.h:
2431 * gconf/gconfd.h: rename GConf.idl to GConfX.idl in order to build
2432 on non-case-sensitive file systems
2434 2002-09-06 Peteris Krisjanis <peteris.krisjanis@os.lv>
2436 * configure.in: Added Latvian (lv) to ALL_LINGUAS
2438 2002-08-04 Havoc Pennington <hp@redhat.com>
2440 * configure.in: 1.2.1
2442 2002-07-12 Brian Cameron <Brian.Cameron@sun.com>
2445 Removed reference to gnome_segv2 since it was not used.
2447 2002-07-11 Brian Cameron <Brian.Cameron@sun.com>
2453 * gconf/gconf-internals
2454 Now install gconfd-2 and gconf-sanity-check-2 in libexec
2456 2002-07-09 Mark McLoughlin <mark@skynet.ie>
2458 * gconf/gconfd.c: (obtain_database): fix
2459 silly with addresses list.
2461 2002-07-04 Havoc Pennington <hp@pobox.com>
2463 * gconf/gconfd.c (logfile_read): close our FILE* when we're done.
2464 Reported by Michael.
2466 2002-07-03 Yanko Kaneti <yaneti@declera.com>
2468 * configure.in: (ALL_LINGUAS) Added Bulgarian (bg).
2470 2002-06-16 Havoc Pennington <hp@pobox.com>
2472 * gconf/gconf-sources.c (gconf_sources_recursive_unset): don't
2473 propagate nonexistent errors, fixes a warning.
2475 Fri Jun 14 13:24:42 2002 HideToshi Tajima <hidetoshi.tajima@sun.com>
2477 * gconf/gconfd.c: include <locale.h> for setlocale.
2479 2002-06-11 Havoc Pennington <hp@pobox.com>
2481 * configure.in: version 1.2.0
2483 * README, NEWS, AUTHORS: update
2485 2002-06-02 Havoc Pennington <hp@pobox.com>
2487 * gconf/gconftool.c: add --version argument, #79555, involves a
2488 help string but it should be OK if this string isn't translated.
2490 * gconf/gconf-client.c (gconf_client_get): add some
2491 g_return_if_fail, #74984
2492 (gconf_client_key_is_writable): handle NULL entry,
2495 * gconf/gconfd.c (gconf_handle_segv): disable bug-buddy for now,
2496 too much recursion danger.
2498 * gconf/gconf-internals.c, gconf/gconfd.c: replace isspace() with
2499 g_ascii_isspace, bug #70945
2501 * gconf/gconf-value.c (gconf_value_new): init i18n here
2503 * gconf/gconf.c (gconf_engine_blank): init i18n here
2505 * gconf/gconftool.c (main): init i18n here, call textdomain
2507 * gconf/gconfd.c (main): init i18n here, and call setlocale and
2510 * gconf/gconf-internals.c (_gconf_init_i18n): function to call
2512 (gconf_orb_get): init i18n here
2514 * configure.in: require ORBit 2.4.0, linc 0.5.0,
2516 bump version to 1.1.11
2518 fix setting of gconflocaledir (there was a typo,
2519 gtklocaledir instead of gconflocaledir)
2521 check for bind_textdomain_codeset
2523 * backends/Makefile.am (noinst_LTLIBRARIES): make markup lib
2524 noinst for now, until we merge back the gconf-markup-hacking
2525 branch post-string-freeze
2527 2002-06-02 Havoc Pennington <hp@pobox.com>
2529 * backends/xml-cache.c (cache_sync): avoid zombie directory cruft by
2530 aggressively redoing the resync anytime we delete a subdir, which
2531 might enable a parent dir to also be deleted.
2533 2002-06-02 Havoc Pennington <hp@pobox.com>
2535 * backends/xml-cache.c (cache_lookup): don't leave a dir marked
2536 nonexistent after creating it
2537 (cache_set_nonexistent): remove hash entry _before_ freeing
2538 the current key. Should fix assorted "gconf loses my settings"
2541 * backends/xml-dir.c (dir_sync): don't try to delete the root dir,
2542 should fix some warnings.
2544 2002-05-27 Hasbullah Bin Pit <sebol@ikhlas.com>
2546 * configure.in: Added Malay (ms)to ALL_LINGUAS.
2547 * po/ms.po: Added Malay Translation.
2549 2002-05-27 Havoc Pennington <hp@pobox.com>
2551 * backends/markup-tree.c: implement all the tree reading stuff,
2552 need to implement modification/writing and implement
2553 markup-backend.c. (Backend is totally unused and unusable
2554 until post-GNOME2, don't worry.)
2556 * gconf/gconf-internals.h (gconf_value_set_string_nocopy):
2559 2002-05-15 Pablo Saratxaga <pablo@mandrakesoft.com>
2561 * configure.in: Added Vietnamese (vi) to ALL_LINGUAS
2563 2002-05-10 Shivaram U <shivaram.upadhyayula@wipro.com>
2565 * doc/gconf/Makefile.am: Honouring CFLAGS and LDFLAGS passed by the user
2566 Ensures successful 64bit build on Solaris.
2568 2002-05-09 Michael Meeks <michael@ximian.com>
2570 * backends/xml-entry.c (entry_get_value): ensure we
2573 2002-04-29 Pablo Saratxaga <pablo@mandrakesoft.com>
2575 * configure.in: Added Basque (eu) to ALL_LINGUAS
2577 2002-04-29 Havoc Pennington <hp@pobox.com>
2579 * configure.in: 1.1.10
2581 2002-04-26 Havoc Pennington <hp@pobox.com>
2583 * gconf/gconf-changeset.c: make the internal functions static
2585 * gconf/gconf-internals.c (byte_type): make static
2586 (get_hostname): remove
2588 * gconf/gconfd.c (add_client): set the maximum connection buffer
2589 to a reasonable-size value in order to handle locked-up clients.
2591 * backends/xml-entry.c (node_set_schema_value): opacity fixes
2593 * gconf/gconftool.c (list_pairs_in_dir): opacity fixes
2595 * gconf/gconf.c: opacity fixes
2596 (gconf_engine_get_for_address): remove the g_warning about using
2597 this function; the change notification is a bit broken but maybe
2600 * gconf/gconf-sources.c: opacity fixes
2602 * gconf/gconf-database.c: namespace fixes
2604 * gconf/gconf-internals.h: namespace some things
2606 * gconf/gconf-internals.c: opacity fixes
2607 (fill_corba_schema_from_gconf_schema):
2609 (corba_schema_from_gconf_schema): make static
2611 * gconf/gconf-schema.c: do groundwork to make GConfSchema opaque,
2612 and fix some lack of spaces before parens
2614 * gconf/gconf-value.c: do groundwork to make GConfEntry mostly
2615 opaque (implement with GConfRealEntry)
2617 2002-04-19 Abel Cheung <maddog@linux.org.hk>
2619 * configure.in: Added "zh_TW" to ALL_LINGUAS.
2621 2002-04-10 jacob berkman <jacob@ximian.com>
2623 * backends/xml-dir.c (my_xml_parse_file): g_file_get_contents()
2624 takes gsize, not int
2626 2002-03-29 Havoc Pennington <hp@pobox.com>
2628 * configure.in: 1.1.9
2630 * gconf/gconf-client.c (gconf_client_get_string): clean up some
2633 * gconf/gconf-internals.c (primitive_value): steal the schema,
2636 * gconf/gconf-value.h, gconf/gconf-value.c: Hide private fields,
2637 suggested by Michael. But then make them public again
2638 for now due to libgnome/eel being broken.
2640 * configure.in (PKGCONFIG_MODULES): require the right versions of
2643 2002-03-24 Havoc Pennington <hp@pobox.com>
2645 * gconf/gconf-internals.c (gconf_activate_server): save a bit more
2646 data about the errors that occurred for the error message,
2647 and shorten the message in favor of a link to the new
2650 2002-03-23 Havoc Pennington <hp@pobox.com>
2652 * gconf/gconfd.c (gconf_main): change exit timeout to 2 minutes
2654 2002-03-22 Havoc Pennington <hp@pobox.com>
2656 * gconf/gconfd.c (gconf_set_exception): change "returning
2657 exception" message to DEBUG priority
2659 2002-03-20 Havoc Pennington <hp@pobox.com>
2661 * tests/testpersistence.c: remove the -G_MAXFLOAT test, since
2662 it didn't work and probably shouldn't
2664 * gconf/gconf-internals.c (gconf_double_to_string): use
2666 (gconf_string_to_double): use g_ascii_strtod()
2668 2002-03-21 Havoc Pennington <hp@redhat.com>
2670 * configure.in: fuck, Martin apparently deleted -Wall last March.
2672 * gconf/gconftool.c (main): don't pass unused arg to do_get_default_source
2674 * backends/xml-test.c: include all headers we use
2676 * backends/xml-backend.c (remove_dir): fix unused variable
2678 * backends/xml-dir.c (dir_rescan_subdirs): return a value in all
2681 * gconf/gconf-sanity-check.c (check_gconf): remove unused variables
2683 * gconf/gconfd.c: include sys/wait.h
2685 * gconf/gconf-client.c: remove unused function
2687 2002-03-21 Havoc Pennington <hp@redhat.com>
2689 * backends/xml-entry.c (schema_node_extract_value): be sure
2690 we use only NODE elements as a fallback, and that we
2691 always use a NODE if possible
2692 (schema_node_extract_value): fix bug that would fail to fall back
2693 to a less-well-matched locale value if a better matched locale had
2694 no value. Should fix Galeon. And the world rejoiced! Assuming
2695 it actually fixes it. ;-)
2697 2002-03-21 Havoc Pennington <hp@redhat.com>
2699 * gconf/gconf-schema.c: move schema accessors to be functions not
2702 2002-03-20 Havoc Pennington <hp@redhat.com>
2704 * gconf/gconf-internals.c
2705 (gconf_value_list_to_primitive_list_destructive): don't call
2706 gconf_value_get_int on a bool. WTF.
2708 * gconf/gconfd.c (main): enable the signal handler for USR1
2710 * backends/xml-dir.c (dir_load_doc): do our own file reading, only
2711 use libxml to parse, so we can return an error on I/O problems
2712 (as opposed to the current behavior, nuking the file contents,
2713 which only makes sense for corrupt files)
2715 2002-03-20 Havoc Pennington <hp@redhat.com>
2717 * gconf/gconf-value.c: change all the "getters" to be functions
2718 not macros, so we can add g_return_if_fail and be typesafe and
2719 generally suck less. Suggested most recently by Jody.
2721 2002-03-19 Havoc Pennington <hp@pobox.com>
2723 * backends/xml-cache.c (dircmp): fix bad assertion reported
2724 by lunarbard on #gnome
2726 2002-03-14 Havoc Pennington <hp@redhat.com>
2728 * gconf/gconf-sanity-check.c (check_gconf): beef up the sanity
2729 checker to detect stuck locks, missing config files, and other
2732 2002-03-10 Havoc Pennington <hp@pobox.com>
2734 * gconf/gconf-sources.c (gconf_sources_query_metainfo): fix
2735 obnoxious typo (s/mi/this_mi/), also needed to fix bug
2736 reported by Kristian.
2738 * backends/xml-backend.c (query_metainfo): make key relative prior
2739 to looking up metainfo. Fixes bug where schema defaults would
2740 mysteriously get lost in some cases, reported by Kristian
2743 2002-03-07 Havoc Pennington <hp@pobox.com>
2745 * backends/xml-test.c: test program for XML backend code
2747 * configure.in: add a "minimum" debug mode and compile with it
2750 * gconf/gconftool.c (main): call setlocale()
2752 * tests/runtests.sh: run tests in various locales
2754 * gconf/gconf-value.h: add more padding to GConfEntry
2756 * gconf/gconf-internals.c (gconf_CORBA_Object_equal):
2757 (gconf_CORBA_Object_hash): remove stupid inlining of these
2760 2002-02-26 Havoc Pennington <hp@redhat.com>
2762 * gconf/gconf-client.c (notify_one_entry): protect notify callback
2763 with a reference count around the entry, for reentrancy. Reported
2764 by Rodrigo Moya and Alex Larsson.
2766 * gconf/gconf-value.c (gconf_entry_unref, gconf_entry_ref): new
2767 internal (for now) functions
2768 (gconf_entry_free): just call gconf_entry_unref
2770 Sat Feb 16 01:27:29 2002 Jonathan Blandford <jrb@redhat.com>
2772 * gconf/gconftool.c (read_value_type): fix typo in reading args.
2774 2002-02-14 Dave Camp <dave@ximian.com>
2776 * gconf/gconf.c: (gconf_string_to_enum): Use g_ascii_strcasecmp
2777 instead of g_strcasecmp.
2778 * gconf/gconfd.c: (gconf_main), (gconf_main_quit): Replace
2779 g_main_* with g_main_loop_*.
2780 * examples/simple-controller.c: (main): Use g_signal_connect
2781 instead of gtk_signal_connect.
2782 * examples/simple-view.c: (key_changed_callback): Use
2783 gtk_label_set_text instead of gtk_label_set.
2785 2002-02-12 Havoc Pennington <hp@pobox.com>
2787 * configure.in: version 1.1.8
2789 2002-02-10 Jody Goldberg <jody@gnome.org>
2791 * gconf/gconftool.c : Include libxml/globals to get xmlFree
2792 Without it we call a NULL function pointer.
2793 * backends/xml-entry.c : ditto.
2795 2002-02-10 Havoc Pennington <hp@pobox.com>
2797 * gconf/gconfd.c (signal_handler): run gnome_segv if DISPLAY is
2798 set. Why not. may turn it off for production.
2800 2002-02-10 Havoc Pennington <hp@pobox.com>
2802 * gconf/gconf.c (CHECK_OWNER_USE): put name of function in the
2804 (gconf_engine_associate_schema): remove warning from this
2805 function, it has no GConfClient equivalent and won't mangle the
2808 2002-02-10 Zbigniew Chyla <cyba@gnome.pl>
2810 * configure.in (ALL_LINGUAS): Added pl (Polish).
2812 2002-02-08 jacob berkman <jacob@ximian.com>
2814 * gconf.m4.in: revert some stuff i didn't mean to commit
2815 yesterday. Fixes problems when building with DESTDIR set.
2817 2002-02-07 jacob berkman <jacob@ximian.com>
2819 * gconf/Makefile.am (install-exec-local): don't install gconftool
2822 * gconf.m4.in (AM_GCONF_SOURCE_2): call gconftool-2 rather than
2825 2002-02-05 Havoc Pennington <hp@redhat.com>
2827 * gconf/gconf-sanity-check.c (main): add gconf-sanity-check-2 app,
2828 which either exits sucessfully and does nothing, or pops up a
2829 dialog explaining a gconf problem and exits with a failure code.
2830 Could be placed in gnome-session, or at least we can tell users
2831 to run it as a diagnostic tool.
2833 Only catches very simple problems so far.
2835 * configure.in: define XML_AND_GTK_CFLAGS
2837 2002-02-05 Michael Meeks <michael@ximian.com>
2839 * gconf/gconf.h: move (gconf_debug_shutdown) out of
2840 the internals guard - doh.
2842 * gconf/gconf-client.c (gconf_client_get_default):
2843 ensure we still own the reference we keep around.
2845 2002-02-04 Havoc Pennington <hp@redhat.com>
2847 * gconf/Makefile.am (regenerate-built-sources): give up and check
2848 stupid enum sources in to CVS and require manual rebuild.
2850 * configure.in: bump to 1.1.7, do library versioning.
2851 Default bdb backend to disabled, since I don't think
2852 it's being actively used/tested.
2854 * autogen.sh: use automake-1.4 aclocal-1.4 if found
2856 2002-02-02 jacob berkman <jacob@ximian.com>
2858 * gconf/Makefile.am: re-enable explicit dependency on built
2859 sources, as it doesn't build otherwise.
2861 2002-02-01 Havoc Pennington <hp@pobox.com>
2863 * gconf/Makefile.am: include the *.sh scripts
2865 * gconf/regenerate-enum-footer.sh: fix screwup that broke build
2867 2002-02-01 Havoc Pennington <hp@redhat.com>
2869 * gconf/Makefile.am: move the complicated enum rules into small
2870 shell scripts (regenerate-enum-*.sh), rename CORBA_SOURCES to
2873 2002-01-28 Michael Meeks <michael@ximian.com>
2875 * gconf/gconf-database.c: warning cleans.
2876 (impl_ConfigDatabase3_add_listener_with_properties):
2878 (gconf_database_add_listener): right args for format.
2880 * gconf/gconf-client.c: warning cleans.
2882 * gconf/gconf-internals.c (gconf_orb_release):
2883 return shutdown status.
2885 * gconf/gconf.c (gconf_detach_config_server):
2886 privatize again, and split out ORB shutdown into
2887 (gconf_debug_shutdown): here.
2889 2002-01-25 Michael Meeks <michael@ximian.com>
2891 * gconf/gconf.c (try_to_contact_server): release the
2892 server reference, if it's to a duff object.
2893 (gconf_get_config_listener): strip local 'listener',
2894 since we have a static module global for that.
2895 (gconf_detach_config_server): release the listener.
2896 (gconf_get_config_listener): release the poa & manager
2899 * tests/testgconf.c (main): add
2900 gconf_detach_config_server
2902 * gconf/gconf-internals.c
2903 (gconf_orb_get): remove bonobo activation
2904 worries, kill bogus fiddling with the default
2906 (gconf_orb_release): impl.
2908 * gconf/gconf.c (gconf_detach_config_server):
2909 publicise & destroy engines_by_cb.
2910 (database_rec_release): impl.
2911 (gconf_engine_set_database): use g_hash_table_new_full
2912 (gconf_engine_detach): just remove from the hash.
2913 (try_to_contact_server): release the server reference,
2914 if it's to a duff object.
2916 2002-01-28 Ross Golder <ross@golder.org>
2918 * configure.in: Updated popt URL.
2920 2002-01-27 Havoc Pennington <hp@pobox.com>
2922 * gconf/Makefile.am: don't use BUILT_SOURCES, might fix annoying
2924 (CLEANFILES): put stamp files in CLEANFILES
2925 (s-enum-types-h): make enum stamps depend on Makefile
2927 2002-01-20 Havoc Pennington <hp@pobox.com>
2929 * gconf/Makefile.am: add gconf-enum-types.h/gconf-enum-types.c
2930 files, thanks to Johan Dahlin
2932 * gconf-2.0.pc.in (Libs): oops, we had Requires: bonobo-activation
2935 2002-01-16 Anders Carlsson <andersca@gnu.org>
2937 * gconf/gconf-client.c (gconf_client_get_full): Plug a leak.
2939 2002-01-14 Havoc Pennington <hp@pobox.com>
2941 * gconf/gconf.c (gconf_key_is_below): fix to handle root dir
2943 * gconf/gconftool.c (main): add --unapply-schema mode
2945 * gconf/gconf-database.c (impl_ConfigDatabase_set_schema): allow
2946 unset schema if we get an empty schema name
2948 * gconf/gconf.c (gconf_engine_associate_schema): allow NULL
2949 schema name to unset the schema
2951 * gconf/gconftool.c (do_recursive_unset): use new
2952 gconf_engine_recursive_unset internal function to do the unset
2954 * backends/xml-cache.c, backends/xml-dir.c: rearrange things
2955 to try and make directories auto-disappear when empty
2957 * backends/xml-backend.c (remove_dir): make this do nothing
2959 * backends/xml-dir.c (dir_all_subdirs): cache subdir names in the
2960 directory so we can cheaply check if we have subdirectories
2962 * gconf/gconf-sources.c (gconf_sources_set_value): enhance the
2963 other giant error message
2965 * gconf/gconf-internals.c (gconf_activate_server): improve error
2966 message to cover stale locks and explain how to active TCP for
2969 * gconf/gconf-sources.c (gconf_sources_recursive_unset): implement
2971 * gconf/gconf.c (gconf_key_check): handle NULL key
2973 * gconf/gconf-sources.c (gconf_sources_set_schema): allow NULL
2976 * gconf/GConf.idl: add flags to recursive_unset
2978 * gconf/gconf.c (gconf_engine_recursive_unset): Add this internal
2979 API to use in gconftool etc.
2981 2002-01-14 Havoc Pennington <hp@redhat.com>
2983 * gconf/gconf-client.c (gconf_client_get_full): fix segfault on
2986 2002-01-12 Havoc Pennington <hp@pobox.com>
2988 * examples/basic-gconf-app.c (main): remove unused variable,
2989 fix from Markus Bertheau
2991 * gconf/gconf-client.c (get): fix to always store the same
2992 semantic thing in the cache, regardless of whether
2993 user wanted the schema default (always pass use_default = TRUE
2995 (gconf_client_key_is_writable): avoid pointless copies if
2996 possible, to make this fast
2998 * gconf/gconf-schema.h: add padding to GConfSchema
3000 * gconf/gconf-value.h: add padding to GConfEntry
3002 * gconf/gconf-value.c (gconf_entry_equal): new internal function
3004 * gconf/gconf-client.c: queue notifies to an idle handler, replace
3005 CacheEntry with GConfEntry
3007 * gconf/gconf-client.h (struct _GConfClientClass): add padding
3008 (struct _GConfClient): add padding
3010 2001-12-11 Havoc Pennington <hp@redhat.com>
3012 * tests/testgconf.c (check_unset): fixes
3014 2002-01-10 Havoc Pennington <hp@pobox.com>
3016 * configure.in: version to 1.1.6
3017 (GCONF_REVISION): increment
3019 2002-01-08 Mark McLoughlin <mark@skynet.ie>
3021 * backends/xml-dir.c:
3022 (struct _Dir): kill unused subdir_cache.
3023 (dir_sync): move incorrect assertion.
3025 2002-01-07 Mark McLoughlin <mark@skynet.ie>
3027 * gconf/gconf-database.c: (gconf_database_new):
3028 * gconf/gconf.c: (gconf_get_config_listener):
3029 * gconf/gconfd.c: (main): no need to explicitly activate CORBA objects,
3030 the RootPOA has the IMPLICIT_ACTIVATION policy.
3032 2002-01-05 Havoc Pennington <hp@pobox.com>
3034 * gconf/gconf-client.c (gconf_client_cache): return bool for
3035 whether the value in the cache changed
3036 (notify_from_server_callback): short-circuit notification if a
3037 value hasn't actually changed. would be better to do this
3038 server-side, but that's a bit complicated for now.
3040 * gconf/gconf-value.c (gconf_value_compare): new function,
3041 internal for now to avoid API addition
3043 * gconf/gconf-client.c (cache_entry_list_destructively): new
3045 (gconf_client_all_entries): cache the requested entries, if
3046 we are monitoring the dir we get the values from.
3048 * gconf/gconf-value.c (gconf_entry_copy): new function, internal
3049 for now to avoid API addition
3051 2002-01-04 Havoc Pennington <hp@pobox.com>
3053 * gconf/gconf-client.c (gconf_client_class_init): add
3054 GCONF_DEBUG_TRACE_CLIENT setting, to debug spew about
3056 (gconf_client_real_unreturned_error): also ignore
3057 GCONF_ERROR_NO_WRITABLE_DATABASE since it's typically not
3060 2002-01-04 Havoc Pennington <hp@pobox.com>
3062 * gconf/gconf-client.c (gconf_client_preload): allow preloading
3063 directories that are below directories being monitored, not just
3064 the exact directory being monitored.
3066 2002-01-04 Havoc Pennington <hp@pobox.com>
3068 * gconf/gconf-database.c: support storing names of clients
3069 and new ConfigDatabase3
3070 (client_alive_predicate): fix backward predicate; we were removing
3071 all live clients, and keeping all dead clients. Doh! Doh! Doh!
3073 * gconf/gconf.c (gconf_engine_notify_add): use
3074 add_listener_with_properties if available to send name of client
3077 * gconf/GConf.idl: put in ConfigDatabase3 with a couple of new
3078 methods, just to make this file more horrible
3080 2002-01-04 Havoc Pennington <hp@pobox.com>
3082 * gconf/gconfd.c (main): if GCONF_DEBUG_OUTPUT is set,
3083 enable gconf_log_debug_messages
3085 2002-01-03 Havoc Pennington <hp@pobox.com>
3087 * gconf/gconftool.c (main): honor
3088 GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL to do nothing for
3089 --makefile-install-mode
3091 * backends/xml-cache.c (cache_sync): fill in the error if we
3092 return a failure code.
3094 2002-01-03 Havoc Pennington <hp@pobox.com>
3096 * gconf.m4.in: Add quotes to
3097 GCONF_SCHEMA_FILE_DIR='$(sysconfdir)/gconf/schemas' so that "make
3098 install sysconfdir=/foo" will work. May break some conceivable
3099 usage of this variable.
3101 2001-12-22 Duarte Loreto <happyguy_pt@hotmail.com>
3103 * configure.in: Added portuguese (pt) to ALL_LINGUAS
3105 2001-12-17 Havoc Pennington <hp@pobox.com>
3107 * gconf/gconf-listeners.c: reference count the listeners, make a
3108 copy of listener lists and ref all listeners prior to doing the
3109 notifies, to minimize reentrancy screwups.
3111 2001-12-17 Josh Barrow <drleary@mac.com>
3113 * examples/basic-gconf-app.c:
3114 s/GLIB_DISABLE_DEPRECATED/G_DISABLE_DEPRECATED/
3116 2001-12-17 Darin Adler <darin@bentspoon.com>
3118 * doc/gconf/.cvsignore:
3119 * examples/.cvsignore:
3122 2001-12-11 Havoc Pennington <hp@redhat.com>
3124 * gconf/gconfd.c (drop_old_clients): fix this
3126 * gconf/gconf-database.c (client_alive_predicate): fix spelling in
3129 2001-12-11 Havoc Pennington <hp@redhat.com>
3131 * gconf/gconfd.c (drop_old_clients): use
3132 CORBA_Object_non_existent() instead of ConfigListener_ping
3134 * gconf/gconf-database.c (client_alive_predicate): use
3135 CORBA_Object_non_existent() instead of ConfigListener_ping
3137 2001-12-11 Havoc Pennington <hp@redhat.com>
3139 * gconf/gconf.c (gconf_engine_get_default): change to not start
3140 gconfd immediately, so we can avoid starting it if
3141 we're just going to shut it down, and just generally do
3143 (gconf_shutdown_daemon): ignore NO_SERVER error code
3145 * backends/xml-dir.c (dir_get_value): always get schema name, not
3146 just if value is unset
3148 * gconf/gconfd.c (main): don't free logname since there are atexit
3151 * gconf/gconf-sources.c (gconf_sources_query_value): don't look
3152 for a default value for the schema. Useless and adds a bit of
3155 * gconf/gconfd.c (main): set log handler for GLib
3156 (log_handler): mask extra flags out of log level
3158 * gconf/gconf-sources.c (gconf_sources_query_value): Fix this so
3159 Gergo's bug doesn't happen; hope no other semantic gets broken.
3161 * tests/testschemas.c: do some unbreaking, and put in a test that
3162 exposes Gergo's bug (failure to read schema name if a key is set)
3164 * tests/*: put in a big comment saying don't use these as example
3165 code since they are ugly-ass and broken.
3167 Sun Dec 9 18:22:50 2001 Jonathan Blandford <jrb@redhat.com>
3169 * gconf.m4.in: Just when I think I understand the depths of the
3170 bogosity autoconf, something else comes up to impress me.
3172 2001-12-09 Havoc Pennington <hp@pobox.com>
3174 * gconf/gconf-internals.c (gconf_load_source_path): for fuck's
3175 sake - we've been reading the config source backward forever -
3176 this has never fricking worked. Dammit.
3178 * gconf/gconf-sources.c (gconf_sources_set_value): make huge error
3179 message even more so
3180 (gconf_sources_new_from_addresses): add debug log about config
3183 2001-12-08 Havoc Pennington <hp@pobox.com>
3185 * gconf/gconf-client.c: fix some warnings
3187 * gconf/gconf-internals.h: try to fix gettext issues
3189 2001-12-08 Havoc Pennington <hp@pobox.com>
3191 * gconf/gconf-value.c (gconf_value_validate): take const arg
3193 * gconf/gconf.c: add internal API to check that GConfEngine isn't
3194 being used "underneath" its owning GConfClient, thus causing
3195 cache inconsistencies. Bad hack, yay.
3197 * gconf/gconf-client.c: Use new internal GConfEngine "exclusive
3199 (gconf_client_real_unreturned_error):
3200 silently ignore GCONF_ERROR_OVERRIDDEN, because if the system
3201 is "locked down" most apps will probably call gconf_client_set
3204 * gconf/gconf-client.h: fix comment to be accurate about how
3205 overlaps are handled
3207 2001-12-06 Havoc Pennington <hp@pobox.com>
3209 * autogen.sh: fix up check for gettext to do glib-gettext instead
3211 * configure.in: add gtk-doc checks and remove --docs-only
3212 since I don't think --docs-only works and don't see how it could.
3214 * doc/gconf/Makefile.am: make makefile use snazzy canonical
3215 gtk-doc makefile from gtk
3217 * doc/gconf/gconf.sgml: make it reflect current reality a bit
3220 * examples/basic-gconf-app.c: Update the example
3222 * examples/complex-gconf-app.c: Move the old basic-gconf-app.c
3225 * gconf/gconf-listeners.c (gconf_listeners_remove): remove
3226 g_return_if_fail on 0 ID, since that will probably end up
3227 happening from time to time
3229 2001-12-04 Havoc Pennington <hp@redhat.com>
3231 * gconf/gconf-internals.c (open_empty_locked_file): improve error
3233 * gconf/gconftool.c (main): complain about using --config-source
3236 * backends/xml-backend.c (resolve_address): don't try to lock
3237 readonly sources; fixes the case where users install to a prefix
3238 that they can write to, was causing problems for people using
3241 * gconf/gconfd.c (gconf_set_exception): add missing value to case
3242 statement so we don't crash
3244 * examples/basic-gconf-app.c: update comment to say that the
3245 example isn't really right anymore
3247 * gconf/gconftool.c (process_schema_list): make sure we have an
3248 element instead of a text node before we try to process it; kills
3249 a bunch of irritating warnings.
3251 * Makefile.am (SUBDIRS): remove standard-schemas subdir, should
3254 2001-12-04 jacob berkman <jacob@ximian.com>
3256 * gconf/Makefile.am: add an explicit dependency on the built files
3258 2001-12-03 Laszlo Peter <laca@ireland.sun.com>
3260 * gconf/gconf-internals.c: oops, s/ulong_t/gulong/
3262 2001-12-03 Laszlo Peter <laca@ireland.sun.com>
3264 * gconf/gconf-internals.c (get_hostname): fix memory alignment
3267 2001-12-02 Havoc Pennington <hp@pobox.com>
3269 * gconf/gconf-value.h: put casts in the accessor macros, so they
3270 can accept void pointers. Doh.
3272 2001-11-26 Havoc Pennington <hp@redhat.com>
3274 * configure.in: version to 1.1.5
3276 Tue Nov 20 15:37:58 2001 Owen Taylor <otaylor@redhat.com>
3278 * gconf/gconf-client.c: Remove extraneous gobject/* includes.
3280 2001-11-18 Miles Lane <miles@megapathdsl.net>
3282 * gconf/gconf-client.h: replace include of gobject/gobject.h
3283 with glib-object.h, due to a change in gobject/gobject.h
3284 that forces an #error for all direct includes.
3285 This checkin was approved by Havoc.
3287 2001-10-31 Havoc Pennington <hp@pobox.com>
3289 * configure.in: bump version to 1.1.4, and set revision to 1
3291 * doc/gconf/Makefile.am: fix this
3293 * doc/gconf/gconf.types: update
3295 2001-10-31 Havoc Pennington <hp@pobox.com>
3297 * gconf/gconftool.c: add --recursive-unset command line option
3299 2001-10-31 Zbigniew Chyla <cyba@gnome.pl>
3301 * gconf/gconf-internals.c (gconf_activate_server): Plug leak.
3303 2001-10-30 Frederic Crozat <fcrozat@mandrakesoft.com>
3305 * backends/val-encode.c: add missing headers to remove
3308 2001-10-29 jacob berkman <jacob@ximian.com>
3310 * gconf-editor/gconf-editor.c (main): bind to GETTEXT_PACKAGE
3313 * autogen.sh: call glib-gettextize
3315 * configure.in: set the GETTEXT_PACKAGE to be more like the gnome
3318 2001-10-30 Abel Cheung <maddog@linux.org.hk>
3320 * configure.in: When probing for db3, check libdb-3.3, libdb-3.2 and
3321 libdb-3.1 in addition to libdb-3 .
3323 2001-10-16 Ross Golder <ross@golder.org>
3325 * gconf.spec.in: updated installation paths
3327 2001-10-15 Havoc Pennington <hp@redhat.com>
3329 * gconf/gconftool.c (main): don't create config daemon for
3330 --get-default-source
3331 (main): shut down daemon in makefile install mode
3333 2001-10-14 Havoc Pennington <hp@redhat.com>
3335 * configure.in: bump version, increment GCONF_CURRENT
3336 and GCONF_AGE due to API additions
3338 2001-10-13 Jaka Mocnik <jaka@gnu.org>
3340 * configure.in: allow for db3 headers/includes installed in a
3342 * backends/Makefile.am: add BDB_CFLAGS to INCLUDES.
3344 2001-10-12 Havoc Pennington <hp@redhat.com>
3348 * gconf/gconf.c (gconf_engine_set): check UTF-8 validity here,
3349 instead of at the higher levels
3351 * gconf/gconf-value.c (gconf_value_validate): new internal function
3353 2001-10-12 Havoc Pennington <hp@redhat.com>
3357 * tests/testschemas.c (check_schema_storage): add some UTF-8
3359 * tests/testpersistence.c: UTF-8 test
3361 * tests/testgconf.c: add a UTF-8 test
3363 * gconf/gconf.c: UTF-8 checks, and some indentation
3365 * gconf/gconf-schema.c: UTF-8 checks
3367 * gconf/gconf-value.c: add some UTF-8 robustness
3369 2001-10-12 Havoc Pennington <hp@redhat.com>
3371 Merging from stable.
3373 * backends/xml-entry.c (entry_unset_value): don't translate "%s"
3375 * backends/xml-cache.c (cache_sync_foreach): printf string screwup
3377 * backends/xml-backend.c (query_value): fix printf string derived
3379 (query_value): ditto
3381 * configure.in: ensure we find the right bdb headers, if we find
3382 the library, error if not. Reported by Samuel Stringham
3384 * gconf/gconf-internals.c (gconf_double_to_string): use g_snprintf
3385 not plain snprintf for Solaris 2.5.1 friendliness
3387 * doc/gconf/tmpl/gconf-value.sgml: fix docs to mention that pairs
3388 contain only primitive types; pointed out by Gregory Merchan
3390 * configure.in (BDB_CFLAGS): patch from Nils Philippsen to detect
3391 DB 3.1 if available.
3393 2001-10-11 Havoc Pennington <hp@redhat.com>
3395 * tests/testgconf.c (check_utils): add test for the key
3396 escaper/unescaper thingy
3398 * gconf/gconf.c (gconf_escape_key): new function
3399 (gconf_unescape_key): new function
3401 2001-10-10 Havoc Pennington <hp@redhat.com>
3403 * gconf/gconf.c (gconf_valid_key): disallow non-ASCII characters
3406 2001-10-10 Havoc Pennington <hp@redhat.com>
3408 * backends/xml-dir.c (dir_sync): fix to reflect bizarre behavior
3409 of xmlSaveFile() (it tries to unescape the filename as a URI,
3410 resulting in mangling my filename!)
3412 2001-10-04 Havoc Pennington <hp@redhat.com>
3414 * gconf/gconf-internals.c (gconf_release_lock): do wack-ass juju
3415 to avoid .nfs23344534543 files appearing in the lock directory
3416 and causing warnings.
3418 2001-10-04 Havoc Pennington <hp@redhat.com>
3420 * backends/xml-dir.c (dir_fill_cache_from_doc): remove an
3423 2001-10-04 Havoc Pennington <hp@redhat.com>
3425 * gconf/gconf-internals.c (open_empty_locked_file): include
3426 strerror in the error message on lock failure
3428 2001-10-01 Michael Meeks <michael@ximian.com>
3430 * gconf/gconf.h: fix deprecated guard.
3432 * gconf/gconf.c (ctable_remove_by_client_id): remove unused.
3434 2001-09-29 Carlos Perello Marin <carlos@gnome-db.org>
3436 * gconf/gconf.h (GCONF_DISABLE_DEPRECATED): closed a comment.
3438 2001-09-28 Havoc Pennington <hp@redhat.com>
3440 * gconf/gconfd.c (main): fix write_byte_fd to always be initialized
3442 * gconf/gconf-internals.c (gconf_get_current_lock_holder): read
3443 IOR file, not directory it's inside
3445 2001-09-26 Havoc Pennington <hp@redhat.com>
3447 * gconf/gconf.h: mark gconf_init() deprecated
3449 * gconf/Makefile.am (INCLUDES): libxml cflags
3451 * gconf/gconf.c (gconf_init): make this a no-op, instead init on
3456 * gconf.m4.in: patch from Yanko Kaneti to have AM_GCONF_SOURCE
3457 define a GCONF_SCHEMA_FILE_DIR variable for the directory where
3458 schema files should be installed
3460 * gconf/Makefile.am (install-data-local): don't install oafinfo
3462 * configure.in: don't generate oafinfo
3464 * gconf/gconftool.c (main): remove error message about running
3465 gconfd while installing schemas, instead we'll fail to get a lock.
3467 * gconf/gconfd.c (main): redirect stdin/out/err to /dev/null
3468 instead of just closing them, saves ORBit some confusion
3470 * backends/xml-cache.c (cache_clean): change the "items remain in
3471 cache" message to DEBUG level
3473 * gconf/gconf-internals.c (gconf_get_lock_or_current_holder):
3474 rearrange locking to just use fcntl()
3476 * gconf/gconf.c (gconf_engine_connect): fix error message in
3479 * gconf/gconfd.c (gconf_main): reduce exit-after-unused timeout to
3482 * gconf/Makefile.am (INCLUDES): add -DGCONF_BINDIR
3484 * gconf/gconf-internals.c: delete nanosleep junk
3486 2001-09-27 Havoc Pennington <hp@redhat.com>
3488 * backends/Makefile.am (INCLUDES): srcdir != builddir fixage
3490 * configure.in: increment version for release
3491 (ORBIT_IDL): look for orbit-idl-2 using pkg-config
3493 2001-09-17 Havoc Pennington <hp@redhat.com>
3495 * configure.in: look for orbit-idl-2 not orbit-idl,
3496 add option to explicitly enable/disable bdb backend
3498 2001-09-08 Wang Jian <lark@linux.net.cn>
3500 * configure.in(ALL_LINGUAS): Renamed zh_CN.GB2312 to zh_CN.
3502 2001-08-25 Darin Adler <darin@bentspoon.com>
3504 * backends/Makefile.am:
3505 * examples/Makefile.am:
3506 * gconf-editor/Makefile.am:
3507 * tests/Makefile.am:
3508 * wrappers/guile/Makefile.am:
3509 Got rid of extra unneeded -I directives.
3511 * examples/basic-gconf-app.c:
3512 * examples/simple-controller.c:
3513 * examples/simple-view.c:
3514 Changed includes to use the normal <gconf/*> format, because
3515 that is both better for examples, and works fine when building
3516 gconf too, without any special -I trickery.
3518 2001-08-19 Jesus Bravo Alvarez <jba@pobox.com>
3520 * configure.in: Added gl (Galician) to ALL_LINGUAS.
3522 2001-08-17 Maciej Stachowiak <mjs@noisehavoc.org>
3524 * gconf/gconf-internals.c: (gconf_handle_oaf_exception): Handle
3525 rename for ParseFailed exception.
3527 2001-08-15 Havoc Pennington <hp@redhat.com>
3531 * backends/xml-backend.c (x_shutdown): ditto
3532 (resolve_address): ditto
3534 * backends/bdb-backend.c (vtable_bdb_shutdown): ditto
3535 (vtable_bdb_resolve_address): ditto
3537 * gconf/gconf-internals.c (gconf_load_source_path): ditto
3539 * gconf/gconfd.c (gconf_server_load_sources): change to DEBUG
3542 * backends/xml-backend.c (g_module_check_init): change a log
3543 message to DEBUG level
3545 2001-08-14 Michael Meeks <michael@ximian.com>
3547 * configure.in: depend on bonobo-activation >= 0.9.1
3549 * gconf/Makefile.am: Update to install GNOME_Config.server.
3551 * configure.in: update to GNOME_Config.server
3553 * gconf/Makefile.am (-DIID): rename to GNOME_Config_Daemon
3554 to fit with the bonobo namespace guidelines.
3556 * gconf/GNOME_Config.server.in: update & indent.
3558 2001-08-13 Marco Pesenti Gritti <mpeseng@tin.it>
3560 * doc/gconf/gconf.sgml: small explanation about
3561 AM_GCONF_SOURCE_2 macro
3563 2001-08-13 Havoc Pennington <hp@redhat.com>
3567 * gconf/gconf-internals.c (gconf_load_source_path): patch from
3568 Adam Spiers to honor variables in include lines
3570 * gconf/gconf-database.c (notify_listeners_cb):
3571 indentation/whitespace changes
3573 * backends/xml-entry.c (entry_fill_from_node): Only print a
3574 warning if there's no schema name. Avoids spurious warnings
3575 on nodes that only have a schema name.
3577 2001-08-13 Michael Meeks <michael@ximian.com>
3579 * gconf/gconf-internals.c: remove nano_sleep; it's unused.
3581 * configure.in: remove nanosleep check.
3583 2001-08-07 Marco Pesenti Gritti <mpeseng@tin.it>
3585 * configure.in: remove the chmod on gconf-config,
3586 the file has been removed
3587 * gconf.m4.in: rename AM_GCONF_SOURCE to AM_GCONF_SOURCE_2
3588 to not break parallel installs
3590 2001-08-07 Marco Pesenti Gritti <mpeseng@tin.it>
3592 * gconf/gconf.m4.in: remove duplicate macro
3594 2001-08-07 Marco Pesenti Gritti <mpeseng@tin.it>
3596 * gconf/gconf.m4.in: New file. GCONF_SCHEMA_CONFIG_SOURCE macro
3597 * configure.in: add gconf.m4 to AC_OUTPUT
3598 * Makefile.am: add gconf.m4 to EXTRA_DIST and install-data-local
3599 Setup a default gconf source on make install.
3600 * galeon.spec.in: Distribute also the path file and
3601 the directories for the default source.
3602 * gconf/Makefile.am: install the default path as "path" instead
3603 of "path.example". Add GCONF_ETCDIR define.
3604 * gconf/gconftool.c: Add --get-default-source option.
3606 2001-08-03 Martin Baulig <baulig@suse.de>
3608 * gconf/gconfd.oafinfo.in: Renamed -> gconfd.server.in.
3610 * Makefile.am: Install gconfd.server into the correct dir
3611 for bonobo-activation.
3613 2001-08-03 Abel Cheung <maddog@linux.org.hk>
3615 * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
3617 2001-08-02 Havoc Pennington <hp@pobox.com>
3619 * configure.in: version 1.1.1
3621 * autogen.sh: don't search for subdirs to autogen, that's just
3622 annoying if you have a make dist directory laying around
3624 2001-08-01 Michael Meeks <michael@ximian.com>
3626 * port to bonobo-activation from oaf.
3628 2001-07-28 Yanko Kaneti <yaneti@declera.com>
3630 * gconf/gconftool.c (main): s/all-pairs/all-entries/ in the error
3633 2001-07-24 Darin Adler <darin@bentspoon.com>
3637 * acinclude.m4: Set BUILD_INCLUDED_LIBINTL for compatibility
3638 with newer versions of gettext.
3640 2001-07-23 Havoc Pennington <hp@redhat.com>
3644 * gconf/gconfd.c (main): don't warn about failure to create
3647 * gconf/gconf.c (gconf_engine_all_entries): convert empty string
3650 * gconf/gconf-database.c
3651 (impl_ConfigDatabase2_all_entries_with_schema_name): don't give
3652 ORBit any NULL strings in the array, avoids a core dump
3654 * gconf/gconftool.c (list_pairs_in_dir): put a newline after the
3657 2001-07-16 Havoc Pennington <hp@redhat.com>
3661 * gconf/gconfd.c (main): add super-lame hack to
3662 pass currently-running gconfd to oafd if oafd has lamely leaked it
3665 * gconf/gconf-internals.c (gconf_get_lock): fix leak of object
3666 reference belonging to server that held the lock
3667 (gconf_get_lock_or_current_holder): add function to get current
3670 * gconf/GConf.idl: add subclass of ConfigDatabase for some
3671 exciting new hacky functions.
3673 So an extensible IDL interface would probably have simply passed
3674 XML messages. But then what's the point of an IDL interface, if
3675 it's just going to be parse_string() get_string()? Hmm. Cosmic
3678 * gconf/gconf.c (try_to_contact_server): make the error on
3679 OAF-did-not-set-exception really, really verbose, and explicitly
3680 say "do not file a GConf bug report." But with fixed OAF this
3681 shouldn't happen anymore anyhow.
3683 * gconf/gconf-sources.c (gconf_sources_set_value): lengthy verbose
3684 error message about possible causes of lack of a config database.
3685 But my lame-ass hack above should keep this from happening so
3688 2001-07-18 Anders Carlsson <andersca@gnome.org>
3690 * configure.in: Remove gconf-config and gconf.m4 from AC_OUTPUT
3692 2001-07-17 Anders Carlsson <andersca@gnome.org>
3694 * Makefile.am: Remove gconf-config and gconf.m4 from EXTRA_DIST
3695 and do not try to install them.
3697 * gconf.m4.in: Remove this file.
3699 * gconf-config.in: Remove this file.
3701 2001-07-17 Darin Adler <darin@bentspoon.com>
3703 * gconf/gconf.c: (gconf_postinit):
3704 Let CORBA generate the ID instead of providing one ourselves.
3706 2001-07-17 Laszlo Peter <laca@ireland.sun.com>
3708 * gconf/Makefile.am: remove the -Wno-unused flag; not portable.
3710 2001-07-14 Kjartan Maraas <kmaraas@gnome.org>
3712 * configure.in: Added "nn" to ALL_LINGUAS.
3714 2001-07-13 Darin Adler <darin@bentspoon.com>
3716 Fix a bunch of warnings.
3718 * backends/bdb-backend.c: (vtable_bdb_set_value): Add const.
3719 * backends/bdb.c: (bdb_put_value): Add const.
3720 * backends/bdb.h: Add const.
3721 * backends/val-encode.c: (bdb_serialize_value): Add const.
3722 * backends/val-encode.h: Add const.
3723 * backends/xml-backend.c: (set_value): Add const.
3724 * backends/xml-dir.c: (dir_set_value): Add const.
3725 * backends/xml-dir.h: Add const.
3726 * backends/xml-entry.h: Add const.
3727 * gconf/gconf-backend.c: (gconf_get_backend): Add const.
3728 * gconf/gconf-backend.h: Add const.
3729 * gconf/gconf-internals.c: (fill_corba_value_from_gconf_value),
3730 (corba_value_from_gconf_value),
3731 (fill_corba_schema_from_gconf_schema),
3732 (corba_schema_from_gconf_schema): Add const.
3733 * gconf/gconf-internals.h: Add const.
3734 * gconf/gconf-sources.c: (gconf_source_set_value),
3735 (gconf_sources_set_value): Add const.
3736 * gconf/gconf-sources.h: Add const.
3737 * gconf/gconf.c: (gconf_engine_set): Add const.
3738 * gconf/gconf.h: Add const.
3740 * gconf/gconf-value.h:
3741 * gconf/gconf-value.c: (gconf_value_set_list): Remove const,
3742 because const GSList * doesn't do anything useful.
3744 * backends/xml-entry.c: (entry_get_value), (entry_set_value),
3745 (entry_sync_if_needed), (entry_fill_from_node): Got rid of
3746 unused GValue * parameter to entry_sync_if_needed. Also, add
3749 * gconf/gconftool.c: (main): Add cast.
3751 2001-07-07 Peter Williams <peter@beta.newton.cx>
3753 * backends/bdb*: s,uint32_t,guint32,g
3755 2001-07-11 Michael Meeks <michael@ximian.com>
3757 * gconf/Makefile.am (CLEANFILES): add stamps so we can
3760 2001-07-03 Michael Meeks <michael@ximian.com>
3762 * configure.in: add ORBIT_IDL check.
3764 2001-07-02 Carlos Perello Marin <carlos@gnome-db.org>
3766 * gconf/gconf-client.c: /s/g_signal_newc/g_signal_new to reflect
3767 the changes at glib2 module. Now It compiles.
3769 2001-06-29 Laszlo Peter <laca@ireland.sun.com>
3771 * gconf/Makefile.am: Fix the marshaller rules to avoid looping.
3773 2001-06-20 Peter Williams <peterw@ximian.com>
3775 * configure.in (ACLOCAL): Save flags to aclocal -- life
3776 easier when configure.in changes.
3778 2001-06-15 Havoc Pennington <hp@redhat.com>
3780 * configure.in: remove library versioning for
3781 no-longer-existing gconf-gtk lib and Guile wrapper
3783 2001-06-01 Peter Williams <peterw@ximian.com>
3785 * configure.in: Check if DB3 headers are in db3/db.h as well.
3787 * acconfig.h: Add HAVE_DB3_DB_H
3789 * backends/bdb.c: #include config.h to get HAVE_DB3_DB_H
3791 * backends/bdb.h: Include the proper db.h
3793 2001-05-11 Tomas O Connor <tomas.oconnor@ireland.sun.com>
3795 * gconf/gconf-internals.h, gconf/gconf-value.h: move
3796 gconf_value_new_from_string to make it a public API
3798 2001-05-11 Havoc Pennington <hp@redhat.com>
3802 * gconf/gconfd.c (signal_handler): on SIGUSR1, enable/disable
3805 * gconf/gconf-internals.c (gconf_log): use a runtime variable to
3806 decide whether to log debug messages
3808 * gconf/gconf-database.c, gconf/gconfd.c, gconf/gconf-internals.c:
3809 Change some GCL_WARNING to GCL_DEBUG to chill out logging of
3810 fairly normal events
3812 2001-05-09 Havoc Pennington <hp@redhat.com>
3814 * gconf/Makefile.am: remove testgconfclient from build, should
3815 now be made nongraphical and stuck in tests/
3817 * Makefile.am (SUBDIRS): remove "wrappers" from subdirs
3819 * configure.in: remove Guile cruft, fix up pkg-config usage
3821 * acinclude.m4: Use the pkg-config macros, remove gnome-common
3822 dependency. Requires CVS pkg-config, need a pkg-config release.
3823 (Since OAF doesn't build against ORBit1 anyway, I figured why not
3824 check this in too...)
3826 2001-04-28 Murray Cumming <murrayc@usa.net>
3828 * gconf/gconf-client.c, gconf/gconf-client.h,
3829 gconf/gconf-schema.c, gconf/gconf-schema.h,
3830 gconf/gconf-value.c, gconf/gconf-value.h,
3831 gconf/gconf.c, gconf/gconf.h: Use of const with function
3832 args. e.g. gconf_value_copy(const GConfValue* src).
3834 2001-04-17 Michael Meeks <michael@ximian.com>
3836 * gconf/Makefile.am (dist-hook): don't distribute built
3839 Wed Apr 11 08:07:11 2001 George Lebl <jirka@5z.com>
3841 * gconf/gconf.c (gconf_engine_unref): If unreffing the default engine
3842 set the default_engine pointer to NULL
3844 2001-04-02 Federico Mena Quintero <federico@ximian.com>
3846 * acinclude.m4: "sourceforge.net", not "sourceforce.net".
3848 2001-03-24 Anders Carlsson <andersca@gnu.org>
3850 * configure.in (REBUILD): Add gconf-2.0.pc to AC_OUTPUT files.
3852 2001-03-23 Marius Andreiana <mandreiana@yahoo.com>
3854 * configure.in: Added ro (Romanian) to ALL_LINGUAS
3856 2001-03-18 Martin Baulig <baulig@suse.de>
3858 * gconf/gthreadpool.[ch]: Removed.
3859 * gconf/gconf-glib-private.h: Removed.
3860 * gconf/gconf-glib-public.h: Removed.
3862 * gconf/gconf-client.[ch]: Moved here from wrappers/gtk/
3863 and migrated to use GObject.
3865 * gconf/testgconfclient.c: Moved here from wrappers/gtk/.
3867 * gconf/gconf-internals.h
3868 (gconf_CORBA_Object_hash, gconf_CORBA_Object_equal):
3869 New static inline functions.
3871 * gconf/gconfmarshal.list: New file.
3873 * gconf/gconftool.c: Use libxml 2.
3875 * backends/xml-backend.c, backends/xml-cache.h,
3876 backends/xml-dir.c, backends/xml-dir.h,
3877 backends/xml-entry.c, backends/xml-entry.h: Use libxml 2.
3879 * wrappers/gtk/*: Moved to gconf/.
3881 2001-03-18 Martin Baulig <baulig@suse.de>
3883 We're now on the GNOME 2.0 platform.
3885 * configure.in: Set MAJOR_VERSION to 2, use pkg-config to
3886 check for stuff; GTK+ is now optional and only used for
3887 the examples; depend on ORBit2.
3889 * acinclude.m4: Add the contents of
3890 gnome-common/macros2/gnome-pkgconfig.m4 here.
3892 * Makefile.am: Install gconf-2.0.pc.
3894 * gconf-2.0.pc.in: New file.
3896 2001-03-13 Kjartan Maraas <kmaraas@gnome.org>
3898 * backends/xml-entry.c: Merge from branch. Use xmlFree().
3899 * gconf/gconftool.c: Merge from branch. Use xmlFree() and
3900 don't free until after referencing stuff.
3902 2001-03-12 Timur Bakeyev <timur@gnu.org>
3904 * Makefile.am: Made warning printing a bit nicer.
3906 2001-03-06 Havoc Pennington <hp@redhat.com>
3910 * gconf/gconfd.c (gconf_main): change the periodic timeout to 15
3911 minutes, to be a bit more aggressive about cleanup.
3912 (open_append_handle): add a timeout to close the
3913 saved_state filehandle after a short time, to avoid keeping
3915 (gconfd_need_log_cleanup): new internal function used to control
3916 whether the periodic cleanup function needs to save a log file
3918 2001-02-27 Havoc Pennington <hp@redhat.com>
3920 * gconf.spec.in: %define prefix %{_prefix} instead of @prefix@
3922 2001-02-27 Havoc Pennington <hp@redhat.com>
3926 * gconf/gconfd.c (main): Close stdin/stdout/stderr. Also, set the
3927 log handler, so we don't need stdout/stderr to see GLib messages,
3930 * gconf/Makefile.am (INCLUDES): set the log domain
3932 * gconf/gconftool.c (recurse_subdir_list): the list contains full
3933 directory paths to start with, fix from Colm
3935 * gconf/gconfd.c (register_database): bugfix from Colm
3937 * gconf/gconf.c (lookup_engine): fix from Colm to check that we
3938 have an engines hash
3939 (gconf_engine_get_for_address): improve warning message, fix from
3941 (gconf_engine_remove_dir): new function from Colm, this was
3942 implemented on the server side but somehow never exported.
3944 * gconf/gconf-database.c (gconf_database_get_persistent_name): Fix
3945 from Colm to handle the case of empty databases (no sources).
3947 2001-02-05 Havoc Pennington <hp@redhat.com>
3949 File permissions fixes, problem pointed out by Steve Fox.
3951 * backends/xml-dir.c (dir_sync): chmod() the XML file after
3952 xmlSaveFile creates it
3954 * gconf/gconfd.c (main): following Stevens advice for daemons, we
3955 were calling umask(0), change to umask(022). We need a predictable
3956 umask, but a safer one would be good since this is a per-user
3957 daemon not a system daemon.
3959 * backends/dir-utils.c (mode_t_to_mode): make this more portable,
3962 * backends/xml-dir.c (dir_load): We were getting directory
3963 permissions from the %gconf.xml file, instead of from the XML root
3966 2001-01-23 Stanislav Visnovsky <visnovsky@nenya.ms.mff.cuni.cz>
3968 * configure.in: Add 'sk' to ALL_LINGUAS
3970 2001-01-21 Havoc Pennington <hp@pobox.com>
3972 * configure.in: change version to 1.1
3976 * backends/xml-entry.c (schema_subnode_extract_data): don't warn
3977 about <local_schema> with no locale field, because that's normal
3978 for the default case
3979 (schema_node_extract_value): use <local_schema> with no locale
3980 if it exists and we don't find anything better
3982 * tests/testschemas.c (check_schema_use): fix indentation and mem
3985 * gconf/gconftool.c (do_get): print default value from schema
3987 2000-12-19 Rebecca Schulman <rebecka@eazel.com>
3989 * gconf/gconfd.c: (gconf_server_load_sources):
3990 Added a return value to a g_slist_append that would
3991 cause a segfault in some cases.
3993 Fri Dec 01 00:54:33 2000 George Lebl <jirka@5z.com>
3995 * gconf/gconf-locale.c (gconf_split_locale): When inserting "C"
3996 into a list, dup it first to avoid a possible crash later.
3998 2000-11-30 Havoc Pennington <hp@redhat.com>
4000 * gconf/gconf.c (gconf_engine_unset): Fix dereference of NULL GError**
4002 2000-11-20 Havoc Pennington <hp@redhat.com>
4004 * doc/gconf/Makefile.am: Fix "make scan" to actually work, so
4005 you can build the docs
4007 2000-11-11 Havoc Pennington <hp@pobox.com>
4009 * gconf/gconf-value.c (gconf_entry_set_is_writable): Add this
4012 2000-11-05 Havoc Pennington <hp@pobox.com>
4014 * gconf/gconf-glib.c, gconf/gconf-glib-private.h: Remove the
4015 GMarkup and Unicode stuff, turned out to be unnecessary.
4018 2000-11-05 Havoc Pennington <hp@pobox.com>
4020 * gconf/gconfd.c (parse_listener_entry): fix strtoul error
4023 * gconf/gconf-internals.c (gconf_string_to_gulong): Fix error
4026 2000-11-05 Havoc Pennington <hp@pobox.com>
4028 * gconf/gconf-glib.c (g_propagate_error): Sync from GLib,
4029 should fix one very minor memory leak in GConf
4031 2000-10-31 Almer S. Tigelaar <almer1@dds.nl>
4033 * configure.in: Add 'nl' to ALL_LINGUAS
4035 2000-10-26 Havoc Pennington <hp@pobox.com>
4037 * configure.in: Bump version to 0.11
4039 2000-10-25 Havoc Pennington <hp@pobox.com>
4041 * wrappers/gtk/gconf-client.c: remove get_nocopy, since it can't
4042 be implemented since we don't cache everything. Oops.
4044 2000-10-16 Havoc Pennington <hp@pobox.com>
4046 * wrappers/gtk/gconf-client.c
4047 (gconf_client_real_unreturned_error): implement default error
4048 handler that prints to stderr
4049 (gconf_client_key_is_writable): hmm, this function didn't compile
4052 * wrappers/gtk/gconf-client.h: Remove the ParentWindowFunc
4053 concept. Two reasons: a) it was really hard for users to implement
4054 such a thing, and if they did then implementing an error dialog
4055 function was pretty trivial also b) decided to make the default
4056 error handler use fprintf(stderr) since GConfClient is going to
4057 move into the main GConf library and thus not depend on GTK.
4059 So, this is mild API breakage (but hopefully no one was using the
4062 2000-10-10 Christophe Merlet <christophe@merlet.net>
4064 * backends/Makefile.am: Added README.bdb in EXTRA_DIST.
4066 * gconf/gconf-glib.c: Corrected mispelling string.
4068 2000-10-10 Havoc Pennington <hp@pobox.com>
4070 * gconf/gconf-value.c (gconf_value_to_string): fix segfault when
4071 pair contains unset car or cdr
4072 (gconf_value_set_car): allow setting car or cdr of a pair to
4073 NULL. I'm not sure if this is the normal thing in the code
4074 right now, but, hmm.
4076 * gconf/gconf-sources.c (gconf_sources_all_entries): fix
4077 cut-and-paste error resulting in NULL pointer dereference.
4079 2000-10-08 Havoc Pennington <hp@pobox.com>
4081 gconfd should now exit when not in use.
4083 * gconf/gconf-database.c (gconf_database_drop_dead_listeners):
4084 function to drop any listeners with dead clients.
4086 * gconf/gconfd.c (drop_old_databases): before checking
4087 whether the listener count is 0, clean up listeners belonging
4090 * gconf/gconf-listeners.c (gconf_listeners_remove_if): New
4091 function removes listeners matching some predicate
4092 (ltable_remove): fix some indentation
4094 2000-10-08 Havoc Pennington <hp@pobox.com>
4096 * configure.in: version to 0.10
4098 2000-10-06 Havoc Pennington <hp@pobox.com>
4100 * wrappers/gtk/gconf-client.c: indentation/formatting
4102 * gconf/gconfd.c (parse_listener_entry): extra paranoia error
4103 check. Also, make log messages level DEBUG, not WARNING.
4105 2000-10-06 Havoc Pennington <hp@pobox.com>
4107 * configure.in: check for flockfile.
4108 Check for BDB, but don't make it fatal; do an AM_CONDITIONAL and
4109 don't build the BDB backend if it's not found.
4111 * gconf/gconfd.c (main): unregister with OAF after all shutdown is
4113 (signal_handler): do the full, clean shutdown on SIGTERM; should
4114 reduce the damage caused by those pesky killall gconfd scripts ;-)
4115 Try to do the same on FPE and PIPE, though it's not likely to
4116 work, it doesn't hurt to try.
4117 (logfile_read): rewrite the logfile reading code; somewhat more
4120 * gconf/gconf-database.c, gconf/gconfd.c: Make all CORBA
4121 implementation return immediately with an error if we're currently
4122 shutting down. We'd just unregister with OAF, or deactivate our
4123 objects, but then another gconfd would start up before we finish
4124 cleaning up our stuff and introduce a mess of race
4125 conditions. Instead clients will automatically retry lots of times
4126 if they get the IN_SHUTDOWN error. Actually this possibly
4127 shouldn't even happen, since we aren't normally in the main loop
4128 once we start to shut down, I don't think - not sure.
4130 * gconf/gconfd.c (gconf_set_exception): add ConfigInShutdown
4132 * gconf/GConf.idl: add ConfigInShutdown error
4134 * gconf/gconf.c (corba_errno_to_gconf_errno): add ConfigInShutdown
4136 * gconf/gconf-error.h: two error codes had the same integer value.
4137 Also, add GCONF_ERROR_IN_SHUTDOWN
4139 * gconf/gconfd.c (gconfd_in_shutdown): Add a flag
4140 to indicate we're shutting down; all operations will
4141 return an error at that point.
4143 * gconf/gconf.c (gconf_server_broken): treat ConfigInShutdown
4146 2000-10-06 Colm Smyth <colm.smyth@sun.com>
4148 * Committed BerkeleyDB back-end:-
4150 backends/bdb.c backends/bdb.h backends/bdb-backend.c
4151 backends/val-encode.c backends/val-encode.h
4152 backends/dir-utils.c backends/dir-utils.h backends/README.bdb
4154 * Changes to make GConf build with an ISO C compiler:-
4156 configure.in backends/Makefile.am backends/xml-cache.c
4157 gconf/gconf-database.c gconf/gconf-sources.c gconf/gconfd.c
4158 tests/testchangeset.c tests/testencode.c tests/testgconf.c
4159 tests/testlisteners.c tests/testpersistence.c
4163 2000-10-03 Robin * Slomkowski <rslomkow@eazel.com>
4165 * gconf.spec.in:/etc/etc is not a directory
4166 OK I am less foolish now
4168 2000-10-03 Robin * Slomkowski <rslomkow@eazel.com>
4170 * gconf.spec.in: updated the spec file again
4171 if you are interested we are trying to track it
4172 http://tinderbox.eazel.com
4174 2000-10-03 Havoc Pennington <hp@redhat.com>
4176 * gconf/gconfd.c (close_append_handle): set invalid FILE* to
4177 NULL afterward, avoid segfaults.
4179 * Makefile.am: add install-schemas target here which recurses
4180 into standard-schemas and runs install-schemas
4182 * standard-schemas/Makefile.am (install-schemas): Move schema
4183 installation to a special target install-schemas which must be
4184 run manually _after_ make install. This should resolve problems
4185 people are having with RPMs and such. However it means spec files
4186 have to explicitly add a 'make install-schemas'
4188 2000-09-29 Havoc Pennington <hp@pobox.com>
4190 * gconf/gconf.c (drop_all_caches): don't spew warnings here for
4192 (invalidate_cached_values): no spew
4193 (update_listener): remove more spew
4195 2000-09-29 Havoc Pennington <hp@pobox.com>
4197 * gconf/gconf.c (ctable_reinstall): we were overwriting the hash
4198 key before trying to remove the old server ID from the hash, so
4199 the removal failed, leading to an assertion failure later (this
4200 hopefully fixes one of the bugs reported by Ramiro, if not then
4203 2000-09-26 Havoc Pennington <hp@pobox.com>
4205 * gconf/gconf-locale.c (gconf_locale_cache_expire): fix a
4206 static initialization with non-const value
4208 2000-09-25 Havoc Pennington <hp@pobox.com>
4210 Bug fixes and portability issues reported by Colm Smyth
4212 * gconf/gconf-sources.c (gconf_sources_query_value): fix NULL
4215 * s/__FUNCTION__/G_GNUC_FUNCTION/g;
4217 * configure.in: Add check for GCC before using -Wall (can't
4218 believe no one has _ever_ tried building GConf without gcc,
4219 but it appears so...)
4221 * gconf/gconftool.c: use N_ not _ with static strings.
4223 * tests/testschemas.c: Don't include locale.h
4225 * gconf/gconf-internals.h: Remove some of the #defines from
4226 the non-ENABLE_NLS case.
4228 2000-09-24 Havoc Pennington <hp@pobox.com>
4230 * NEWS: Put release notes for 0.9 in here.
4232 2000-09-24 Havoc Pennington <hp@pobox.com>
4234 * gconf/gconfd.c (gconf_main): With debugging turned on, use
4235 obscenely short timeout for periodic cleanups, to ensure bugs
4238 * gconf/gconf-database.c (impl_ConfigDatabase_all_dirs): Set
4239 _release to TRUE for sequences
4240 (impl_ConfigDatabase_all_entries): ditto
4242 * gconf/gconfd.c (half_hour_timeout): exit only if client count is
4243 0 after dropping all dead clients.
4245 * gconf/gconf-database.c (impl_ConfigDatabase_all_dirs): Don't
4246 put memory in the out param if we set an exception
4247 (impl_ConfigDatabase_all_entries): Ditto
4249 * backends/xml-dir.c (dir_all_subdirs): Fix a memory leak
4251 * gconf/gconfd.c: Implement client list logging
4253 * gconf/gconf.c: Add self to the server's client list
4254 whenever we get a new server objref
4256 2000-09-23 Havoc Pennington <hp@pobox.com>
4258 * gconf/gconfd.c: Implement add/remove client methods;
4259 still need to log these to disk, and on restart tell the
4260 logged clients to drop their caches.
4262 * gconf/GConf.idl: Add methods on ConfigServer to maintain
4263 a list of active clients; this allows us to invalidate client
4264 caches on daemon restart.
4266 2000-09-21 Havoc Pennington <hp@pobox.com>
4268 * configure.in: remove intl/Makefile
4270 * Makefile.am: remove intl subdir
4272 2000-09-17 Havoc Pennington <hp@pobox.com>
4274 * gconf/gconf.c: Update to reflect IDL change
4276 * gconf/GConf.idl: Change invalidate_cached_values() to take
4277 multiple keys to invalidate; better efficiency that way
4279 2000-09-17 Havoc Pennington <hp@pobox.com>
4281 * gconf/gconf-database.c: Add new methods on ConfigDatabase
4283 * gconf/gconf.c: Add new methods on ConfigListener, but they
4284 do nothing at the moment
4286 * gconf/GConf.idl: Add some methods to ConfigListener to tell
4287 clients when they need to drop cached values Add batch_lookup()
4288 and batch_change() methods to ConfigDatabase so we can implement
4291 2000-09-16 Havoc Pennington <hp@pobox.com>
4293 * gconf/gconf.c (gconf_engine_key_is_writable): And actually
4294 implement it here. Doh.
4296 * wrappers/gtk/gconf-client.c (gconf_client_key_is_writable): Gee,
4297 forgot to actually implement this function after implementing all
4298 the backend work for it...
4300 * gconf/gconf.c (corba_errno_to_gconf_errno): add
4301 NO_WRITABLE_DATABASE handling here also
4303 * gconf/gconfd.c (gconf_set_exception): handle
4304 NO_WRITABLE_DATABASE error
4306 * gconf/GConf.idl: Add NoWritableDatabase to error type enum
4308 * wrappers/gtk/testgconfclient.c (entry_attached_to): Update
4309 to properly handle writability
4311 * examples/simple-controller.c (main): set entry sensitivity
4314 * examples/basic-gconf-app.c (main): Remove ref/sink and destroy,
4315 just use plain refcounting
4316 (create_config_entry): Set entry sensitivity according to key
4319 * wrappers/gtk/gconf-client.c (gconf_client_finalize): Move all
4320 cleanup to finalize, remove destroy handler
4322 2000-09-16 Havoc Pennington <hp@pobox.com>
4324 * doc/gconf/tmpl/gconf-value.sgml: Update some docs
4326 * wrappers/gtk/gconf-client.c (notify_listeners_callback): Update
4327 to reflect new callback signature for GConfClientNotifyFunc
4329 * gconf/gconf-sources.c (gconf_sources_set_value): Make it an
4330 error to if we try to write a value for a non-writable source.
4331 This is new; it used to silently fail.
4333 * gconf/gconf-database.c (gconf_database_notify_listeners): Add
4336 * gconf/GConf.idl: Add writable flag to notification
4338 * gconf/gconf.h: Update GConfNotifyFunc to have fewer args, and
4339 a GConfEntry is just passed in (since I was going to have
4340 to add an is_writable arg, and passing in a GConfEntry
4341 gives us future extensibility against this sort of thing)
4342 BREAKS USER CODE, many apologies.
4344 * wrappers/gtk/gconf-client.c (gconf_client_get_entry): Update
4345 to reflect GConfEngine changes
4347 * gconf/gconf.c (gconf_engine_all_entries): Get the writability
4349 (gconf_engine_get_full): rename to gconf_value_get_entry
4350 and return an entry; drop the is_default argument.
4352 * gconf/gconf-sources.c (gconf_sources_query_value): Implement
4353 finding out if a value is writable
4354 (gconf_sources_all_entries): Implement setting is_writable
4357 * gconf/gconf-value.c (gconf_entry_new_nocopy): Default to
4358 the entry being writable
4360 * gconf/gconf-database.c: Change to match IDL changes
4362 * gconf/GConf.idl (lookup_with_locale): Add out param for
4364 (all_entries): Add out param for writability
4366 * gconf/gconf-value.h: Add is_writable field to GConfEntry
4367 (gconf_entry_get_is_writable): Add this
4369 * wrappers/gtk/gconf-client.c (gconf_client_key_is_writable): Add
4370 the matching stub here
4372 * gconf/gconf.c (gconf_engine_key_is_writable): Go ahead and add
4373 this function so we can implement it later, but it always returns
4376 * gconf/gconf-changeset.c (gconf_change_set_set_user_data,
4377 gconf_change_set_get_user_data): Add user data for language
4380 * gconf/gconf.c (gconf_engine_set_user_data,
4381 gconf_engine_get_user_data): Add user data for language
4384 2000-09-15 Havoc Pennington <hp@redhat.com>
4386 * s/gconf_concat_key_and_dir/gconf_concat_dir_and_key/g
4388 2000-09-14 Havoc Pennington <hp@pobox.com>
4390 * gconf/gconf.c (gconf_engine_all_dirs): Update to
4391 return fully qualified name in GConfEntry
4392 (gconf_engine_all_entries): missed the local case
4393 earlier when adapting it to use fully-qualified name
4395 * acinclude.m4: Add never-use-included-gettext macro
4397 * configure.in: Bump version to 0.9
4399 2000-09-14 Darin Adler <darin@eazel.com>
4401 * backends/xml-dir.c: (dir_load): Fixed code that set up file mode
4402 to always be 0600 to instead inherit from parent directory as
4405 * gconf/gconf-sources.c: (gconf_sources_new_from_addresses):
4406 Removed unused variable.
4407 * tests/.cvsignore: Added some generated files.
4409 2000-09-13 Havoc Pennington <hp@redhat.com>
4413 s/gconf_meta_info_schema/gconf_meta_info_get_schema/g;
4414 s/gconf_meta_info_mod_user/gconf_meta_info_get_mod_user/g;
4415 s/gconf_meta_info_mod_time/gconf_meta_info_mod_time/g;
4417 s/gconf_entry_key/gconf_entry_get_key/g;
4418 s/gconf_entry_value/gconf_entry_get_value/g;
4419 s/gconf_entry_schema_name/gconf_entry_get_schema_name/g;
4420 s/gconf_entry_is_default/gconf_entry_get_is_default/g;
4422 s/gconf_value_string/gconf_value_get_string/g;
4423 s/gconf_value_int/gconf_value_get_int/g;
4424 s/gconf_value_float/gconf_value_get_float/g;
4425 s/gconf_value_list_type/gconf_value_get_list_type/g;
4426 s/gconf_value_list/gconf_value_get_list/g;
4427 s/gconf_value_car/gconf_value_get_car/g;
4428 s/gconf_value_cdr/gconf_value_get_cdr/g;
4429 s/gconf_value_bool/gconf_value_get_bool/g;
4430 s/gconf_value_schema/gconf_value_get_schema/g;
4432 s/gconf_schema_type/gconf_schema_get_type/g;
4433 s/gconf_schema_list_type/gconf_schema_get_list_type/g;
4434 s/gconf_schema_car_type/gconf_schema_get_car_type/g;
4435 s/gconf_schema_cdr_type/gconf_schema_get_cdr_type/g;
4436 s/gconf_schema_locale/gconf_schema_get_locale/g;
4437 s/gconf_schema_short_desc/gconf_schema_get_short_desc/g;
4438 s/gconf_schema_long_desc/gconf_schema_get_long_desc/g;
4439 s/gconf_schema_owner/gconf_schema_get_owner/g;
4440 s/gconf_schema_default_value/gconf_schema_get_default_value/g;
4442 2000-09-13 Havoc Pennington <hp@redhat.com>
4444 * gconf/gconf.c (gconf_engine_all_entries): Put full key in
4445 GConfEntry (but we only get the relative key over the
4448 * wrappers/gtk/gconf-client.c (cache_pairs_in_dir): Change to
4449 reflect fact that GConfEntry now contains full key
4451 * gconf/gconftool.c (list_pairs_in_dir): Change to reflect full
4454 * doc/gconf/tmpl/gconf-value.sgml: updated GConfEntry docs on this
4457 2000-09-11 Havoc Pennington <hp@redhat.com>
4459 * Actually use gettext. Involves checking in configure.in, linking
4460 to it in Makefile.am, making _() do the right thing.
4462 I have gettext in libc instead of -lintl though, so I'm not going
4463 to see Makefile bugs - maybe someone can check on it.
4465 2000-09-10 Havoc Pennington <hp@pobox.com>
4467 * gconf/gconf-value.c (gconf_entry_new): New function
4468 (gconf_entry_set_value): New function
4470 2000-09-10 Havoc Pennington <hp@pobox.com>
4472 * Another rename fest:
4474 #!/usr/bin/perl -pi.bak
4476 ## note that this regexp could affect non-GConf stuff
4477 s/writeable/writable/g;
4479 s/gconf_meta_info_destroy/gconf_meta_info_free/g;
4480 s/gconf_database_destroy/gconf_database_free/g;
4481 s/gconf_source_destroy/gconf_source_free/g;
4482 s/gconf_sources_destroy/gconf_sources_free/g;
4483 s/gconf_locale_cache_destroy/gconf_locale_cache_free/g;
4485 2000-09-10 Havoc Pennington <hp@pobox.com>
4487 * gconf/gconf-value.c (gconf_value_new): don't use
4488 GCONF_INTERNAL_VALUE_TYPE_VALID
4490 * gconf/gconf-internals.h, gconf/gconf-error.h:
4493 (gconf_compose_errors):
4494 Move these to gconf-internals.h, now they aren't needed due
4497 * gconf/gconf.c: Get rid of GConfEnginePrivate, just define struct
4498 _GConfEngine in the private .c file, like a sane person.
4500 * gconf/gconf-value.h: remove GCONF_INTERNAL_VALUE_TYPE_VALID
4502 * gconf/gconf.h: #ifdef the GNOME module system and popt stuff for
4503 GNOME 1.4. This stuff is tied to GNOME 2.0 and still unstable in
4504 that respect; should not be used before GNOME 2.0
4505 (gconf_get_string): forgot to rename this earlier
4507 2000-09-09 Havoc Pennington <hp@pobox.com>
4509 * gconf/gconfd.c (half_hour_timeout): Convert one_hour_timeout to
4510 half_hour_timeout() to more agressively prune resources. In the
4511 half hour timeout, if we have no connected listeners on any
4512 database, shut down gconfd. (We might want to make the timeout
4513 length configurable; and for laptops people might not want any
4514 timeouts at all, since it will wake up their laptop.)
4515 (fast_cleanup): Remove comment about getting incoming connections
4516 after shutting things down; this is no longer a problem because
4517 we deactivate databases in the POA
4519 2000-09-09 Havoc Pennington <hp@pobox.com>
4521 * gconf/Makefile.am (libgconf_1_la_SOURCES): Move gconf-backend.h
4522 here, I don't see why it was in the public headers
4525 Throughout, rename a bunch of stuff:
4527 #!/usr/bin/perl -pi.bak
4529 s/gconf_notify_add/gconf_engine_notify_add/g;
4530 s/gconf_notify_remove/gconf_engine_notify_remove/g;
4531 s/gconf_get_without_default/gconf_engine_get_without_default/g;
4532 s/gconf_get_full/gconf_engine_get_full/g;
4533 s/gconf_get_with_locale/gconf_engine_get_with_locale/g;
4534 s/gconf_get_default_from_schema/gconf_engine_get_default_from_schema/g;
4535 s/gconf_unset/gconf_engine_unset/g;
4536 s/gconf_associate_schema/gconf_engine_associate_schema/g;
4537 s/gconf_all_entries/gconf_engine_all_entries/g;
4538 s/gconf_all_dirs/gconf_engine_all_dirs/g;
4539 s/gconf_suggest_sync/gconf_engine_suggest_sync/g;
4540 s/gconf_dir_exists/gconf_engine_dir_exists/g;
4541 s/gconf_get_float/gconf_engine_get_float/g;
4542 s/gconf_get_int/gconf_engine_get_int/g;
4543 s/gconf_get_bool/gconf_engine_get_bool/g;
4544 s/gconf_get_schema/gconf_engine_get_schema/g;
4545 s/gconf_get_list/gconf_engine_get_list/g;
4546 s/gconf_get_pair/gconf_engine_get_pair/g;
4547 s/gconf_set_float/gconf_engine_set_float/g;
4548 s/gconf_set_int/gconf_engine_set_int/g;
4549 s/gconf_set_string/gconf_engine_set_string/g;
4550 s/gconf_set_bool/gconf_engine_set_bool/g;
4551 s/gconf_set_schema/gconf_engine_set_schema/g;
4552 s/gconf_set_list/gconf_engine_set_list/g;
4553 s/gconf_set_pair/gconf_engine_set_pair/g;
4555 s/gconf_commit_change_set/gconf_engine_commit_change_set/g;
4556 s/gconf_create_reverse_change_set/gconf_engine_reverse_change_set/g;
4557 s/gconf_create_change_set_from_currentv/gconf_engine_change_set_from_currentv/g;
4558 s/gconf_create_change_set_from_current/gconf_engine_change_set_from_current/g;
4560 s/gconf_schema_destroy/gconf_schema_free/g;
4561 s/gconf_value_destroy/gconf_value_free/g;
4562 s/gconf_listeners_destroy/gconf_listeners_free/g;
4563 s/gconf_entry_destroy/gconf_entry_free/g;
4565 s/gconf_client_create_change_set_from_current/gconf_client_change_set_from_current/g;
4566 s/gconf_client_create_change_set_from_currentv/gconf_client_change_set_from_currentv/g;
4567 s/gconf_client_create_reverse_change_set/gconf_client_reverse_change_set/g;
4569 ## These require some care, since they can be the prefix for unrelated stuff.
4570 s/gconf_get /gconf_engine_get /g;
4571 s/gconf_set /gconf_engine_set /g;
4573 s/gconf_get\(/gconf_engine_get (/g;
4574 s/gconf_set\(/gconf_engine_set (/g;
4577 2000-09-09 Havoc Pennington <hp@pobox.com>
4579 * gconf/gconf-database.c (gconf_database_add_listener)
4580 (gconf_database_remove_listener): immediately log the addition
4581 or removal to the saved state file, which is now in a streaming
4583 (gconf_database_get_persistent_name): abstraction for getting
4584 the address of the database, of "def" if it's the default one
4585 (gconf_database_log_listeners_to_string): replaces conversion
4586 from database to markup node; no longer using GMarkup here
4588 * gconf/gconf-listeners.c (gconf_listeners_get_data):
4589 new function to get listener data for a connection ID
4591 * gconf/gconfd.c (one_hour_timeout): save the logfile in the
4592 timeout, to compress it since we have just been appending over the
4594 (logfile_read, logfile_save): rewrite to use new format, not the
4597 * gconf/gconf-internals.c (gconf_object_to_string): Add
4600 2000-09-04 Havoc Pennington <hp@pobox.com>
4602 * doc/gconf/Makefile.am (LDFLAGS): libs have been renamed
4604 2000-08-31 Havoc Pennington <hp@redhat.com>
4606 * Massive rename from GConfError to GError
4608 * gconf/gconf-error.h, gconf/gconf-error.c: Remove
4609 redundant-with-GError stuff; add GCONF_ERROR domain
4612 2000-08-30 Havoc Pennington <hp@redhat.com>
4614 * gconf/gconfd.c (restore_listener): use gconf_string_to_gulong
4615 instead of atoi for reading a ulong out of the log file
4617 * gconf/gconf.c (gconf_engine_get_default): assign to the
4618 default_engine variable, so we don't keep creating new default
4621 * gconf/gconf-listeners.c (ltable_next_cnxn): Start "uniqueness
4622 bits" at a different location depending on pid
4624 2000-08-30 Havoc Pennington <hp@redhat.com>
4626 * gconf/gconf.c: Change client to new system (use object
4627 references to ConfigDatabase instead of the integer context ID).
4629 * gconf/gconf-backend.c: Fix path to uninstalled modules, and
4630 put the whole uninstalled modules thing in GCONF_ENABLE_DEBUG
4632 * gconf/gconf-database.c: add some missing includes, and fix
4635 * gconf/gconfd.c: CORBA_Object_duplicate() the ConfigDatabase
4636 objrefs before passing them back out to ORBit. Remove
4637 some bogus assertions.
4639 * TODO: Updates, added notes from Colm
4641 2000-08-30 Havoc Pennington <hp@pobox.com>
4643 * gconf/gconfd.c, gconf/gconf-database.h, gconf/gconf-database.c,
4644 gconf/gconfd.h: Completed the server-side implementation of
4645 the new system where a ConfigServer_Context becomes
4646 a ConfigDatabase object. Client side doesn't even compile
4647 yet. Will get it compiling in the morning.
4649 2000-08-29 Havoc Pennington <hp@redhat.com>
4651 * gconf/gconfd.c: Add logfile load/save; not really working
4654 * gconf/gconf.c: Remove reinstall-listeners stuff and implement
4655 update_listeners() from the server. Most of this is about to get
4656 removed again when I fix context ID's to be object references
4659 * gconf/gconf-listeners.c: #include <string.h>,
4660 store full key name on tree nodes, add connection ID to
4663 * gconf/GConf.idl: Add update_listener method on ConfigListener,
4664 so the daemon can tell a client that a listener's ID has changed
4666 * gconf/gconf-glib-public.h,
4667 gconf/gconf-glib-private.h,
4668 gconf/gconf-glib.c: Put in gmarkup.[hc], gunicode stuff,
4669 and gerror.[hc] from GLib 2.0. The Unicode char tables are
4670 causing big bloat; may be able to get rid of them
4671 before GNOME 1.4 if we are lucky.
4673 2000-08-27 Havoc Pennington <hp@pobox.com>
4675 * gconf/gconf-glib-public.h,
4676 gconf/gconf-glib-private.h,
4677 gconf/gconf-glib.c: Place to put cut-and-paste code from
4680 * gconf/gconf.c (notify): Only print warnings on bogus notifies
4681 if debugging is enabled; without debugging, silently ignore
4682 the notifies, it just means gconfd got confused.
4684 2000-08-26 Havoc Pennington <hp@pobox.com>
4686 * gconf/gconf-listeners.c (gconf_listeners_foreach): Add a foreach
4687 function, will use that to dump the daemon's listener table to
4690 2000-08-26 Havoc Pennington <hp@pobox.com>
4692 * TODO: Created a TODO file
4694 2000-08-09 Havoc Pennington <hp@pobox.com>
4698 * fixes from Ralph Loader for DESTDIR support (hopefully
4701 * gconf.spec: fix description (the G is just a G, doesn't stand
4704 2000-08-09 Robin * Slomkowski <rslomkow@eazel.com>
4706 * gconf.spec.in: made it so the specfile worked for rpm builds
4708 2000-08-07 Robin * Slomkowski <rslomkow@eazel.com>
4710 * gconf/Makefile.am: use top_build instead of build
4711 and some beautification.
4713 Wed Aug 02 18:11:37 2000 George Lebl <jirka@5z.com>
4715 * backends/xml-entry.c (node_set_schema_value) (node_unset_value)
4716 (schema_node_extract_value): Set the list_type and car_type and
4717 cdr_type from the schema. Unset these on clear. Also get these
4720 * gconf/GConf.idl: Add value_list_type, value_car_type,
4721 value_cdr_type to the ConfigSchema struct
4723 * gconf/gconf-internals.c (fill_corba_schema_from_gconf_schema)
4724 (gconf_schema_from_corba_schema) (corba_type_from_gconf_type)
4725 (gconf_type_from_corba_type) (gconf_string_to_double)
4726 (gconf_double_to_string) (gconf_unquote_string_inplace)
4727 (gconf_value_decode) (gconf_value_encode): When passing schema
4728 to/from corba, pass the list_type and car/cdr_type fields as well.
4729 When converting to/from doubles guard the printf/scanf with
4730 setlocale(LC_NUMERIC, "C"). When encoding/decoding the lists
4731 encode their type, for schemas encode/decode the list/car/cdr_type
4733 * gconf/gconf-internals.h: For gconf_value_new_list_from_string
4734 and gconf_value_new_pair_from_string add an GConfError field
4736 * gconf/gconf-schema.[ch] (gconf_schema_new) (gconf_schema_copy):
4737 Add the list/car/cdr_type fields to the schema structure and
4738 support it when creating and copying. Also add accessors for
4741 * gconf/gconf-value.c (escape_string)
4742 (gconf_value_new_list_from_string)
4743 (gconf_value_new_pair_from_string)
4744 (gconf_value_to_string): Implement the list and pair_from_string
4745 functions. In to_string escape the characters that would cause
4748 * gconf/gconf.c (gconf_unique_key): use GPOINTER_TO_UINT to
4749 avoid warning on alpha
4751 * gconf/gconftool.c (do_get) (do_set) (do_set_schema)
4752 (fill_default_from_string) (extract_global_info)
4753 (process_locale_info) (process_schema): Add support for
4754 setting lists and pairs by supporting the list/car/cdr_type.
4755 Add these to setting schemas as well. Also add support for
4756 these in reading/setting schemas from .schema files and support
4757 defaults of lists/pairs using this information.
4759 2000-07-27 Havoc Pennington <hp@redhat.com>
4761 * backends/Makefile.am (backenddir): backenddir is
4762 pkglibdir/MAJOR_VERSION, not plain VERSION
4764 * configure.in: Bump to 0.7
4766 Wed Jul 26 12:40:45 2000 George Lebl <jirka@5z.com>
4768 * gconf/gconf.c (gconf_key_is_below): Make sure that the segment
4769 above is a complete directory and not just partial directory.
4770 so that /foo is not taken as above /foobar/blah
4772 Tue Jul 25 23:48:24 2000 George Lebl <jirka@5z.com>
4774 * wrappers/gtk/gconf-client.c: || doesn't mean && :). It would
4775 consider as an above directory every directory that had a notify_id
4777 2000-07-25 James Henstridge <james@daa.com.au>
4779 * Makefile.am, gconf/Makefile.am: make relative symlinks rather than
4780 absolute path symlinks. Again to help packagers.
4782 * configure.in (GCONF_CONFIG_SOURCE): don't use
4783 EXPANDED_SYSCONFDIR hack. Instead just escape the dollar sign in
4784 ${sysconfdir}. This fixes build root installs used when building
4787 Mon Jul 24 16:39:01 2000 George Lebl <jirka@5z.com>
4789 * wrappers/gtk/gconf-client.[ch]: Allow adding overlapping
4790 subdirectories. What happens is that the real gconf notify
4791 is not added for subdirectories. When directories are added
4792 or removed the hash is traversed and fixed up. This is
4793 done in a simple and incredibly inefficent manner and needs
4794 to be fixed. Also this change adds an "err" argument to
4795 the _remove_dir call as errors can now happen. Also
4796 fix a minor warning by casting.
4798 * wrappers/gtk/testgconfclient.c: Add some testing of overlapping
4799 directories. Add buttons to add/remove the main directory and
4800 the subdirectory. This way you can see if things get proper
4803 2000-07-24 Yukihiro Nakai <nakai@gnome.gr.jp>
4805 * configure.in: Add Japanese (ja)
4807 2000-07-21 Robin * Slomkowski <rslomkow@eazel.com>
4809 * gconf.spec.in: just fixed up some filename stuff
4811 2000-07-14 Havoc Pennington <hp@pobox.com>
4813 * gconf/gconf-sources.c (gconf_sources_query_value): Fix memleak
4814 of schema_name in case where we return a value
4815 (hash_lookup_defaults_func): Fix bug where we returned the schema
4816 instead of the default value stored in the schema, when returning
4817 default values for a directory listing, which GConfClient did in
4818 order to preload its cache. (Upshot: GConfClient with preloading
4819 was broken if you had schemas.)
4821 2000-07-13 Havoc Pennington <hp@pobox.com>
4823 * gconf/gconfd.c (shutdown_contexts): fix cheesy race condition
4824 (context_list may not exist at this point)
4826 2000-07-12 Havoc Pennington <hp@pobox.com>
4828 * gconf.spec.in: Change spec file to reflect my fooling with
4831 * configure.in: Some files converted to .in files, so we can
4834 * gconf-config.in: output versioned names for libs and includes
4836 * gconf/Makefile.am: version all installed files
4838 * wrappers/gtk/Makefile.am: put version in the name of
4841 * wrappers/gtk/testgconfclient.c (main): remove ref/sink to
4842 reflect change to GConfClient
4844 2000-07-13 Havoc Pennington <hp@pobox.com>
4846 * backends/xml-entry.c (schema_node_extract_value): fix a
4849 2000-07-12 Havoc Pennington <hp@pobox.com>
4851 * configure.in: Bump library versions, bump to 0.6
4853 * gconf/gconf.c (gconf_engine_get_local): Rename from
4854 gconf_engine_new_local
4855 (gconf_engine_get_default): rename from gconf_engine_new
4856 (gconf_engine_get_for_address): rename from
4857 gconf_engine_new_from_address
4859 * wrappers/gtk/gconf-client.c (gconf_client_get_default): rename
4860 from gconf_client_new. Always sink the client, so we are strictly
4861 refcounted, no floating state (for future GObject compatibility)
4862 (gconf_client_get_for_engine): rename from
4863 gconf_client_new_with_engine
4865 2000-07-11 Havoc Pennington <hp@redhat.com>
4867 * Makefile.am: spew messages about needing to create
4868 prefix/etc/gconf/path, should make things easier for users.
4870 2000-07-05 Eskil Heyn Olsen <eskil@eazel.com>
4873 adds output of oaf-config, since gconf uses oaf.
4875 2000-07-05 Eskikl Heyn Olsen <eskil@eazel.com>
4880 2000-06-22 Dan Winship <danw@helixcode.com>
4882 * wrappers/gtk/gconf-client.c (gconf_client_set_pair): Pass both
4883 car and cdr to gconf_set_pair rather than passing car twice. Oops.
4885 2000-06-12 Eskil Heyn Olsen <eskil@eazel.com>
4887 * gconf.spec.in: Removed the .a libs from the base package, but
4888 added them to -devel.
4890 2000-06-11 Eskil Heyn Olsen <eskil@eazel.com>
4892 * gconf.spec.in: Req oaf >= 0.3.0
4894 2000-06-11 Eskil Heyn Olsen <eskil@eazel.com>
4896 * gconf.spec.in: Added a .spec file.
4897 * configure.in: Generate gconf.spec.
4898 * Makefile.am: Added gconf.spec.in and gconf.spec to the
4901 2000-06-07 Pavel Cisler <pavel@eazel.com>
4903 * wrappers/gtk/gconf-client.c: (gconf_client_get_string):
4904 Fix a storage leak -- a g_strdup and an string ownership
4905 swapping optimization were working against each other.
4906 Removed the g_strdup that is not needed.
4908 2000-06-04 Mathieu Lacage <mathieu@gnome.org>
4910 * gconf-config.in: add gtk-config --cflags and --libs
4911 output to the gconf-gtk --cflags and --libs output.
4913 2000-06-01 Havoc Pennington <hp@pobox.com>
4915 * gconf/gconf.c (lookup_engine): check whether the hash is NULL
4916 before looking up the engine.
4918 2000-06-01 Havoc Pennington <hp@pobox.com>
4920 * gconf/gconf.c (gconf_engine_new): If there's an existing engine
4921 for a given context, return that engine instead of creating a new
4923 (gconf_engine_new_from_address): ditto
4925 * wrappers/gtk/gconf-client.c (gconf_client_finalize): remove
4926 client from client registration table
4927 (gconf_client_new): register newly-created client in hash from
4928 engines to clients; return an existing client if there's already
4929 a client for the default engine
4930 (gconf_client_new_with_engine): register newly-created client,
4931 and try to return existing client.
4933 2000-05-07 Havoc Pennington <hp@pobox.com>
4935 * gconf/gconf-listeners.c: Move struct _GConfListeners
4936 into the .c file, eventually need to simply get rid of this.
4938 2000-04-24 Fatih Demir <kabalak@gmx.net>
4940 * configure.in : Added tr to ALL_LINGUAS .
4942 2000-04-19 Pablo Saratxaga <pablo@mandrakesoft.com>
4944 * configure.in (ALL_LINGUAS): Added Catalan language
4946 2000-04-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4948 * gconf/gconftool.c (main): Don't g_free the result of g_getenv ().
4950 Tue Apr 18 01:37:51 2000 George Lebl <jirka@5z.com>
4952 * gconf/gconf.c: make the default path sane by adding the flag
4953 field with readwrite
4955 * gconf/gconf.path: add readwrite flag field to make the path legal
4957 2000-03-30 Matthias Warkus <mawa@iname.com>
4959 * configure.in (ALL_LINGUAS): Added German translation.
4961 2000-03-13 Alastair McKinstry <mckinstry@computer.org>
4963 * configure.in (ALL_LINGUAS): Added Irish translation.
4965 2000-03-09 Havoc Pennington <hp@redhat.com>
4967 * configure.in (absolute_top_srcdir): don't do makefile for Guile
4970 * Makefile.am: create DIST_SUBDIRS with tests directory
4972 2000-03-09 Elliot Lee <sopwith@redhat.com>
4973 * gconf/gconf-internals.c: Don't syslog things.
4974 * gconf/examples/Makefile.am: Fix for builddir != srcdir.
4976 2000-03-08 Havoc Pennington <hp@redhat.com>
4978 * gconf/gconf.c (gconf_init): exit on error.
4980 * examples/simple-controller.c (main): fix gconf_init() error
4982 * examples/simple-view.c (main): fix gconf_init() error
4984 2000-03-06 Havoc Pennington <hp@redhat.com>
4986 * doc/intro-article.sgml: Add the examples
4988 * examples/simple-view.c: Change include to work before
4991 * examples/simple-controller.c: ditto
4993 2000-02-29 Havoc Pennington <hp@redhat.com>
4995 * configure.in: Add goofy "--enable-docs" option to bypass all
4996 library checks, we just want to generate sufficient makefile
4997 for the doc-building targets to run on developer.gnome.org
4999 2000-02-26 Havoc Pennington <hp@pobox.com>
5001 * examples/Makefile.am: Add new examples
5002 * examples/simple-view.c, examples/simple-controller.c:
5003 Two simple new examples
5005 2000-02-23 Havoc Pennington <hp@redhat.com>
5007 * configure.in: Bump version and libtool versions,
5008 and try to fix the prefix mess. Update required OAF version.
5010 * doc/gconf/Makefile.am: srcdir != builddir fix
5012 * standard-schemas/Makefile.am: add schemas to EXTRA_DIST
5014 2000-02-22 Elliot Lee <sopwith@redhat.com>
5016 * tests/Makefile.am: srcdir != builddir fix.
5017 * wrappers/gtk/Makefile.am: Add libgconf-gtk.la to testgconfclient
5018 deps so that 'make -j' builds will work correctly.
5020 2000-02-19 Havoc Pennington <hp@pobox.com>
5022 * gconf/gconf.c (try_to_contact_server): Make sure we always set
5025 2000-02-15 Havoc Pennington <hp@redhat.com>
5027 * gconf/gconf-changeset.c (gconf_change_set_set): apply patch from
5028 Rusty Conover <rconover@zootweb.com> fixing an infinite recursion
5031 * gconf/gconfd.c (fast_cleanup): Don't bother to unregister with
5034 2000-02-01 Havoc Pennington <hp@redhat.com>
5036 * configure.in (GCONF_CONFIG_SOURCE): update default schema
5038 (XML_LIBS): add better check that we actually ran xml-config
5041 * gconf/gconf-backend.c (gconf_backend_resolve_address): Honor the
5042 "readonly" flag in address names
5044 * gconf/gconf-sources.c (SOURCE_WRITEABLE): convert to a function,
5047 * gconf/gconf-sources.h: add GCONF_SOURCE_NEVER_WRITEABLE flag
5049 * tests/testaddress.c: new test to verify the functions that break
5050 up a configuration source address
5052 * gconf/gconf-backend.c (gconf_address_flags): function to extract
5053 configuration source flags
5055 * doc/gconf/gconf.sgml: note new configuration source URL format
5057 * gconf/gconf.c: Add space, tab, carriage return, newline to the
5058 invalid characters in a gconf key
5060 2000-01-31 Havoc Pennington <hp@redhat.com>
5062 * wrappers/gtk/gconf-client.c (check_type): include name of the
5063 key with the wrong type in the error message
5065 2000-01-31 Havoc Pennington <hp@redhat.com>
5067 * wrappers/gtk/gconf-client.c
5068 (gconf_client_real_unreturned_error): only handle the error if the
5069 mode is GCONF_CLIENT_HANDLE_UNRETURNED
5070 (gconf_client_real_error): only handle if GCONF_CLIENT_HANDLE_ALL
5071 (gconf_client_init): change default error handling to
5072 GCONF_CLIENT_HANDLE_UNRETURNED
5074 * wrappers/gtk/gconf-client.h: don't pass error handling mode to
5075 the error handler function
5077 2000-01-28 Havoc Pennington <hp@redhat.com>
5079 * wrappers/gtk/gconf-client.c
5080 (gconf_client_set_global_default_error_handler): New function so
5081 gnome-libs can install a Gnomized error dialog
5083 2000-01-27 Havoc Pennington <hp@pobox.com>
5085 * wrappers/gtk/gconf-client.c (check_overlap): fix the no-debug
5088 2000-01-24 Havoc Pennington <hp@redhat.com>
5090 * backends/xml-backend.c (resolve_address): base mode for creating
5091 files and directories on the permissions of the root XML directory
5093 * gconf/gconf.h: Clean up indentation
5095 2000-01-27 Elliot Lee <sopwith@redhat.com>
5096 * gconf/Makefile.am, standard-schemas/Makefile.am: Fix builddir != srcdir
5098 2000-01-24 Havoc Pennington <hp@redhat.com>
5100 * gconf/gconf-sources.c (gconf_sources_new_from_addresses):
5101 never return errors, just log them.
5103 * gconf/gconf-backend.c (gconf_get_backend): fix mem leak (free
5104 "name" if we don't create a new backend to use it in)
5106 * gconf/gconf-internals.c (gconf_get_lock): fix mem leak
5108 * backends/xml-entry.c (schema_node_extract_value): fix a mem leak
5110 * gconf/gconfd.c (main): keep a pointer to the object ID returned
5111 from PortableServer_POA_activate_object()
5113 * backends/xml-backend.c (resolve_address): fix a mem leak on
5116 2000-01-24 Havoc Pennington <hp@redhat.com>
5118 * gconf/gconf-internals.c (gconf_get_lock): Use a long enough
5119 buffer to read in the IOR
5121 2000-01-24 Havoc Pennington <hp@redhat.com>
5123 * gconf/gconftool.c (do_load_schema_file): Apply patch from Mirko,
5124 properly locates the root node instead of assuming it is the only
5125 node at the toplevel (handles comments, etc).
5126 (process_schema): Report error if a schema has no <locale>
5129 2000-01-23 Havoc Pennington <hp@pobox.com>
5131 * backends/xml-entry.c (node_set_value): Store strings in a
5132 sub-node and use xmlEncodeEntitiesReentrant() to encode it
5133 (node_extract_value): Extract string from the subnode
5135 2000-01-23 Havoc Pennington <hp@pobox.com>
5137 * doc/gconf/gconf.sgml: Add schema file DTD from Mirko
5139 * backends/xml-dir.c (dir_sync): pass the XML filename in to
5141 (dir_load): This was broken; bug reported by Mirko Streckenbach.
5142 The Dir object was created even if %gconf.xml file didn't exist,
5143 so we didn't get around to actually creating %gconf.xml
5144 (create_fs_dir): Make %gconf.xml the thing this function is
5145 primarily creating, with the directory containing it as a side
5148 * gconf/Makefile.am (install-data-local): Install default path to
5149 path.example, so we don't override someone's existing setup.
5151 * gconf/tests/testdirlist.c: test program that detects dir listing
5154 2000-01-22 Havoc Pennington <hp@pobox.com>
5156 * backends/xml-dir.c (dir_all_subdirs): If we can't open the
5157 directory it's not an error, just return NULL.
5159 2000-01-21 Havoc Pennington <hp@redhat.com>
5161 * backends/xml-cache.c (cache_clean_foreach): remove everything
5162 older than or the same age as the older_than time value (i.e.
5163 put >= instead of >)
5164 (cache_destroy_foreach): debug check to be sure we aren't
5165 destroying unsynced directories
5167 * gconf/gconfd.c (context_synchronous_sync): remove sync
5168 timeout/idle handlers when we do a synchronous sync
5170 2000-01-21 Havoc Pennington <hp@pobox.com>
5172 * gconf/gconf-value.c (gconf_value_new_from_string): use new
5174 (gconf_value_to_string): use new conversion
5176 * gconf/gconf-internals.c (gconf_double_to_string)
5177 (gconf_string_to_double): new functions to go from string
5178 to double, we had precision problems with this and maybe
5179 still do, these functions encapsulate it. For now
5180 copied code from gnumeric/src/xml-io.c
5182 * gconf/gconftool.c (main): improve gconfd-is-running error
5185 * gconf/gconf.c (gconf_synchronous_sync): internal-only API
5186 for the synchronous sync
5188 * gconf/gconfd.c (gconfd_synchronous_sync): implement a way to
5189 force _immediate_ sync for testing purposes
5191 2000-01-21 Havoc Pennington <hp@pobox.com>
5193 * tests/Makefile.am (testpersistence_SOURCES): add new test
5195 * tests/testpersistence.c: New test, clears the cache after every
5196 set, to see if the get() function can properly load stuff off of
5197 disk. Right now we fail this test. Blah.
5199 2000-01-21 Havoc Pennington <hp@pobox.com>
5201 * backends/xml-cache.c (cache_clean): oops, this was broken
5202 before; we need to check that the dir doesn't need a sync before
5205 * backends/xml-dir.c (dir_sync_pending): new function
5207 * backends/xml-backend.c (clear_cache): implement clearing cache
5210 * gconf/gconf.c (gconf_clear_cache): implement API here
5212 * gconf/GConf.idl: add clear_cache method
5214 * gconf/gconfd.c (context_clear_cache): add code to implement
5217 * gconf/gconf-sources.c (gconf_sources_clear_cache): New function
5218 for debugging purposes
5220 2000-01-20 Havoc Pennington <hp@pobox.com>
5222 * backends/xml-entry.c (node_extract_value): Detect case where a
5223 pair is missing car and/or cdr and do an error instead of
5224 returning an invalid pair.
5226 * gconf/gconf-internals.c (gconf_get_lock): remove IOR debug spew
5228 * gconf/gconftool.c: Add --break-key and --break-directory, these
5229 allow you to easily torture test your application and see if
5230 you're robust against users setting your config keys to stupid
5233 * tests/testgconf.c: Include the empty string in the list
5234 of strings we test. I know this is currently broken if you
5235 exit gconfd or purge the cache between set and get.
5237 2000-01-20 Havoc Pennington <hp@redhat.com>
5239 * gconf/Makefile.am (EXTRA_DIST): fix EXTRA_DIST to have
5240 default.path.in in it
5242 2000-01-20 Havoc Pennington <hp@redhat.com>
5244 * gconf/default.path: remove, replace with gconf/default.path.in
5245 which is set up properly to go in $sysconfdir
5247 * gconf/gconftool.c (main): Always unref the engine when we're
5248 done, to ensure we cleanly give up locks on local sources.
5250 * configure.in (GCONF_CONFIG_SOURCE): --enable-gconf-source option
5252 * gconf/gconftool.c (main): add an --makefile-install-rule option,
5253 which does the right thing in makefile install rules.
5255 * Makefile.am: add standard-schemas subdir
5257 * configure.in (absolute_top_srcdir): create standard-schemas Makefile
5259 * standard-schemas/desktop.schemas: Schemas that any desktop can use
5261 * standard-schemas/Makefile.am: install schemas
5263 2000-01-19 Havoc Pennington <hp@redhat.com>
5265 * gconf/gconfd.c (gconf_set_exception): warn if the error is set
5266 to GCONF_ERROR_SUCCESS
5268 * gconf/gconf-error.h: Prefix all errno values with GCONF_ERROR as
5271 2000-01-15 Havoc Pennington <hp@pobox.com>
5273 * tests/testlisteners.c (check_immediate_remove_after_add): update
5274 to match change to gconf-listeners.c
5276 * gconf/gconf-listeners.c: Use only 24 bits for the array index,
5277 and put a variable value in the top 8 bits, so recycling array
5278 indices doesn't create the possibility of clients clashing with
5279 each other (i.e. to clients it doesn't appear that indexes are
5282 2000-01-15 Havoc Pennington <hp@pobox.com>
5284 * backends/xml-dir.c (dir_unset_value): check entries for
5285 uselessness on unset, even if they are unchanged by the unset.
5286 Allows us to delete useless crap we loaded from disk.
5287 If you unset, the entry should no longer appear in all_entries
5288 unless there's a schema name to remember.
5290 * backends/xml-entry.c (entry_unset_value): Fix this to properly
5291 unset value for all locales if the locale passed in to "unset" is
5293 (entry_sync_to_node): Remember to unset the value if necessary
5295 * gconf/gconftool.c (list_pairs_in_dir): handle entries with no
5298 2000-01-15 Havoc Pennington <hp@pobox.com>
5300 * backends/xml-dir.c (dir_destroy): destroy entries before the xml
5301 doc, since they hold pointers into the xml doc.
5303 * backends/xml-entry.c (entry_sync_to_node): if no cached value,
5304 blow away the value in the node.
5306 2000-01-14 Havoc Pennington <hp@pobox.com>
5308 * gconf/gconfd.c (gconfd_all_entries): remove bad assertion that
5309 the value in an entry was non-NULL
5311 * gconf/gconf.c (gconf_set): check for invalid list type
5313 * gconf/gconf-internals.c (gconf_value_from_corba_value): Be more
5314 paranoid about list types coming from gconfd
5316 2000-01-13 Havoc Pennington <hp@pobox.com>
5318 * gconf/gconf.c (gconf_unique_key): function to generate
5319 a pseudo-random very-very-likely-to-be-unique key name.
5321 2000-01-13 Havoc Pennington <hp@redhat.com>
5323 * gconf/gconf-internals.c (gconf_concat_key_and_dir): move
5324 declaration to public header
5326 * doc/gconf/tmpl/gconf-client.sgml: Document the changed
5327 dir add/remove behavior
5329 2000-01-13 Havoc Pennington <hp@redhat.com>
5331 * backends/xml-dir.c (dir_load): arguments to this were backward
5333 * wrappers/gtk/gconf-client.c: keep a count of the number of times
5334 a directory has been added/removed from the dir list, so we only
5335 remove it from the list after that number of removals.
5336 Perhaps somewhat unintuitive, but we'll document it, and it's
5337 really necessary if multiple code sections are going to share the
5339 (gconf_client_destroy): move a bunch of stuff to finalize
5340 so we remain "safe" before last unref
5342 2000-01-12 Havoc Pennington <hp@redhat.com>
5344 * gconf/gconfd.c (main): don't use custom object ID
5346 2000-01-12 Jonathan Blandford <jrb@redhat.com>
5348 * wrappers/gtk/gconf-client.c: #include <stdio.h>
5350 2000-01-11 Havoc Pennington <hp@pobox.com>
5352 * gconf.m4: separate $4 from gconf_config_args
5354 * gconf-config.in (af_libs): -lgconf, not -lgconf-client
5355 (Libraries): add gconf-gtk lib
5357 2000-01-11 Andreas Hyden <andreas.hyden@telia.com>
5359 * configure.in : added sv (swedish)
5361 2000-01-08 Havoc Pennington <hp@pobox.com>
5363 * gconf/gconftool.c (main): had local and non-local cases backward
5364 so you got the opposite of what you requested
5366 * gconf/gconf-internals.c (gconf_release_lock): include strerror()
5367 in "can't open lock file" message
5368 (gconf_get_lock): actually write the PID to the lock file,
5369 and use ConfigServer_ping() instead of CORBA_Object_is_nonexistent()
5371 2000-01-07 Havoc Pennington <hp@redhat.com>
5373 * gconf/gconf-internals.c (gconf_get_lock): totally rewrite the
5376 * backends/xml-dir.c (dir_load): if errno == ENOENT don't make
5379 * gconf/gconfd.c (main): check return value of
5380 oaf_active_server_register() and act accordingly.
5382 * gconf/gconf.c (try_to_contact_server): use new
5383 OAF_FLAG_EXISTING_ONLY when appropriate
5385 * gconf/gconf-internals.c (gconf_set_daemon_ior): allow setting
5388 * gconf/gconfd.c (main): set the IOR so it can be used in lockfiles
5390 2000-01-03 Havoc Pennington <hp@redhat.com>
5392 * gconf/gconftool.c (main): add support for direct config source access
5394 1999-12-31 Havoc Pennington <hp@pobox.com>
5396 * gconf/gconf-internals.c (gconf_log): in non-daemon mode, use
5397 fprintf() when it's an error and printf() when not
5398 (gconf_in_daemon_mode): new function
5400 * gconf/gconfd.c (signal_handler): special-case some more signals;
5401 do more thorough cleanup when we can.
5402 (main): fix which signals we add an action for
5404 * gconf/gconf-internals.h: Remove server_info* functions
5406 * gconf/gconf-error.h: add GCONF_LOCK_FAILED
5408 * gconf/gconf.c (corba_errno_to_gconf_errno): lock failed error
5410 * gconf/gconf-internals.c (gconf_nanosleep): Add utility function
5411 to portably sleep a little while (we should really stick one of
5413 (gconf_release_lock, gconf_get_lock): Lock directory functions
5415 2000-01-02 Timur Bakeyev <mc@bat.ru>
5417 * doc/gconf/Makefile.am: Replace unportable install -d with $MKINSTALLDIRS.
5418 install -m 0644 - with $(INSTALL_DATA).
5420 2000-01-02 Timur Bakeyev <mc@bat.ru>
5422 * po/uk.po: Add missed "\n" in 2 strings. Things sholud be checked
5425 * backends/Makefile.am, wrappers/gtk/Makefile.am: Add $(top_builddir)/gconf
5426 to INCLUDES to make GConf.h visiable.
5428 * gconf/gconf-internals.c: If LC_MESSAGE doesn't exist, use value of
5429 LC_CTYPE (is this correct?)
5431 1999-12-31 Yuri Syrota <rasta@renome.rovno.ua>
5433 * configure.in: Added "uk" to ALL_LINGUAS
5435 1999-12-30 Havoc Pennington <hp@pobox.com>
5437 * backends/xml-backend.c: Complete cleanup of XML backend,
5438 all test suite passes, code is much more manageable.
5440 1999-12-21 Havoc Pennington <hp@redhat.com>
5442 * doc/gconf/tmpl/gconf-backend.sgml: Documented the methods in the
5445 * backends/xml-dir.[hc], backends/xml-entry.[hc]: fixed up some
5448 1999-12-20 Havoc Pennington <hp@redhat.com>
5450 * gconf/gconf-sources.c (gconf_sources_new_from_addresses): const
5453 * gconf/gconfd.c: Massive const-correctness changes to match
5456 * gconf/gconf.c (notify): "in string" seems to be const again now.
5458 * wrappers/gtk/gconf-client.c (cache_pairs_in_dir): store the
5459 is_default parameter when preloading
5461 * gconf/gconf.c (gconf_all_entries): receive the is_default
5464 * gconf/gconfd.c (gconfd_all_entries): pass the is_default
5465 parameter over the CORBA link
5467 * backends/xml-backend.c (listify_foreach): Add the schema name to
5468 the entry if appropriate (if value is unset)
5470 * gconf/gconf-sources.c (gconf_sources_all_entries): Change to
5471 match new semantics of all_entries in the backend; get all entries
5472 that have a schema set on them, and the corresponding default
5473 value if appropriate.
5475 * gconf/gconf-value.c (gconf_entry_set_is_default): new function
5476 (gconf_entry_set_schema_name): new function
5478 * backends/xml-backend.c (listify_foreach): Include keys that
5479 exist but have no value set in the list of returned entries.
5481 1999-12-20 Havoc Pennington <hp@redhat.com>
5483 * tests/testlisteners.c: fix include
5485 * wrappers/gtk/gconf-client.c (gconf_client_preload): Actually
5486 implement preloading. We have some "issues" here to resolve I
5487 think, because of the defaults stuff and schemas.
5489 1999-12-14 Havoc Pennington <hp@redhat.com>
5491 * gconf/gconf.c (gconf_engine_new_from_address): Add a g_warning()
5492 that people probably don't want to use this.
5494 1999-12-14 Havoc Pennington <hp@redhat.com>
5496 * doc/gconf/tmpl/gconf-client.sgml: fix a typo, add additional
5497 explanation to the introduction.
5499 * doc/gconf/tmpl/gconf.sgml: Document the string-to-enum functions.
5500 Update some other docs too.
5502 * doc/gconf/gconf-sections.txt: add new functions
5504 * gconf/gconf.c (gconf_string_to_enum): new function
5505 (gconf_enum_to_string): new function
5507 * gconf/gconf-engine.h: Put gconf_engine_new_local() here instead
5508 of gconf-internals.h
5510 * gconf/gconf-internals.h: added a new GCONF_ENABLE_INTERNALS
5511 define, to allow us to have internal stuff in headers other than
5514 * gconf/gconf.c (gconf_unset): local version
5515 (gconf_associate_schema): local version
5516 (gconf_all_entries): local version
5517 (gconf_all_dirs): local version
5518 (gconf_suggest_sync): local version
5519 (gconf_dir_exists): local version
5521 * gconf/gconf-internals.h (gconf_engine_new_local): Declare this
5522 function here, though it's defined in gconf.c
5524 * gconf/gconf.c (gconf_set): local version
5526 * gconf/gconfd.c (context_query_default_value): use
5527 gconf_sources_query_default_value()
5529 * gconf/gconf-sources.c (gconf_sources_query_default_value): New
5532 * gconf/gconf-sources.h: egtk-format-protos the function
5535 * gconf/Makefile.am (libgconf_la_SOURCES): move gconf-locale.[hc]
5536 into the library, bah
5538 * gconf/gconf.c (gconf_get_full): Add local (no gconfd) version
5540 * gconf/gconf-locale.c (gconf_split_locale): locale splitter
5543 * gconf/gconf-sources.c (gconf_sources_new_from_source): new function
5545 * examples/basic-gconf-app.c (create_prefs_dialog): Move keys from
5546 /apps/gnome to plain /apps
5548 * doc/gconf/gconf.sgml: Add an initial stab at namespace
5551 1999-12-09 Havoc Pennington <hp@redhat.com>
5553 * gconf/gconf.c (gconf_init): Safety check to ensure we don't
5554 initialize OAF a second time.
5556 1999-12-06 Havoc Pennington <hp@pobox.com>
5558 * gconf/gconf.c (gconf_notify_add): Backward assertion
5560 1999-12-02 Havoc Pennington <hp@pobox.com>
5562 * examples/basic-gconf-app.c (create_configurable_widget): use
5563 gconf_client_get_string() instead of gconf_client_get()
5564 (update_entry): Check for the default value if we have an unset
5565 value in the change set.
5567 * wrappers/gtk/gconf-client.c
5568 (gconf_client_create_change_set_from_currentv): use without_default
5569 (revert_foreach): use without_default
5571 * gconf/gconf-changeset.c (gconf_create_change_set_from_currentv):
5572 use gconf_get_without_default()
5573 (revert_foreach): use gconf_get_without_default()
5575 * wrappers/gtk/testgconfclient.c (entry_notify_func): fix to compile
5577 * examples/basic-gconf-app.c (configurable_widget_config_notify):
5580 * wrappers/gtk/gconf-client.c
5581 (gconf_client_get_default_from_schema): New function
5583 * gconf/gconf.c (gconf_get_without_default): renamed from
5584 gconf_get_no_default(), so that gconf_get_default_from_schema()
5585 won't be as confusing maybe.
5586 (gconf_get_default_from_schema): new function to read the default
5587 setting in the schema
5589 * backends/xml-backend.c (xentry_extract_value): remove ignore_subsequent
5590 (xentry_set_value): ditto
5592 * gconf/gconf-sources.c (gconf_sources_query_value): Remove ignore
5595 * gconf/gconf-value.c (gconf_value_new_from_string): remove
5597 (gconf_value_to_string): remove ignore_subsequent
5598 (gconf_value_copy): Remove ignore_subsequent
5600 * gconf/gconfd.c (context_unset): add is_default to notification
5601 (context_set): add is_default to notification
5603 * gconf/gconf-internals.c (gconf_value_type_to_string): Remove
5606 * gconf/gconf.c (gconf_cnxn_notify): add is_default
5607 (notify) add is_default
5609 * gconf/gconf-value.h: Remove GCONF_VALUE_IGNORE_SUBSEQUENT
5611 * gconf/gconf-sources.c (gconf_sources_unset_value): don't do that
5612 weird IGNORE_SUBSEQUENT goo
5614 * wrappers/gtk/Makefile.am (INCLUDES): add top_builddir to include
5615 search to get the built sources
5617 * gconf/gconf-engine.h: fix includes
5619 * gconf/gconf-changeset.h: fix includes
5621 * gconf/Makefile.am (gconfd_SOURCES): add gconf-sources.h here
5622 instead of installing it.
5624 * wrappers/gtk/Makefile.am (INCLUDES): remove -I$(top_builddir)/gconf
5626 * wrappers/gtk/gconf-client.c (gconf_client_get_full): Add this,
5629 * gconf/gconf-sources.c (gconf_sources_query_value): Set a flag
5630 indicating whether the retrieved value was the default or not.
5632 * gconf/GConf.idl: add value_is_default out flag to
5633 lookup_with_locale()
5635 1999-12-02 Havoc Pennington <hp@pobox.com>
5637 * gconf/gconf-error.c: Was missing an element in the err_msgs
5638 array and the array had the wrong size.
5640 * gconf/gconf-sources.c (gconf_sources_query_value): Add
5641 use_schema_default flag here (and in the other stuff that calls
5642 it, I'm skipping some layers in the changelog)
5643 (gconf_sources_query_value): If we find an IGNORE_SUBSEQUENT, we
5644 should return immediately, rather than checking the schema default.
5646 * gconf/gconfd.c (gconfd_lookup_with_locale): fix
5648 * gconf/gconf.c (gconf_get_no_default): new function to get
5649 a value, but not fall back to the schema default.
5651 * gconf/GConf.idl: lookup_with_locale() needs to raise
5652 ConfigException. Also, add a "use schema default" flag.
5654 1999-12-01 Havoc Pennington <hp@pobox.com>
5656 * gconf/gconf.c: Add local "direct mode" engine; mildly bad hack.
5657 This file could use some modularization. Still have to make
5658 all the methods support the local version.
5660 * gconf/Makefile.am (libgconf_la_SOURCES): move gconf-sources.c to
5661 the library instead of gconfd (again).
5663 * gconf/gconf-internals.c (gconf_handle_oaf_exception): set the
5664 GCONF_OAF_ERROR errno
5666 * gconf/gconf-error.c: add strerror stuff for those errors.
5668 * gconf/gconf-error.h: add oaf error and "this is not a gconfd
5671 1999-12-01 Havoc Pennington <hp@pobox.com>
5673 * gconf/gconf.c (try_to_contact_server): handle OAF exceptions
5675 * gconf/gconf-internals.c (gconf_handle_oaf_exception): new
5676 function to handle OAF CORBA exceptions, now I have to find all
5677 the places that I need to use this function...
5679 1999-12-01 Havoc Pennington <hp@pobox.com>
5681 * doc/gconf/gconf-sections.txt: Add new create_change_set
5682 functions for GConfClient and GConfEngine
5684 * doc/gconf/Makefile.am (LDFLAGS): Use proper cflags/ldflags
5685 for gtk and OAF when doing 'make scan'
5687 * wrappers/gtk/testgconfclient.c (entry_attached_to): change for
5688 new get_string() thing
5690 * gconf/gconf-changeset.h: fix the "" vs. <> issue on an #include
5692 * wrappers/gtk/gconf-client.c (gconf_client_get_bool): remove
5694 (gconf_client_get_string): ditto
5695 (gconf_client_get_int): ditto
5696 (gconf_client_get_float): ditto
5698 * gconf/gconf.c (gconf_get_bool): Remove "default" argument.
5699 (gconf_get_string): ditto
5700 (gconf_get_int): ditto
5701 (gconf_get_float): ditto
5703 1999-11-30 Havoc Pennington <hp@pobox.com>
5705 * backends/xml-backend.c (resolve_address): s/dir/root_dir/
5707 1999-11-29 Havoc Pennington <hp@pobox.com>
5709 * gconf/gconftool.c (do_load_schema_file): Use new syntax for
5710 attaching schema names to key names
5712 * backends/xml-backend.c (resolve_address): Create the XML root
5713 directory if necessary.
5715 1999-11-29 Havoc Pennington <hp@pobox.com>
5717 * wrappers/gtk/gconf-client.c (gconf_client_get): sheesh, this
5718 stupid function didn't work at all. fix it
5719 (get): properly check whther val is NULL before copying it.
5721 * gconf/gconf-internals.c (gconf_set_daemon_mode): Function to set
5722 daemon mode, for now changes gconf_log behavior
5723 (gconf_log): handle daemon vs. non-daemon mode, and with syslog do
5724 syslog(pri, "%s", msg) instead of syslog(pri, msg) to avoid
5725 unwanted printf magic.
5726 (gconf_value_from_corba_value): more robust for list types, add an assertion
5728 * gconf/gconfd.c (gconfd_set): return if the conversion from
5729 GConfValue doesn't fly
5731 * gconf/gconf-value.c (gconf_value_new): add a check for valid type
5733 * gconf/gconf-value.h (GCONF_VALUE_TYPE_VALID): Add macro to check the
5734 a value type is valid
5736 * gconf/gconf-changeset.c (change_set): return if the value being
5737 set is the same as the existing value.
5739 * examples/Makefile.am (EFENCE): add EFENCE var
5741 * wrappers/gtk/gconf-client.c (gconf_client_commit_change_set):
5744 * gconf/gconf-changeset.c (gconf_commit_change_set): add checks
5746 * gconf/gconf-listeners.c (gconf_listeners_remove): Robust against
5749 * gconf/gconf-changeset.c (gconf_create_change_set_from_current):
5750 New function to create a change set which will restore the current
5751 values of a list of keys.
5752 (gconf_create_change_set_from_currentv): Vector version of the
5754 (gconf_change_set_check_value): new function to check for and get
5755 the value of a key in a change set.
5757 * wrappers/gtk/gconf-client.h: Add client analogues for the above
5758 two set-creation functions.
5760 1999-11-28 Havoc Pennington <hp@pobox.com>
5762 * gconf.m4: add the "" around the $4, seems to work - the problem
5763 here seems to have something to do with aclocal or autoconf
5764 doing the wrong thing, rather than a shell issue. I don't
5767 1999-11-23 Havoc Pennington <hp@pobox.com>
5769 * backends/xml-backend.c (query_value): Don't return errors here;
5770 this is somewhat wrong, we actually need to discriminate between
5771 errors and report the "abnormal" ones, but for now I think all of
5774 * gconf/gconf-internals.c (gconf_log): If the log string contains
5775 a % escape it with another percent so we don't get printf()
5776 effects (was causing a segfault) - however it's still broken if
5777 unintentional percents exist in the initial format string. Will
5778 fix later by adding a "printf()-formatting" arg I think
5780 * wrappers/gtk/gconf-client.c (gconf_client_commit_change_set):
5781 put some casts in to chill warnings
5783 * gconf/gconf-changeset.c (gconf_change_set_size): new function
5785 * wrappers/gtk/gconf-client.c (gconf_client_destroy): Destroy the
5788 * Makefile.am (SUBDIRS): add "examples" directory
5790 * examples/Makefile.am, examples/basic-gconf-app.c: Examples;
5791 write nice example program.
5793 * gconf/gconfd.c (notify_listeners_cb): error message improvement
5794 (set_default_context): Set the "context" field of the default
5795 context, I don't get how that was working before.
5797 1999-11-23 Havoc Pennington <hp@pobox.com>
5799 * wrappers/gtk/testgconfclient.c: remove GNOME dependency
5801 * configure.in: don't build gconf-editor makefile.
5803 * Makefile.am (SUBDIRS): never build gconf-editor, it will have to
5804 go in a separate module (somewhat inconveniently, since I'll
5805 probably end up installing gconf-internals.h for its use, blah)
5807 * configure.in (GCONF_AGE): Check for plain GTK not GNOME
5809 * wrappers/Makefile.am (SUBDIRS): change GNOME conditional to GTK
5811 1999-11-23 Havoc Pennington <hp@pobox.com>
5813 * gconf/Makefile.am (libgconf_la_LDFLAGS): split off LIBADD
5815 * wrappers/gtk/Makefile.am (libgconf_gtk_la_LIBADD): set shared
5817 (libgconf_gtk_la_LDFLAGS): split LIBADD and LDFLAGS maybe properly.
5819 * configure.in: remove gnorba cflags/libs
5821 * gconf/Makefile.am (install-data-local): Create the
5822 $(sysconfdir)/gconf directory.
5824 * wrappers/Makefile.am: For now, always disable Guile wrapper
5827 1999-11-22 Havoc Pennington <hp@pobox.com>
5829 * backends/xml-backend.c (resolve_address): Check whether the XML
5830 directory is readable/writeable and report an error if neither;
5831 set readable/writeable flags properly.
5833 * gconf/gconfd.c (gconf_server_load_sources): log decision to use
5834 default config source
5836 1999-11-22 Havoc Pennington <hp@pobox.com>
5838 * gconf/gconfd.c (gconf_server_load_sources): Fall back to
5839 xml:~/.gconf if no config file is found
5841 1999-11-22 Havoc Pennington <hp@pobox.com>
5843 * gconf/default.path: default configuration file
5845 * gconf/Makefile.am (install-data-local): Install default.path to
5846 sysconfdir/gconf/path (theoretically)
5848 1999-11-22 Havoc Pennington <hp@pobox.com>
5850 * gconf/gconfd.c (gconf_set_exception): lots of assertions
5851 (gconf_server_load_sources): Install the default context even if
5852 we don't find any configuration sources in the path
5854 * gconf/gconf.c (gconf_get_config_server): always return an error
5855 if the server isn't available. This is still not doing the right
5856 thing; for shutdown and ping we need to be able to get the object
5857 if and only if it already exists. This feature is also needed for
5858 something like magicdev-patched gtcd.
5860 * gconf/gconfd.c (gconf_server_load_sources): #ifdef the
5861 debug-only search for debugging path file.
5863 1999-11-19 Havoc Pennington <hp@pobox.com>
5865 * gconf/gconfd.c (gconf_server_load_sources): Give actual
5866 sysconfdir in the error message, not just /etc;
5869 * gconf/gconf.c: include liboaf.h
5870 (gconf_postinit): fix a bunch of missing semicolons
5872 1999-11-20 Havoc Pennington <hp@pobox.com>
5874 * wrappers/gtk/gconf-client.c
5875 (gconf_client_create_reverse_change_set): new function
5876 (gconf_client_commit_change_set): new function
5878 1999-11-20 Havoc Pennington <hp@pobox.com>
5880 * gconf/gconf-changeset.c (gconf_create_reverse_change_set): New
5881 function creates a change set which will revert another change set
5884 1999-11-19 Havoc Pennington <hp@pobox.com>
5886 * gconf/gconfd.c (gconf_server_load_sources): Give actual
5887 sysconfdir in the error message, not just /etc;
5890 * gconf/gconf.c: include liboaf.h
5891 (gconf_postinit): fix a bunch of missing semicolons
5893 1999-11-19 Havoc Pennington <hp@pobox.com>
5895 * gconf/gconf.c (gconf_server_broken): don't need to set the
5896 server to NIL here, it gets set in gconf_detach_config_server()
5898 * doc/gconf/gconf-sections.txt: Add preinit, postinit
5900 * doc/gconf/gconf.sgml: Remove gconf-orbit entity
5902 * doc/gconf/gconf-sections.txt: Remove gconf-orbit stuff
5904 * tests/*.c: Fix to not include gconf-orbit.h, call gconf_init()
5907 * gconf-editor/gconf-editor.c: don't include gconf-orbit.h
5909 * wrappers/gtk/testgconfclient.c (main): remove "orb" variable
5911 * gconf/gconftool.c: don't include gconf-orbit.h
5913 * gconf/gconfd.c: don't include gconf-orbit.h
5915 * gconf/gconf.c: don't include gconf-orbit.h
5917 * gconf/gconf.h: don't include gconf-orbit.h
5919 * gconf/Makefile.am (gconfinclude_HEADERS): remove gconf-orbit.h
5920 (libgconf_la_SOURCES): remove gconf-orbit.c
5922 * gconf/gconfd.c (main): fix error message if oaf_init() returns FALSE
5924 * gconf/gconf.c (try_to_contact_server): Use the IID macro
5925 (gconf_postinit): Change all the error checks to assertions; if
5926 these errors can really happen they need to be reported as before
5927 (not sure how to do this with the pre/post init setup), if they
5928 can't happen then they should be asserted, not error-checked.
5930 * gconf/gconfd.c (fast_cleanup): Unregister with OAF in order to
5933 * gconf/Makefile.am: add -DIID to INCLUDES
5935 * gconf/gconfd.c (main): Use a macro for the IID
5937 * gconf/gconf-internals.c: Remove gconf_read_server_ior(),
5938 gconf_info_dir(), gconf_info_file(), etc. since we use OAF instead.
5940 * gconf/gconfd.c (main): Remove "nodaemon" flag since we don't run
5941 as a daemon anymore.
5942 (main): After oaf_init(), don't try to use "err" since oaf_init()
5945 * gconf/gconf-orbit.h, gconf/gconf-orbit.c: Delete these, we
5948 * gconf/gconf.c (gconf_get_config_server): Change this to only
5949 call try_to_contact_server() if start_if_not_found is TRUE,
5950 since with OAF any attempt to contact the server will
5951 automatically restart it. Now we keep the server variable
5952 up-to-date locally (set it to NULL on any system exception).
5954 1999-11-19 Elliot Lee <sopwith@redhat.com>
5956 * Make it all use OAF, and redo the initialization routine(s) to
5957 fit better into the GnomeModuleInfo system.
5959 1999-11-18 Elliot Lee <sopwith@redhat.com>
5961 * gconf.m4: AM_PATH_GCONF macro.
5963 * wrappers/gtk/Makefile.am, autogen.sh, backends/Makefile.am: Work with builddir != srcdir
5965 * Makefile.am: Distribute gconf.m4 & gconf-config.in, install gconf.m4
5967 1999-11-18 Havoc Pennington <hp@pobox.com>
5969 * gconf/gconfd.c (gconf_server_load_sources): fix the message
5970 about writeable sources
5972 1999-11-18 Havoc Pennington <hp@pobox.com>
5974 * backends/xml-backend.c (find_schema_subnode_by_locale): Check
5975 that locale && this_locale before strcmp()'ing them
5976 (entry_unset): take a NULL locale in unset to mean "unset all locales"
5978 * tests/testschemas.c (check_one_schema): fix the locale-related tests
5980 * gconf/gconf.c (gconf_set_schema): remove debug spew
5982 * gconf/gconf-internals.c (gconf_schema_from_corba_schema): parse
5983 the encoded default value
5984 (fill_corba_schema_from_gconf_schema): encode the default value to
5987 * gconf/GConf.idl: Add encoded default value string to
5990 * gconf/gconf-internals.c (gconf_value_decode): implement
5991 (gconf_value_encode): implement
5993 * gconf/gconf-value.c (gconf_value_to_string): Use
5994 g_strdup_printf() to create int/float strings, rather than
5995 guessing at the needed string size.
5997 1999-11-17 Havoc Pennington <hp@pobox.com>
5999 * tests/testencode.c: new test for string quoting
6001 * gconf/gconf-internals.c (gconf_unquote_string_inplace): new
6002 function unquotes a string
6003 (gconf_quote_string): quotes a string
6004 (gconf_unquote_string): unquotes a const string
6006 1999-11-16 Havoc Pennington <hp@pobox.com>
6008 * gconf/gconf-schema.c (gconf_schema_copy): copy locale, and
6009 handle NULL fields. Sheesh this was broken.
6010 (gconf_schema_destroy): destroy default value and locale
6012 1999-11-16 Havoc Pennington <hp@pobox.com>
6014 * gconf/gconf-value.c (gconf_value_to_string): print more info
6017 * backends/xml-backend.c (xentry_set_schema_value): Set the schema
6018 type on the toplevel node, not the localized node.
6019 (xentry_set_schema_value): Set the owner on the toplevel node
6020 (schema_node_extract_value): Do better at falling back to any
6021 schema if the locale we want isn't found.
6022 (my_xmlSetProp): Replace xmlSetProp with this, deletes the prop
6023 if setting to NULL or ""
6024 (my_xmlGetProp): Replace xmlGetProp with this, returns NULL if the
6025 prop has an empty value.
6027 * gconf/gconf-internals.c (gconf_value_type_to_string): Add case
6028 for GCONF_VALUE_INVALID
6030 * backends/xml-backend.c (entry_unset): refill cached_value if
6031 other locale values still exist. Also, mark the Entry dirty.
6032 (entry_value): add a sync_if_needed here
6033 (entry_sync_if_needed): just always sync if it's a schema; this
6034 code is so broken we may as well not try to be clever.
6036 1999-11-15 Havoc Pennington <hp@pobox.com>
6038 * backends/xml-backend.c (entry_fill): handle locale by syncing
6039 cached value if necessary
6041 * wrappers/gtk/gconf-client.c (gconf_client_get_string):
6042 g_strdup() the retval if necessary
6043 (gconf_client_get_pair): fix one of the checks
6045 * backends/xml-backend.c (xentry_extract_value): use "C" locale if
6048 * gconf/gconftool.c (do_load_schema_file): check type of nodes
6049 (process_key_list): check node type
6050 (process_schema): check node type
6051 (process_locale_info): check node type
6052 (extract_global_info): check node type
6054 * backends/xml-backend.c (entry_unset): deal with locales
6055 (entry_set): deal with locales
6056 (entry_value): locales
6057 (schema_node_extract_value): handle locales
6059 * gconf/gconf-internals.c (gconf_log): move the check for debug
6060 messages to the top of the function, before g_strdup_vprintf(),
6061 and if GCONF_ENABLE_DEBUG isn't defined return immediately (ignore
6062 the GCL_DEBUG messages).
6064 1999-11-15 Havoc Pennington <hp@pobox.com>
6066 * doc/gconf/tmpl/gconf-client.sgml: write GConfClient docs.
6068 * wrappers/gtk/gconf-client.c (gconf_client_new_with_engine):
6069 change this to increment the #GConfEngine reference count.
6071 * doc/gconf/gconf.sgml: Add GConfClient entity
6073 * doc/gconf/gconf-sections.txt: Add GConfClient stuff, add
6074 set_list and set_pair for GConfChangeSet
6076 * doc/gconf/gconf.types: New file gtk-doc requires
6078 * doc/gconf/Makefile.am (scan): Scan GConfClient as well.
6079 Uses a bad, probably nonportable hack, but this stuff isn't
6080 built by default anyway.
6082 * wrappers/Makefile.am: Build GConfClient if we have GNOME
6084 1999-11-15 Havoc Pennington <hp@pobox.com>
6086 * gconf/gconf.c (gconf_get): Fix it to use the current
6087 locale as documented.
6089 * gconf/gconf-internals.c
6090 (gconf_value_list_to_primitive_list_destructive): new function
6091 takes most code from gconf_get_list()
6092 (gconf_value_pair_to_primitive_pair_destructive): new function
6094 * wrappers/gtk/gconf-client.c (get): Return a copy of the cached
6095 value, should save us some segfaults.
6096 (gconf_client_get_list): new function
6097 (gconf_client_get_pair): new function
6098 (gconf_client_set_list): new function
6099 (gconf_client_set_pair): new function
6101 * gconf/gconf-internals.c (gconf_value_pair_from_primitive_pair):
6102 new function removes guts of gconf_set_pair()
6104 * gconf/gconf.c (gconf_set_list): change to use
6105 gconf_value_list_from_primitive_list()
6107 * gconf/gconf-changeset.c (gconf_change_set_set_list): new
6108 convenience function
6109 (gconf_change_set_set_pair): new function
6111 * gconf/gconf-internals.c (gconf_value_list_from_primitive_list):
6112 new function, takes most of the code from gconf_set_list() to
6113 share with other list-set wrappers
6115 1999-11-14 Havoc Pennington <hp@pobox.com>
6117 * backends/xml-backend.c (listify_foreach): s/gconf_entry_new/gconf_entry_new_nocopy/
6119 * gconf/gconf.c (gconf_all_entries): s/gconf_entry_new/gconf_entry_new_nocopy/
6121 * gconf/doc/*: tons of documentation updates.
6123 * gconf/gconf-changeset.c: Add an "in_foreach" flag and warn if
6124 you do bad things during a foreach operation.
6125 (gconf_change_set_remove): check that we aren't in a foreach
6126 (gconf_change_set_unref): if refcount == 0 check that we aren't in
6129 * gconf/gconf-changeset.h: try to spell "committed" right.
6131 * gconf/gconf-value.h (gconf_entry_value): add accessor macros
6134 * gconf/gconf-value.c (gconf_entry_new_nocopy): Rename
6135 gconf_entry_new() to gconf_entry_new_nocopy() to reflect its
6138 1999-11-13 Havoc Pennington <hp@pobox.com>
6140 * gconf/gconf-internals.h: move the value-from-string constructors
6143 * gconf/gconf-value.h: moved from here
6145 1999-11-13 Havoc Pennington <hp@pobox.com>
6147 * gconf/gconf-value.h (gconf_meta_info_schema): Add const cast to
6150 * gconf/gconf.c (gconf_set_list): allow list of schemas
6151 (from_primitive): handle schemas
6152 (primitive_value): handle schemas
6153 (gconf_get_list): handle schemas
6155 * doc/gconf/tmpl/gconf-value.sgml: docs!
6157 * doc/gconf/tmpl/gconf.sgml: docs!
6159 * doc/gconf/gconf-sections.txt: add set/get list/pair
6161 * gconf/gconf.c (gconf_set_list): Fix dumb bug (assign back to the
6164 1999-11-13 Havoc Pennington <hp@pobox.com>
6166 * tests/testgconf.c (check_list_storage): Use the new list
6167 convenience wrappers, to be sure they are tested. (the test
6168 reveals that right now they don't work ;-)
6170 * gconf/gconf.c (error_checked_set): destroy the error if it isn't
6171 passed out to the user, to avoid a mem leak
6172 (gconf_set_float): checks
6173 (gconf_set_int): checks
6174 (gconf_set_string): checks
6175 (gconf_set_bool): checks
6176 (gconf_set_bool): canonicalize the boolean value with !!
6177 (gconf_set_schema): checks
6179 * gconf/gconf-value.h (gconf_value_string): add const cast to this
6182 * gconf/gconf.c (gconf_get_schema): add checks
6183 (gconf_get_bool): checks
6184 (gconf_get_string): checks
6185 (gconf_get_int): checks
6186 (gconf_get_float): checks
6187 (gconf_get_with_locale): checks
6188 (gconf_set): more checks
6189 (gconf_unset): checks
6190 (gconf_associate_schema): checks
6191 (gconf_all_dirs): checks
6192 (gconf_dir_exists): checks
6193 (gconf_get_list): New function, gets a list of native types
6194 and avoids GConfValue.
6195 (gconf_get_pair): New function, gets a pair of native types
6196 (gconf_set_list): New function, sets a list of native types
6197 (gconf_set_pair): New function, sets a pair of native types
6199 1999-11-12 Havoc Pennington <hp@pobox.com>
6201 * doc/gconf/gconf.sgml: Set up the gtk-doc system. Added all the
6204 1999-11-12 Havoc Pennington <hp@pobox.com>
6206 * backends/xml-backend.c: Change all comments starting with /** to
6207 not start with that (for gtkdoc)
6209 1999-11-12 Havoc Pennington <hp@pobox.com>
6211 * gconf/gconftool.c (main): Add the ability to specify a
6212 configuration source other than the default configuration source
6214 Add the ability to install a schema file.
6216 * gconf/Makefile.am (INCLUDES): add XML_CFLAGS
6217 (gconftool_LDADD): add XML_LIBS
6219 * backends/Makefile.am (INCLUDES): add XML_CFLAGS
6221 1999-11-11 Havoc Pennington <hp@pobox.com>
6223 * tests/testchangeset.c: test for the changeset stuff
6225 * gconf/gconf.c (gconf_set): add check that string values don't
6226 contain a NULL string
6228 * gconf/gconf-changeset.c (gconf_change_set_unset): fix typo
6230 * doc/gconf.sgml: tweaks
6232 * gconf/gconf-changeset.c, gconf/gconf-changeset.h: ChangeSet data
6233 structure stores a bunch of changes to be committed in a block.
6234 For now the gconf_commit_change_set() function is really naive
6235 (iterates over the change set and sets each value)
6237 * backends/xml-backend.c: Throughout, use accessor functions to
6238 access the "value" field in the cache entries; we're going to
6239 have to update the value field to match the proper locale
6240 before supplying it via the entry_value() accessor.
6242 1999-11-11 Havoc Pennington <hp@pobox.com>
6244 * tests/runtests.sh: Enhance to detect missing tests.
6246 * gconf/gconf-internals.c (gconf_log): don't log DEBUG level stuff
6247 if built without GCONF_ENABLE_DEBUG
6249 * backends/xml-backend.c (safe_g_hash_table_insert): Same, use
6251 Add locales stuff throughout this file, but do nothing with it for
6254 * gconf/gconfd.c (safe_g_hash_table_insert): Make this dependent
6255 on GCONF_ENABLE_DEBUG setting.
6257 * gconf/gconf-sources.c (gconf_sources_query_value): fix locale
6258 (gconf_sources_unset_value): locale
6259 (gconf_sources_all_entries): locales
6261 * gconf/gconfd.c (context_query_value): Use locale list
6262 (context_unset): locale argument
6263 (context_all_entries): locale argument
6264 (gconfd_unset_with_locale): locale
6266 * gconf/gconf-sources.c (gconf_source_query_value): Pass an array
6267 of locales to look for
6268 (gconf_source_all_entries): ditto
6269 (gconf_source_unset_value): pass locale to unset
6271 * gconf/gconf-backend.h: Add locale args to the backend functions
6274 * gconf/gconf-internals.c (gconf_current_locale): Use setlocale()
6275 again, not guess_category_value from gnome-i18n
6277 1999-11-10 Havoc Pennington <hp@pobox.com>
6279 * gconf/Makefile.am (gconfd_SOURCES): Move the locale stuff here;
6280 decided not to use it in backends, so it can be in gconfd not the
6283 * gconf/gconfd.c (one_hour_timeout): Expire old locale cache stuff
6284 (locale_cache_lookup): New function to look stuff up in the locale
6286 (main): free the locale cache on exit
6288 1999-11-10 Havoc Pennington <hp@pobox.com>
6290 * backends/xml-backend.c (free_childs): function to free children
6292 (xentry_set_value): free_childs() in a couple places we weren't
6294 * tests/testschemas.c: Add new schema test to check for storing a
6297 * gconf/gconf-locale.c, gconf/gconf-locale.h: New module, creates
6298 and caches the list of locales to search for given an environment
6301 * gconf/gconf-internals.c (gconf_current_locale): We want
6302 LC_MESSAGES not LC_ALL
6304 1999-11-07 Havoc Pennington <hp@pobox.com>
6306 * gconf/gconf.c (reinstall_listeners_for_all_engines): Function to
6307 iterate over all engines and do the context
6308 reinstallation. However, it's not used yet because we also need
6309 to regenerate the context IDs.
6311 * gconf/gconfd.c: Add a ConfigServer_Context field to GConfContext
6312 (register_context): fill in the ConfigServer_Context field
6313 (context_new): init context field to invalid context
6315 * gconf/gconf.c (register_engine): Keep a hash from context ID's
6316 to GConfEngine, because we no longer have the global connection
6317 table (that table was broken anyway).
6318 (gconf_engine_blank): new function shared by the GConfEngine
6319 constructors (contains previous contents of gconf_engine_new,
6320 separate function required by registration stuff)
6321 (gconf_engine_new): Create blank engine, then register it
6322 (gconf_engine_new_from_address): register the engine
6323 (gconf_engine_unref): unregister the engine
6325 * gconf/GConf.idl: Add a context ID to the argument
6326 list of the notification.
6328 * gconf/gconf.c (gconf_server_broken): New predicate, asks if an
6329 exception is set indicating that our server is hosed.
6330 (gconf_detach_config_server): Function to release the server
6331 object reference and set it to nil
6332 (gconf_engine_new_from_address): Detach server and retry if
6334 (gconf_notify_add): Detach and respawn if needed
6335 (gconf_notify_remove): ditto
6337 (gconf_associate_schema): ditto
6338 (gconf_unset): ditto
6339 (gconf_all_entries): ditto
6340 (gconf_all_dirs): ditto
6341 (gconf_suggest_sync): ditto
6342 (gconf_notify_add): remove debugging spew
6343 (gconf_cnxn_new): Add namespace_section to GConfCnxn struct
6344 (gconf_cnxn_destroy): free namespace_section
6345 (GConfEnginePrivate): Put the connection table in here, it is
6346 per-context (and thus per-GConfEngine), should not be global.
6347 (gconf_init): don't create CnxnTable here, create it for each engine.
6348 (gconf_engine_new_from_address): remove redundant refcount
6350 (gconf_engine_unref): Destroy CnxnTable, and free the engine
6352 (notify): remove debug spew, reflect new signature of notify function
6354 1999-11-07 Havoc Pennington <hp@pobox.com>
6356 * gconf/gconf-internals.c: #include <locale.h>, oops
6358 1999-11-07 Havoc Pennington <hp@pobox.com>
6360 * tests/testschemas.c (check_schema_storage): Properly consider
6361 that schema fields can be NULL
6363 * backends/xml-backend.c (entry_value): Properly consider that
6364 a schema can have a NULL locale
6366 * gconf/gconf.c (gconf_get_with_locale): New function
6367 (gconf_get): just calls get_with_locale() with a NULL locale
6368 (gconf_get_schema): Use get_with_locale()
6370 * gconf/gconf-internals.c (gconf_current_locale): So I don't have
6371 to think about setlocale()
6373 * tests/testschemas.c: New test program for schema stuff
6375 1999-11-06 Havoc Pennington <hp@pobox.com>
6377 * gconf/gconf.c (gconf_associate_schema): Add function to associate
6378 a schema name with a key.
6380 1999-10-28 Havoc Pennington <hp@pobox.com>
6382 * backends/xml-backend.c (query_value): Add locale
6383 (dir_get_value): add locale
6384 (entry_value): new function gets the value from an entry,
6385 looking up a new value by locale if necessary.
6387 (xentry_extract_value): locale argument added, but needs to
6390 * gconf/gconf-backend.h: Add locale to query_value in vtable
6392 * gconf/gconf-sources.c (gconf_source_query_value): Add locale
6393 (gconf_sources_query_value): Add locale
6395 * gconf/gconfd.c (gconfd_lookup_with_locale): Implement new
6397 (context_query_value): Add locale
6399 * gconf/GConf.idl: Add lookup_with_locale() method
6401 * gconf/gconf-internals.c (fill_corba_schema_from_gconf_schema):
6402 Handle case where some schema fields are NULL, handle locale field.
6403 (gconf_schema_from_corba_schema): Handle locale field.
6405 * gconf/gconf-schema.c (gconf_schema_set_locale): New function
6407 * gconf/gconftool.c: Clean up so it is easier to deal with
6409 1999-10-28 Havoc Pennington <hp@pobox.com>
6411 * gconf/gconfd.c: Rework the sync code; now, any change queues a
6412 sync in 1 minute. If a client calls suggest_sync(), we sync in an
6413 idle (as soon as the event loop quiets down). Also, we now sync
6416 * tests/testgconf.c: Fix to compile
6418 * tests/Makefile.am (testgconf_LDADD): Fix Makefile.am to use new
6421 1999-10-27 Havoc Pennington <hp@pobox.com>
6423 * configure.in: Add --enable-debug option to G_DISABLE_CHECKS as needed
6425 * gconf/wrappers/gtk/testgconfclient.c: Test program for the GTK+
6428 * gconf/gconf-sources.c (gconf_sources_query_value):
6429 Wasn't handling errors; now we report errors. The bad thing is,
6430 it might be better to go ahead and do our best despite the error.
6432 * gconf/gconf.c (gconf_init): Actually set the have_initted variable.
6434 * wrappers/gtk/Makefile.am (libgconf_gtk_la_LIBADD): Don't try to
6436 Add testgconfclient target.
6438 * wrappers/gtk/gconf-client.h, wrappers/gtk/gconf-client.c: Make
6441 * configure.in: Generate Makefile for GtkObject wrapper
6443 1999-10-27 Havoc Pennington <hp@pobox.com>
6445 * gconf-editor/Makefile.am (gconf_editor_LDADD):
6448 * gconf/Makefile.am: Renamed the shared lib to libgconf instead of
6451 * wrappers/gtk/Makefile.am: Renamed gconf-gtk.[hc] to
6452 gconf-client.[hc] via CVS surgery, then updated Makefile.
6454 1999-10-21 Havoc Pennington <hp@pobox.com>
6456 * gconf/gconf.c (gconf_key_is_below): New function, tells you if a
6457 key is below another key in the directory hierarchy.
6459 1999-10-20 Havoc Pennington <hp@pobox.com>
6461 * gconf/gconfd.c, gconf/gconf-sources.c: Finish stuff from the
6462 17th (use GConfError throughout, etc.)
6464 * gconf/gconfd-error.h, gconf/gconfd-error.c: Remove the broken
6465 old error stuff, even gconfd no longer uses it.
6467 1999-10-17 Havoc Pennington <hp@pobox.com>
6469 * gconf/gconf-sources.c: Use GConfError** throughout, make the
6470 _source_ functions static
6471 (gconf_sources_query_value): Use the new flags and readable
6473 (gconf_sources_set_value): use the new flags and writeable
6476 * gconf/gconf-error.c (gconf_error_copy): new function
6477 (gconf_compose_errors): new function
6479 * backends/xml-backend.c: Throughout, use a GConfError** argument
6480 instead of the global errno thing
6482 * gconf/gconf-error.c (gconf_set_error): New function properly
6483 handles a GConfError** by setting error or ignoring if NULL,
6484 also warns if you "stack" two errors on top of each other.
6485 (gconf_clear_error): New function clears a GConfError**
6487 * gconf/gconfd.c: don't include gconfd-error.h
6489 * backends/xml-backend.c: Remove inclusion of gconfd-error.h
6491 * gconf/gconf-backend.h: Add lock/unlock and readable/writeable
6492 functions to the backend vtable, and add error arguments to
6493 all functions in the vtable.
6495 * gconf/gconfd.c (safe_g_hash_table_insert): priority GCL_WARNING
6497 * backends/xml-backend.c (safe_g_hash_table_insert): make
6498 it priority GCL_WARNING.
6500 * gconf/gconf-sources.h: GCONF_SOURCE_ALL_WRITEABLE,
6501 GCONF_SOURCE_ALL_READABLE flags to short-circuit calls to the new
6502 writeable/readable vtable functions.
6504 1999-10-17 Havoc Pennington <hp@pobox.com>
6506 * gconf/gconf-orbit.h: Include orb/orbit.h instead of GConf.h
6508 1999-10-17 Havoc Pennington <hp@pobox.com>
6510 * backends/xml-backend.c: Use %gconf.xml instead of .gconf.xml
6511 for the magic files.
6513 1999-10-17 Havoc Pennington <hp@pobox.com>
6515 * tests/runtests.sh: Make this script work
6517 * gconf/gconftool.c: Don't use -s for --spawn, since it's used for
6520 * gconf/gconf.c (gconf_get_config_server): Clear the error
6521 from the initial ping if we're asked to start the server.
6522 (gconf_engine_unref): No error spew if server is down when
6523 the engine is destroyed.
6525 Throughout: Make sure error is set but don't require a
6528 * gconf/gconf-internals.c (gconf_read_server_ior): Set error
6529 if the server info file doesn't exist
6531 * gconf/gconf.c (try_to_contact_server): Add a check for setting
6534 * gconf/gconftool.c (main): Switch to gconf_suggest_sync()
6535 instead of gconf_sync()
6537 * gconf/gconfd.c: Add a GConfContext::sync_idle field, to
6538 store the source ID of an idle function that performs a sync.
6539 (context_destroy): Remove the sync idle
6540 (context_hibernate): Check that sync idle is 0
6541 (context_sync): Add the sync idle if it doesn't exist
6543 * gconf/gconf.c (gconf_suggest_sync): gconf_sync() renamed to
6544 gconf_suggest_sync(), because a sync is for all clients;
6545 suggest_sync() means "I just finished a large block of operations,
6546 so I'm suggesting that it would be efficient and data-preserving
6547 to schedule a sync in the near future." gconf_sync() didn't
6548 make much sense because it was global, not per-client.
6550 1999-10-17 Havoc Pennington <hp@pobox.com>
6552 * For all files, s/G_CONF/GCONF
6554 1999-10-12 Havoc Pennington <hp@pobox.com>
6556 * gconf/gconfd.c: Use GConfListeners to handle listener
6557 registration and notification
6559 1999-10-12 Havoc Pennington <hp@pobox.com>
6561 * gconf/gconf-listeners.c (ltable_insert): Was failing to init
6562 the node in the flat array of nodes if the listener location
6564 (gconf_listeners_count): new function reports number of listeners
6565 (ltable_new): init next_cnxn to 1 instead of 0
6566 (ltable_remove): Do a better job of cleaning up dead
6567 tree nodes (go up looking for empty parent nodes)
6568 (ltable_destroy): type error, was calling listener_destroy()
6569 on the GNodes. Oops. fixed, now use g_node_traverse() to
6570 destroy the node contents.
6571 (ltable_new): don't create the root node until it's needed
6572 (ltable_insert): add root node here if needed
6573 (ltable_remove): zero lt->tree if we destroy it
6575 * tests/testlisteners.c: New test program for GConfListeners,
6576 fairly comprehensive
6578 * tests/Makefile.am: add testlisteners, put EFENCE at the end of
6581 1999-10-12 Havoc Pennington <hp@pobox.com>
6583 * gconf/Makefile.am: Fixes - remove some public headers from
6584 libgconf_client_SOURCES, look for GConf.idl in $(srcdir) (bug from
6587 * gconf/gconf-listeners.h, gconf/gconf-listeners.c: New files,
6588 compile but are not tested. Moves listener tree interface into
6589 a public header to re-use in GTK+ wrapper.
6591 1999-10-11 Havoc Pennington <hp@pobox.com>
6593 * For all files, s/g_conf/gconf
6595 1999-10-05 Havoc Pennington <hp@pobox.com>
6597 * tests/testgconf.c (check_list_storage): Add checks for empty
6598 lists, and all the various list types.
6600 * gconf/gconf-value.c (g_conf_value_to_string): Fix a segfault
6601 (not always allocating a large enough buffer)
6603 1999-10-05 Havoc Pennington <hp@pobox.com>
6605 * configure.in: 0.3, bump soname
6607 1999-10-04 Havoc Pennington <hp@pobox.com>
6609 * tests/testgconf.c (main): Add checks for getting/setting lists,
6610 bools, floats, and ints
6612 * gconf/gconf-internals.c (fill_corba_value_from_g_conf_value): We
6613 have to set the release flag on a sequence inside a union, since
6614 the sequence isn't default initialized as it normally would be.
6615 Plugs a big memory leak (all sequence buffers).
6617 * backends/xml-backend.c (dir_fill_cache_from_doc): Plug a leak
6618 where we set entry->name and then reset it in entry_fill()
6619 (entry_destroy): Free entry->mod_user
6620 (x_shutdown): Renamed shutdown() to x_shutdown() to avoid
6621 namespace clash with some libcs. Bug report from Bjorn Andersson
6624 * gconf/gconf-internals.c (g_conf_log): Plug memory leak (not
6627 * gconf/gconfd.c (gconfd_set): Plug memory leak (not freeing the GConfValue)
6629 * tests/Makefile.am: Make testgconf noinst
6631 * gconf/gconfd.c (main): check GCONFD_NO_DAEMON environment
6632 variable to run in no-daemon mode for debugging. Needless to say
6633 this does NOT work if you are trying to use gconf for real.
6635 * gconf/gconf-internals.c (fill_corba_value_from_g_conf_value):
6636 Fill in the list type in the CORBA value
6637 (g_conf_value_from_corba_value): Fill in the list type in the
6640 * gconf/GConf.idl: Create ConfigList type to past the list type
6641 along with the sequence of values
6643 * gconf/gconf-value.c (g_conf_value_set_list): New function, list
6644 setter that copies the list
6646 * gconf/gconf.c (g_conf_unset, g_conf_set): return boolean to
6649 * gconf/gconf-value.c (g_conf_value_new_from_string): Rewrite the
6650 bool string parser with switch, accept y/n as values.
6652 1999-10-01 Havoc Pennington <hp@pobox.com>
6654 * gconf/gconf-sources.c (g_conf_sources_query_value): Check for
6655 errors when we query the default value from the schema.
6657 * backends/xml-backend.c (entry_fill): If the schema key for a key is
6658 invalid, don't load it.
6660 1999-09-30 Havoc Pennington <hp@pobox.com>
6662 * gconf/gconf-sources.c (g_conf_key_check_hack): Clear error
6663 before we check the key
6665 * backends/xml-backend.c (dir_unset_value): Actually set the
6666 entry's value to NULL
6667 (entry_destroy): check whether Entry::value is NULL. Not sure
6668 why I didn't check; I think NULL is allowed, but if not
6669 we will have problems I guess.
6671 * tests/testgconf.c: Easiest to just write the test suite in
6672 C. Tests set/get and unset for strings so far.
6674 1999-09-29 Havoc Pennington <hp@pobox.com>
6676 * gconf/gconf.sgml: Update docs
6678 1999-09-29 Havoc Pennington <hp@pobox.com>
6680 * gconf/gconf-conf.h: Replaced with gconf-engine.h
6682 * gconf/Makefile.am: use gconf-engine.h
6684 * gconf/gconf.c, gconf/gconf.h, gconf/gconftool.c,
6685 gconf-editor/app.c, wrappers/guile/scm-gconf.c:
6686 Use GConfEngine name instead of GConf
6688 1999-09-29 Rodrigo Stulzer Lopes <rodrigo@conectiva.com.br>
6690 * configure.in: added pt_BR to ALL_LINGUAS
6692 1999-09-29 Havoc Pennington <hp@pobox.com>
6694 * backends/xml-backend.c: include gconfd-error.h and gconf.h,
6695 change error checking to new system as needed
6697 * gconf/Makefile.am: Put more stuff in gconfd_SOURCES instead of
6698 client lib, add new files
6700 * gconf/gconf-backend.h: include gconf-sources.h
6702 * gconf/gconf-conf.h: add error arg to g_conf_new_from_address
6704 * gconf/gconf-error.c: move strerror in here, fixups,
6707 * gconf/gconf-internals.c, gconf/gconf-sources.c: move all sources
6708 stuff to new gconf-sources file
6710 * gconf/gconf-orbit.c: Check for failure to get lock
6712 * All the rest of this giant diff: Move to new error-handling
6715 1999-09-26 Havoc Pennington <hp@pobox.com>
6717 * gconf/Makefile.am: add gconf-error.h, gconf-conf.h headers,
6720 * gconf/gconf-error.h, gconf/gconf-conf.h, gconf/gconf-value.c:
6721 New files, just rearranging old files, no new code (well, there is
6722 a new GConfError object but it's unused)
6724 * gconf/gconf-internals.c: Move the value, metainfo, and entry
6725 datatypes to gconf-value.c
6727 * gconf/gconf.c, gconf/gconf.h: Remove appname argument from
6728 g_conf_init(), remove g_conf_global_appname() function.
6730 * gconf/gconftool.c: don't pass appname to g_conf_init()
6732 * gconf-editor/gconf-editor.c: Ditto
6734 1999-09-25 Kjartan Maraas <kmaraas@online.no>
6736 * configure.in: Added "da" to ALL_LINGUAS.
6738 1999-09-19 Havoc Pennington <hp@pobox.com>
6740 * NEWS, README: put something in here
6742 * Makefile.am: conditionally include gconf-editor if we have
6745 * autogen.sh: make it more like "macros" autogen.sh
6747 * configure.in: manually check for GNOME instead of using
6750 * macros, intl: remove these subdirs, autogen.sh now
6753 * gconf/gconf.c: fix array size for strerror messages
6755 * gconf-editor/Makefile.am: use new GNOME variables
6757 * gconf-editor/gconf-editor.c: use new g_conf_init()
6760 * gconf-editor/menus.h, gconf-editor/menus.c: These
6763 1999-09-19 Havoc Pennington <hp@pobox.com>
6765 * gconf/gconf.h: Add G_CONF_OVERRIDDEN error if you try to
6766 set a value which will have no effect due to a read-only
6767 setting earlier in the path.
6769 * gconf/gconf.c: Add G_CONF_OVERRIDDEN to strerror, etc.
6771 * gconf/GConf.idl: add ConfigOverridden to pass it across the
6774 * doc/gconf.sgml: Add more stuff to docs
6776 1999-09-17 Havoc Pennington <hp@pobox.com>
6778 * gconf/gconf-internals.c (subst_variables): Add a new function to
6779 perform variable substitution on addresses in the path file.
6780 Supports $(HOME), $(USER), and $(ENV_ANYENVVARNAME)
6782 * Makefile.am: Add "doc" subdir
6784 * doc/Makefile.am: Added
6786 * doc/gconf.sgml: write more docs
6788 1999-09-03 Havoc Pennington <hp@pobox.com>
6790 * configure.in: Set library version info variables, and locate
6791 Guile libraries, etc.
6793 * wrappers/Makefile.am: conditionally build Guile subdir if we
6796 * wrappers/guile: new subdir with the basic files/build for Guile
6797 bindings, will add the actual bindings later.
6799 1999-09-03 Havoc Pennington <hp@pobox.com>
6801 * configure.in: set POPT_LIBS instead of adding -lpopt to generic
6802 LDFLAGS; this was causing libtool to fail to generate the .so
6803 file for the XML backend module.
6805 * gconf/Makefile.am: use POPT_LIBS
6807 * gconf/gconf-backend.c: change some g_warning to g_conf_log
6809 1999-09-03 Havoc Pennington <hp@pobox.com>
6811 * gconf/gconfd.c: Every hour or so, hibernate all contexts that
6812 haven't been accessed in 45 minutes. Make some assorted changes
6815 1999-09-02 Havoc Pennington <hp@pobox.com>
6817 * gconf/gconf-internals.h, gconf/gconf-internals.c: Add a new
6818 g_conf_log() function for logging errors in backends;
6819 for now this wraps syslog() but if we eventually have non-daemon
6820 direct access to backends, we will need to change it. Use
6821 g_conf_log() throughout this file instead of printf() and
6824 * gconf/backends/xml-backend.c: Install a timeout which cleans
6825 old stuff out of the cache every 5 minutes; use g_conf_log
6828 * gconf/gconfd.c: Use g_conf_log(); log "exiting" later than we
6829 had been, after shutting everything down.
6831 1999-09-02 Havoc Pennington <hp@pobox.com>
6833 * backends/Makefile.am: Install backends in $(libdir)/gconf
6835 * gconf/Makefile.am: Look for backends in $(libdir)/gconf
6837 * gconf/gconf-backend.c (g_conf_backend_file): Use
6838 g_module_build_path() to build the module path
6840 * gconf/gconf-orbit.c (g_conf_get_cookie_reliably): Make the
6841 ~/.gconfd directory if necessary.
6843 Lots of error-checking added.
6845 * gconf/gconfd.c: Mark a lot of strings for translation; include
6846 username in the syslog spew.
6848 1999-09-02 Havoc Pennington <hp@pobox.com>
6850 * gconf/gconfd.c (main): If the orb init fails, syslog the
6853 * gconf/gconf-orbit.c: Add tons of error checks/reports
6855 1999-09-01 Tim P. Gerla <timg@means.net>
6857 * configure.in: Added test for popt.
6859 1999-09-01 Havoc Pennington <hp@pobox.com>
6861 * backends/xml-backend.c (dir_get_value): Fix a segfault, check
6862 that an Entry != NULL before dereferencing it
6864 * GConf.idl: Add ConfigException and ConfigErrorType to pass
6865 errors from server to client
6867 * gconf.c (g_conf_handle_corba_exception): set the GConf error
6868 based on CORBA error, if any, and free the exception.
6869 Use throughout the file to receive server errors.
6871 * gconfd.c (g_conf_set_exception): set the CORBA exception based
6872 on the GConf error, if any. Use this function throughout the file
6873 to send errors to clients.
6874 (g_conf_nuke_dir): Remove this obsolete function
6875 (context_set): don't notify listeners of a change if an error
6878 1999-09-01 Havoc Pennington <hp@pobox.com>
6880 * configure.in: add gmodule check to AM_PATH_GLIB, add an error if
6881 glib isn't found, use detected $XML_CONFIG to instead of
6882 xml-config, AC_PATH_PROG orbit-config, check for C++ compiler
6883 (since we'll have a C++ wrapper soon)
6885 * gconf/Makefile.am: Assume GMODULE_CFLAGS are now included in
6886 GLIB_CFLAGS since we fixed configure.in
6888 * gconf/gconf.c, gconf/gconf.h: Reference count the GConf object,
6889 add extern "C" when using C++
6891 * gconf/gconftool.c: unref instead of destroying the GConf object
6893 1999-08-31 Dave Camp <campd@oit.edu>
6895 * gconf/gconf.c (g_conf_is_initialized): New function.
6897 1999-08-31 Dave Camp <campd@oit.edu>
6899 * gconf/gconftool.c (main): Changed --dir-exists to return 0 if
6900 the dir exists, and 2 if it does not.
6902 1999-08-31 Dave Camp <campd@oit.edu>
6904 * gconf/gconftool.c (options): Added "--dir-exists".
6905 (main): If dir_exists is on the command line, check if the argument dir
6908 * gconf/gconfd.c (server_epv): Added gconfd_dir_exists.
6909 (gconfd_dir_exists): New function.
6910 (context_dir_exists): New function.
6912 * gconf/gconf.c (g_conf_dir_exists): New function.
6914 * gconf/gconf-internals.c (g_conf_sources_dir_exists): New function.
6915 (g_conf_source_dir_exists): New function.
6917 * gconf/gconf-backend.h (GConfBackendVTable): Added a dir_exists
6920 * gconf/GConf.idl (dir_exists): New function.
6922 * backends/xml-backend.c (dir_exists): New function.
6923 (xml_vtable): Added dir_exists.
6925 1999-08-30 Dave Camp <campd@oit.edu>
6927 * gconf/gconf.h: #include gconf-orbit.h.
6929 * gconf/Makefile.am (gconfinclude_HEADERS): Install gconf-orbit.h,
6932 1999-08-29 Dave Camp <campd@oit.edu>
6934 * Makefile.am (bin_SCRIPTS): Install gconf-config.
6936 * configure.in (AC_OUTPUT): Create gconf-config.
6938 * gconf/Makefile.am: Install gconf.h and gconf-schema.h.
6941 1999-08-29 Dave Camp <campd@oit.edu>
6943 * configure.in (XML_LIBS): Use xml-config.
6945 1999-08-29 Kjartan Maraas <kmaraas@online.no>
6947 * configure.in: Added "no" to ALL_LINGUAS