Initialize Tizen 2.3
[framework/base/gconf-dbus.git] / ChangeLog
1 2008-09-11  Richard Hult  <richard@imendio.com>
2
3         * Release 2.16.0 of the dbus version.
4
5 2008-09-11  Richard Hult  <richard@imendio.com>
6
7         * gconf/Makefile.am (DISTCLEANFILES): Add generated dbus service
8         file.
9
10 2008-05-15  Richard Hult  <richard@imendio.com>
11
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
15         sources.
16
17 2008-05-09  Richard Hult  <richard@imendio.com>
18
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).
23
24 2008-03-31  Richard Hult  <richard@imendio.com>
25
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
29         sources.
30
31 2008-03-05  Richard Hult  <richard@imendio.com>
32
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.
36
37 2008-02-07  Richard Hult  <richard@imendio.com>
38
39         * backends/Makefile.am: Patch from Ross Burton to fix build with
40         --as-needed.
41
42 2008-01-28  Richard Hult  <richard@imendio.com>
43
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.
46
47 2007-12-11  Richard Hult  <richard@imendio.com>
48
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.
52
53 2007-11-10  Richard Hult  <richard@imendio.com>
54
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
59         macros).
60
61 2007-06-27  Richard Hult  <richard@imendio.com>
62
63         * gconf/gconf-database-dbus.c: (database_message_func),
64         (database_handle_suggest_sync):
65         * gconf/gconf-dbus.c: (gconf_engine_suggest_sync): Implement
66         suggest_sync.
67
68 2007-06-27  Richard Hult  <richard@imendio.com>
69
70         * backends/Makefile.am: Patch from Ronald Bultje to fix
71         portability.
72
73 2007-06-27  Richard Hult  <richard@imendio.com>
74
75         * gconf/gconf-database-dbus.c (database_handle_set_schema): Empty
76         schema name means unset.
77
78 2007-05-24  Richard Hult  <richard@imendio.com>
79
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).
84
85 2007-05-22  Richard Hult  <richard@imendio.com>
86
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.
91         
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.
96         
97         * gconf/gconf-dbus.c: (gconf_engine_is_local):
98         * gconf/gconfd-dbus.c: (gconfd_dbus_get_connection): Remove
99         obsolete comments.
100
101 2007-05-21  Richard Hult  <richard@imendio.com>
102
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.
107
108 2007-05-15  Richard Hult  <richard@imendio.com>
109
110         * dbus-tests/test-stale-value-bug.c: Improve the test.
111
112         * gconf/gconf-client.c (remove_key_from_cache_recursively_foreach)
113         (remove_key_from_cache_foreach): Fix the checks for keys to
114         remove.
115
116 2007-01-19  Richard Hult  <richard@imendio.com>
117
118         * gconf/gconftool.c: (main): Back out the "killall" change and put
119         in a patch instead.
120
121 2007-01-17  Richard Hult  <richard@imendio.com>
122
123         * dbus-tests/run-all.sh: Add test that can be used to hammer the
124         library and daemon.
125         
126         * gconf/gconf-database-dbus.c: (database_handle_lookup_ext): Fix
127         small leak.
128         
129         * gconf/gconf-database.c: (source_notify_cb),
130         (gconf_database_unset), (gconf_database_recursive_unset): Plug
131         small leaks.
132
133         * gconf/gconf-value.c: Fix leaks (bug filed upstream).
134
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
137         quitting on maemo.
138
139 2007-01-17  Richard Hult  <richard@imendio.com>
140
141         * gconf/gconf-database.c (gconf_database_unset): Fix a leaked
142         GConfValue when unsetting a value.
143
144         * dbus-tests/test-schema-bug.c: Add new test for testing another
145         schema usage.
146
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
149         reload flag.
150
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).
154
155 2007-01-17  Richard Hult  <richard@imendio.com>
156
157         NOTE: This change is just inserted here so that it's not missed
158         when listing changes against upstream.
159
160         Back out this, since it's wrong. I've commented in bugzilla upstream.
161         
162         * gconf/gconf-client.c: Fix error handling in the
163         getters.  (#102050, #360224)
164
165 2007-01-17  Richard Hult  <richard@imendio.com>
166
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.
171
172 2007-01-11  Richard Hult  <richard@imendio.com>
173
174         * gconf/gconfd.c (gconf_main): Disable the 30 second cleanup
175         timeout, and rely on gconftool killing the daemon instaead:
176
177         * gconf/gconftool.c (main): Kill the daemon after installing /
178         uninstalling schemas.
179
180 2007-01-10  Richard Hult  <richard@imendio.com>
181
182         * dbus-tests/test-stale-value-bug.c: Expand test.
183
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
196         iteration.
197
198 2007-01-09  Richard Hult  <richard@imendio.com>
199
200         * dbus-tests/test-stale-value-bug.c: Add more tests here for
201         various types and set/unset operations.
202
203 2006-12-07  Richard Hult  <richard@imendio.com>
204
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
207         version.
208         - Change the CORBA defines to be consistent.
209
210         * dbus-tests: Add some tests made specifically for this version.
211         
212 2006-12-07  Richard Hult  <richard@imendio.com>
213
214         * Start maemo specific changes.
215
216 ===========================================================
217
218 2006-10-07  Matthias Clasen <mclasen@redhat.com>
219
220         * gconf/gconf-client.c: Fix error handling in the
221         getters.  (#102050, #360224)
222
223 ============================= 2.16.0 ======================
224
225 2006-08-15  Kjartan Maraas  <kmaraas@gnome.org>
226
227         * configure.in: Fix intltool req.
228
229 2006-08-08  Kjartan Maraas  <kmaraas@gnome.org>
230
231         * doc/gconftool-2.1: Add missing newline (Loïc Minier,
232         Jan Kratochvil) Closes bug #304143.
233
234 2006-08-07  Alexander Larsson  <alexl@redhat.com>
235
236         * configure.in:
237         Don't link to libpopt. (#336307)
238         Patch from William Jon McCann.
239
240 2006-06-14  Michael Meeks  <michael.meeks@novell.com>
241
242         * gconf/GConfX.idl: declare that we raise the
243         exception we raise - fixes debug issue in sabayon &
244         kills syslog spew:
245         gconfd (sabayon-admin): Some clown returned
246         undeclared exception 'IDL:ConfigException:1.0'
247         cf. gconfd_get_database.
248
249 2006-05-12  Julio M. Merino Vidal  <jmmv@NetBSD.org>
250
251         * configure.in:
252         * gconf/Makefile.am:
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.
258
259 2006-05-07  Kjartan Maraas  <kmaraas@gnome.org>
260
261         * Makefile.am: Add intltool files to EXTRA_DIST and
262         DISTCLEANFILES.
263         * autogen.sh: Run intltoolize.
264         * configure.in: Fix the po/LINGUAS stuff.
265
266 2006-05-06  Kjartan Maraas  <kmaraas@gnome.org>
267
268         * backends/xml-dir.c: (dir_sync): Fix a potential use after free
269         reported by the coverity checker - #1239. Closes bug #338196.
270
271 2006-05-05  Kjartan Maraas  <kmaraas@gnome.org>
272
273         * configure.in:
274         * gconf/Makefile.am:
275         * gconf/gconf-sanity-check.c: (main):
276         * gconf/gconftool.c: (main):
277         Migrate to GOption. Patch by Vincent Vuntz. Closes
278         bug #336307.
279
280 2006-05-05  Kjartan Maraas  <kmaraas@gnome.org>
281
282         * configure.in: Reinstate the previous patch.
283         * po/LINGUAS: Same.
284
285 2006-05-05  Kjartan Maraas  <kmaraas@gnome.org>
286
287         * configure.in: Revert the LINGUAS patch until we have branched.
288         * po/LINGUAS: Remove temporarily.
289
290 2006-05-05  Kjartan Maraas  <kmaraas@gnome.org>
291
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.
295
296 2006-05-05  Kjartan Maraas  <kmaraas@gnome.org>
297
298         * configure.in: Move to the new LINGUAS handling.
299         * po/LINGUAS: Patch from Luis Menina. Closes bug #338036.
300
301 2006-05-05  Julio M. Merino Vidal  <jmmv@NetBSD.org>
302
303         * configure.in: Fix staged installation if sysconfdir is overriden
304         from the command line. Closes bug #336019.
305
306 2006-05-05  Kjartan Maraas  <kmaraas@gnome.org>
307
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.
311
312 2006-05-05  Kjartan Maraas  <kmaraas@gnome.org>
313
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:
323         * gconf/gconf.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.
327
328 2006-05-05  Kjartan Maraas  <kmaraas@gnome.org>
329
330         * backends/markup-tree.c: (parse_value_element):
331         Use the right variable in test. Closes coverity #1238
332         and GNOME bug #338195.
333
334 2006-04-17  Kjartan Maraas  <kmaraas@gnome.org>
335
336         * configure.in: Remove obsolete entry for no_NO.
337         * po/no.po: And the translation.
338
339 2006-03-18  Guilherme de S. Pastore  <gpastore@gnome.org>
340
341         * NEWS: updated.
342
343         * configure.in: version 2.14.0.
344
345 2006-03-10  Kjartan Maraas  <kmaraas@gnome.org>
346
347         * backends/markup-tree.c: (parse_tree): Patch from
348         Matthias Clasen to fix my leak fix to not crash.
349         Closes bug #334047.
350
351 2006-03-06  Kjartan Maraas  <kmaraas@gnome.org>
352
353         * backends/markup-tree.c: (parse_tree): Free the parse context in
354         some more cases. Fixes bug #332528.
355
356 2006-03-06  Mark McLoughlin  <mark@skynet.ie>
357
358         Based on patch from Josselin Mouette <joss@debian.org>
359         in bug #333353 to speed up the install of multiple
360         schem files
361
362         * gconf/gconftool.c: 
363         (do_load_file): split do_sync() out of here
364         (main), (do_makefile_install): call do_sync()
365         after calling do_load_file()
366
367 2006-03-06  Mark McLoughlin  <mark@skynet.ie>
368
369         Patch from Christopher.Hanna@sun.com
370
371         * doc/gconftool-2.1: improved man page
372
373 2006-02-17  Benoît Dejean  <benoit@placenet.org>
374
375         * configure.in:
376         * gconf/gconf-value.c: (gconf_value_new), (gconf_value_free),
377         (gconf_entry_new_nocopy), (gconf_entry_unref): Use new g_slice API.
378
379 2006-01-28  Benoît Dejean  <benoit@placenet.org>
380
381         * gconf/gconf-schema.c:
382         * gconf/gconf-value.c: Got rid of padding members in private structs.
383
384 2006-01-27  Tor Lillqvist  <tml@novell.com>
385
386         * gconf-zip.in: Include backend DLLs only in the runtime zipfile.
387
388         * gconf/gconfd.c (main): Don't call closelog() unless we HAVE_SYSLOG_H.
389
390 2006-01-15  Mark McLoughlin  <mark@skynet.ie>
391
392         * configure.in: post-release bump to 2.13.6.
393         
394 ==================== 2.13.5 ====================
395
396 2006-01-15  Mark McLoughlin  <mark@skynet.ie>
397
398         * configure.in: Version 2.13.5.
399
400 2006-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
401
402         * backends/Makefile.am:
403           don't use top_builddir to link in library from current directory;
404           fixes parallel make
405
406 2006-01-05  Vincent Untz  <vuntz@gnome.org>
407
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
411         in this directory
412         Fix bug #127285.
413
414 2006-01-05  Tor Lillqvist  <tml@novell.com>
415
416         * gconf-zip.in: Include the backend DLLs in the runtime zipfile.
417
418 2006-01-03  Mark McLoughlin  <mark@skynet.ie>
419
420         Switch on "subtree merging" by default in the defaults
421         database.
422
423         * gconf/gconftool.c: (do_get_default_source): add the
424         "merged" flag to the default target for
425         --makefile-install-rule
426         
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
430         a subtree.
431         
432         * backends/markup-tree.[ch]:
433         (markup_tree_get): add "merged" param and set flag
434         on MarkupTree struct
435         (recursively_load_subtree): copy function from
436         gconf-merge-tree.c
437         (markup_dir_sync): when saving the tree, save it as a
438         merged subtree if the "merged" flag is set
439         
440         * backends/gconf-merge-tree.c: (recursively_load_subtree):
441         remove; it's in markup-tree.c now
442         
443         * configure.in: remove --enable-gconf-source option which
444         was only used when we installed standard-schemas
445         
446         * standard-schemas: remove old cruft
447
448 2006-01-03  Mark McLoughlin  <mark@skynet.ie>
449
450         Pointed out by Nicolas Peninguy <npeniguy@gmail.com>
451         in bug #323509
452
453         * gconf/gconf-internals.c: (gconf_value_decode): fix crasher
454         with previous fix for decoding schemas
455
456 2005-12-30  Abel Cheung  <maddog@linuxhall.org>
457
458         * configure.in: Added "is" "zh_HK" to ALL_LINGUAS.
459
460 2005-12-11  Mark McLoughlin  <mark@skynet.ie>
461
462         * backends/markup-tree.c:
463         (markup_entry_get_value): re-work the logic for finding
464         the best schema for the given locales.
465         
466 2005-12-11  Mark McLoughlin  <mark@skynet.ie>
467
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
477           descriptions
478         - When syncing a subtree, write out all translations
479           of descriptions which are currently cached in memory
480           to separate files.
481
482         * backends/gconf-merge-tree.c: (merge_tree): update for
483         markup_dir_build_file_path() change
484
485 2005-12-09  Jorn Baayen  <jorn@openedhand.com>
486
487         * gconf/gconf-internals.h:
488         * gconf/gconf-value.h:
489         Publicize gconf_value_compare() and gconf_entry_equal().
490         Closes bug #322832.
491
492 2005-12-09  Mark McLoughlin  <mark@skynet.ie>
493
494         * configure.in: post-branch bump to 2.13.1
495
496 2005-12-08  Kjartan Maraas  <kmaraas@gnome.org>
497
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.
501
502 2005-12-08  Dan Williams  <dcbw@redhat.com>
503
504         * gconf/gconf.c: (gconf_unescape_string): Don't stomp on
505           the function-level scoped 'end' from deep in the function.
506           Fixes a segfault.
507
508 2005-11-11  Dinoop Thomas  <dinoop.thomas@wipro.com>
509         
510         * gconf/gconf.c: (gconf_debug_shutdown): Corrected documentation.
511         * doc/gconf/gconf-sections.txt: Included the functions for which doc was
512           newly added.
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.
522
523 2005-11-08  Mark McLoughlin  <mark@skynet.ie>
524
525         Patch from Jens Granseuer <jensgr@gmx.net> in bug #320852
526
527         * gconf/gconf-listeners.c: (ltable_insert): remove C99
528         usage.
529
530 2005-11-03  Alexander Larsson  <alexl@redhat.com>
531
532         * configure.in:
533         Post release version bump
534
535 ==================== 2.12.1 ====================
536         
537 2005-11-03  Alexander Larsson  <alexl@redhat.com>
538
539         * NEWS:
540         Update for release
541
542 2005-11-01  Kjartan Maraas  <kmaraas@gnome.org>
543
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
550         unreachable code.
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.
557
558 2005-10-28  Erdal Ronahi  <erdal.ronahi@gmail.com>
559
560         * configure.in: Added ku (Kurdish) to ALL_LINGUAS
561
562 2005-10-27  Alexander Larsson  <alexl@redhat.com>
563
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.
567
568 2005-10-18  Tor Lillqvist  <tml@novell.com>
569
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).
573
574 2005-10-09  Mark McLoughlin  <mark@skynet.ie>
575
576         Based on patch from Lorenzo Colitti <lorenzo@colitti.com>
577         in bug #316673
578
579         * backends/markup-tree.c: (parse_tree): read and process
580         the xml file incrementally in 4k chunks.
581
582 2005-09-13  Stepan Kasal  <kasal@ucw.cz>
583
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.
590
591 2005-09-10  Tor Lillqvist  <tml@novell.com>
592
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.
597
598         * gconf/gconf-sanity-check.c: Use gstdio wrappers here, too.
599
600         * backends/markup-backend.c (get_dir_from_address): Use
601         G_IS_DIR_SEPARATOR().
602
603 2005-09-06  Mark McLoughlin  <mark@skynet.ie>
604
605         * configure.in: post-release bump to 2.12.1.
606         
607 ==================== 2.12.0 ====================
608
609 2005-09-06  Mark McLoughlin  <mark@skynet.ie>
610
611         * configure.in: Version 2.12.0.
612
613 2005-08-29  Tor Lillqvist  <tml@novell.com>
614
615         * gconf-zip.in: Use correct capitalization of GConf in the zipfile
616         names.
617
618 2005-08-22  Mark McLoughlin  <mark@skynet.ie>
619
620         * configure.in: post-release bump to 2.11.93.
621         
622 ==================== 2.11.92 ====================
623
624 2005-08-22  Mark McLoughlin  <mark@skynet.ie>
625
626         * configure.in: Version 2.11.92.
627
628 2005-08-10  Adam Weinberger  <adamw@gnome.org>
629
630         * backends/evoldap-backend.c: Minor spelling fix
631           and capitalization tweak (fixes bug #301133)
632
633 2005-07-25  Mark McLoughlin  <mark@skynet.ie>
634
635         * configure.in: post-release bump to 2.11.91.
636
637 ==================== 2.11.90 ====================
638
639 2005-07-25  Mark McLoughlin  <mark@skynet.ie>
640
641         * configure.in: Version 2.11.90.
642
643 2005-07-14  Aivars Kalvans <aivars.kalvans@inbox.lv>
644
645         Reduce number g_string_append_c() calls (bug#309760)
646
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()
651         to read a line
652
653 2005-07-13  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>
654
655         * gconf/gconf-client.c (gconf_client_notify):
656         s/g_entry_unref/gconf_entry_unref (a typo).
657
658 2005-07-13  Aivars Kalvans <aivars.kalvans@inbox.lv>
659         
660         * gconf/gconf-client.c (gconf_client_notify): unref GConfEntry
661         after notifying client. Fixes bug #158756
662
663 2005-06-21  Mark McLoughlin  <mark@skynet.ie>
664
665         * configure.in: require glib 2.7.0
666         
667 2005-06-21  Mark McLoughlin  <mark@skynet.ie>
668
669         Patch from Marcus Meissner <meissner@suse.de> in
670         bug #308448
671
672         * gconf/gconf-changeset.h,
673           gconf/gconf-client.h: use G_GNUC_NULL_TERMINATED for
674         gconf_(client|engine)_change_set_from_current()
675
676 2005-06-18  Aivars Kalvans <aivars.kalvans@inbox.lv>
677
678         * gconf/gconf-sources.c (gconf_source_free): free ->address
679         Fixes bug #307887
680
681 2005-06-17  Theppitak Karoonboonyanan  <thep@linux.thai.net>
682
683         * configure.in: Added 'th' (Thai) to ALL_LINGUAS.
684
685 2005-06-13  Mark McLoughlin  <mark@skynet.ie>
686
687         Fixes bug #306937 - gconfd-2 not shutting down when its
688         no longer in use.
689
690         * gconf/gconfd.c: (no_databases_in_use): account for the
691         fact that the default database is on the global list of
692         databases now too.
693
694 2005-06-08  Tor Lillqvist  <tml@novell.com>
695
696         * configure.in: Require GLib 2.6.0 so we can use the "gstdio
697         wrappers".
698
699         * backends/*.c
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.
703
704         * gconf/Makefile.am: Append EXEEXT to gconfd's name.
705
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.
710
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
715         run-time pathnames.
716
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.
720
721 2005-05-17  Mark McLoughlin  <mark@skynet.ie>
722
723         * configure.in: post-release bump to 2.11.2.
724
725 ==================== 2.11.1 ====================
726
727 2005-05-17  Mark McLoughlin  <mark@skynet.ie>
728
729         * configure.in: Version 2.11.1.
730         
731 2005-05-17  Mark McLoughlin  <mark@skynet.ie>
732
733         * backends/README.evoldap: update.
734
735 2005-05-17  Mark McLoughlin  <mark@skynet.ie>
736
737         Re-work a bit so it now supports putting the addressbook,
738         calendar and task sources in LDAP.
739
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
745         any template.
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.
753         
754         * backends/evoldap.conf: change the format slightly to add
755         templates for addressbook, calendar and tasks.
756         
757         * backends/evoldap.schema: add new schema.
758
759 2005-05-09  Mark McLoughlin  <mark@skynet.ie>
760
761         Update to use GNOME OIDs as assigned by 
762         Jochen Friedrich <jochen@scram.de>
763
764         * backends/evoldap.schema: use GNOME OIDs.
765
766 2005-05-06  Mark McLoughlin  <mark@skynet.ie>
767
768         Small fix for previous commit.
769
770         * gconf/gconfd.c: (gconfd_notify_other_listeners):
771         Don't try and free a NULL GConfValue.
772
773 2005-05-06  Mark McLoughlin  <mark@skynet.ie>
774
775         Fix for crasher based on patch from Josselin Mouette <joss@debian.org>
776         in bug #158917
777
778         * gconf/gconfd.c: (gconfd_notify_other_listeners): if the
779         value is unset, create an InvalidVal ConfigValue.
780
781 2005-04-27  Mark McLoughlin  <mark@skynet.ie>
782
783         * backends/Makefile.am: link the evoldap backend with libxml.
784
785 2005-04-25  Mark McLoughlin  <mark@skynet.ie>
786
787         Pointed out by Gustavo Carneiro <gjc@inescporto.pt> in
788         bug #300804
789
790         * gconf/gconf-enum-types.[ch]: run "make regenerate-built-sources"
791         so that we get GCONF_TYPE_UNSET_FLAGS.
792         
793         * gconf/gconf-error.h,
794           gconf/gconf-value.h: remove unneccessary glib-mkenums options
795         from C comment.
796         
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.
801
802 2005-04-18  Mark McLoughlin  <mark@skynet.ie>
803
804         * backends/evoldap-backend.c, backends/evoldap.conf,
805           backends/evoldap.schema, backends/README.evoldap:
806         Add Evolution mail account LDAP backend.
807         
808         * configure.in, backends/Makefile.am: build the backend
809         if we can find the openldap library and header.
810
811 2005-05-07  Gareth Owen  <gowen72@yahoo.com>
812
813         * po/en_GB.po: Updated British English translation.
814
815 2005-04-04  Mark McLoughlin  <mark@skynet.ie>
816
817         Patch from Stepan Kasal  <kasal@ucw.cz>
818
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.
824
825 2005-03-30  Steve Murphy  <murf@e-tools.com>
826
827         * configure.in: Added "rw" to ALL_LINGUAS.
828
829 2005-03-27  Tor Lillqvist  <tml@novell.com>
830
831         * configure.in: Apparently AC_LIBTOOL_WIN32_DLL isn't deprecated
832         after all, and in fact necessary with HEAD libtool.
833
834 2005-03-23  Tor Lillqvist  <tml@novell.com>
835
836         * gconf/gconfd.c (test_safe_tmp_dir): Nah, stat() isn't useful for
837         permission checking on Win32. Bypass for now on Win32.
838
839 2005-03-18  Tor Lillqvist  <tml@novell.com>
840
841         Port to Windows:
842         
843         * gconf-zip.in: New file, script to build zipfile-based
844         distribution for Windows.
845
846         * Makefile.am
847         * configure.in: Distribute and expand it.
848
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.
852
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.
856         
857         * backends/Makefile.am: Explicitly link with INTLLIBS.
858
859         * backends/markup-tree.c (save_tree): Can't rename or remove open
860         files on Win32.
861
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
865         feature.
866
867         * gconf/Makefile.am: Pass -DPREFIX=$(prefix). Include dllmain.c
868         on Win32.
869
870         * gconf/dllmain.c: New file. Used for installation location
871         independence.
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.
878
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
882         g_get_home_dir().
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
887         Win32.
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
890         anyway.
891
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.
897
898         * gconf/gconf-sanity-check.c
899         * gconf/gconftool.c: Use POPT_AUTOHELP.
900
901         * gconf/gconf.c: Use g_get_current_time() instead of gettimeofday().
902
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.
910
911 2005-03-14  Mark McLoughlin  <mark@skynet.ie>
912
913         * acinclude.m4: remove - we don't use anything from
914         it anymore. Fixes bug #153049
915
916 2005-03-14  Mark McLoughlin  <mark@skynet.ie>
917
918         * configure.in: bump version to 2.11.1 after branching.
919
920 2005-03-07  Mark McLoughlin  <mark@skynet.ie>
921
922         * configure.in: post-release bump to 2.10.1.
923
924 ==================== 2.10.0 ====================
925
926 2005-03-07  Mark McLoughlin  <mark@skynet.ie>
927
928         * configure.in: Version 2.10.0.
929
930 2005-02-16  Adi Attar  <aattar@cvs.gnome.org>
931
932         * configure.in: Added "xh" to ALL_LINGUAS.
933
934 2005-02-07  Mark McLoughlin  <mark@skynet.ie>
935
936         * configure.in: post-release bump to 2.9.92.
937
938 ==================== 2.9.92 ====================
939
940 2005-02-07  Mark McLoughlin  <mark@skynet.ie>
941
942         * configure.in: Version 2.9.91.
943
944 2005-02-06  Mark McLoughlin  <mark@skynet.ie>
945
946         Fix bug #154005 - "preload breaks saved state", caused
947         by a bug in the way the listeners tree was constructed.
948
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 
952         path for that entry.
953         (ltable_insert): update for above so that we
954         don't pass use the wrong path for full_name.
955
956 2005-01-18  Mark McLoughlin  <mark@skynet.ie>
957
958         Fixes problem where a path file which only includes
959         another path file wouldn't work.
960
961         * gconf/gconf-internals.c: (gconf_load_source_path):
962         assign the return value of g_slist_concat() to something.
963
964 2005-01-17  Mark McLoughlin  <mark@skynet.ie>
965
966         Fix double free with gconf_client_clear_cache()
967
968         * gconf/gconf-client.c: (clear_cache_foreach): don't
969         free the key explicitly - the key is owned by the
970         GConfEntry.
971
972 2005-01-12  Vincent Untz  <vincent@vuntz.net>
973
974         * gconf-value.c: (gconf_value_validate): add sanity check
975
976 2004-11-30  Mark McLoughlin  <mark@skynet.ie>
977
978         * configure.in: post-release bump to 2.9.3.
979
980 ==================== 2.9.2 ====================
981
982 2004-11-30  Mark McLoughlin  <mark@skynet.ie>
983
984         * configure.in: Version 2.9.2.
985
986 Tue Nov 16 12:24:26 2004  Jonathan Blandford  <jrb@redhat.com>
987
988         * doc/gconf/gconf-docs.sgml: add a title/name instead of [Insert
989         name here]
990
991 2004-11-02  Fernando Herrera  <fherrera@onirica.com>
992
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.
996
997 2004-11-02  Fernando Herrera  <fherrera@onirica.com>
998
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
1001
1002 2004-10-12  Mark McLoughlin  <mark@skynet.ie>
1003
1004         * configure.in: post-release bump to 2.8.2.
1005
1006 ==================== 2.8.1 ====================
1007
1008 2004-10-12  Mark McLoughlin  <mark@skynet.ie>
1009
1010         * configure.in: Version 2.8.1.
1011
1012 2004-10-04  Mark McLoughlin  <mark@skynet.ie>
1013
1014         GConf part of fix for gconf-editor spewing warnings
1015         on startup. See bug #144833.
1016
1017         * backends/markup-backend.c: (resolve_address): if the
1018         toplevel directory isn't writable, mark the whole source
1019         as non-writable.
1020
1021 2004-09-30  Kjartan Maraas  <kmaraas@gnome.org>
1022
1023         * gconf/gconf-internals.c: (gconf_activate_server):
1024         Fix pipe misuse reported by valgrind. Suggested fix
1025         by Mark McLoughlin. Closes bug #153929.
1026
1027 2004-09-28  Kjartan Maraas  <kmaraas@gnome.org>
1028
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.
1032
1033 2004-09-28  Mark McLoughlin  <mark@skynet.ie>
1034
1035         Leak identified by Kjartan in bug #153891.
1036
1037         * gconf/gconfd.c: (gconf_server_load_sources):
1038         Plug leak.
1039         
1040         * gconf/gconf-internals.c:
1041         (gconf_load_source_path): remove some crufty code,
1042         don't unneccessarily copy strings.
1043
1044 2004-09-14  Mark McLoughlin  <mark@skynet.ie>
1045
1046         * configure.in: post-release bump to 2.8.1.
1047
1048 ==================== 2.8.0.1 ====================
1049
1050 2004-09-13  Mark McLoughlin  <mark@skynet.ie>
1051
1052         * configure.in: Version 2.8.0.1.
1053
1054 2004-09-14  Mark McLoughlin  <mark@skynet.ie>
1055
1056         * autogen.sh: use automake 1.7 and run gtkdocize.
1057         
1058         * configure.in: check for glib-genmarshal and use 
1059         GTK_DOC_CHECK.
1060         
1061         * Makefile.am: add --enable-gtk-doc to 
1062         DISTCHECK_CONFIGURE_FLAGS.
1063         
1064         * gconf/Makefile.am: re-do how the marshallers
1065         are generated.
1066         
1067         * doc/gconf/Makefile.am: use gtk-doc.make.
1068
1069         * doc/gconf/gconf.sgml: tweak to validate.
1070
1071         * backends/Makefile.am: make xml-test link
1072         against the backend rather than rebuilding
1073         the sources.
1074
1075         * gconf-2.m4.in: rename from gconf.m4.in.
1076
1077 2004-09-13  Mark McLoughlin  <mark@skynet.ie>
1078
1079         * configure.in: post-release bump to 2.8.1.
1080
1081 ==================== 2.8.0 ====================
1082
1083 2004-09-13  Mark McLoughlin  <mark@skynet.ie>
1084
1085         * configure.in: Version 2.8.0.
1086
1087 2004-08-30  Mark McLoughlin  <mark@skynet.ie>
1088
1089         * configure.in: post-release bump to 2.7.93.
1090
1091 ==================== 2.7.92 ====================
1092
1093 2004-08-30  Mark McLoughlin  <mark@skynet.ie>
1094
1095         * configure.in: Version 2.7.92.
1096         
1097 2004-08-30  Mark McLoughlin  <mark@skynet.ie>
1098
1099         Fix problem with schemas install. Bug #151334.
1100
1101         * gconf/gconftool.c: (process_locale_info): install the
1102         global default in the C locale only.
1103
1104 2004-08-30  Mark McLoughlin  <mark@skynet.ie>
1105
1106         Lots of debugging info from Mickey Stein <yekkim@pacbell.net>
1107         narrowed this one down in bug #150779.
1108
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.
1112
1113 2004-08-30  Mark McLoughlin  <mark@skynet.ie>
1114
1115         Patch from Josselin Mouette <joss@debian.org> in bug #148028
1116
1117         * gconf/gconfd.c: (periodic_cleanup_timeout): save and reload
1118         ~/.gconfd/saved_state so we don't drop listeners when reloading
1119         the database.
1120
1121 2004-08-27  Mark McLoughlin  <mark@skynet.ie>
1122
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.
1126
1127 2004-08-25  Mark McLoughlin  <mark@skynet.ie>
1128
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 >
1133
1134 2004-08-19  Mark McLoughlin  <mark@skynet.ie>
1135
1136         * configure.in: post-release bump to 2.7.92.
1137
1138 ==================== 2.7.91.1 ====================
1139
1140 2004-08-19  Mark McLoughlin  <mark@skynet.ie>
1141
1142         * configure.in: Version 2.7.91.1.
1143
1144 2004-08-19  Mark McLoughlin  <mark@skynet.ie>
1145
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
1149
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.
1153         
1154         * backends/markup-backend.c: (resolve_address), (ms_new):
1155         Remove the "nomerge" backend flag.
1156         
1157         * backends/gconf-merge-tree.c:
1158         (recursively_load_subtree): add back.
1159         (merge_tree): upd. for markup_tree_get() change.
1160
1161 2004-08-16  Christian Rose  <menthos@menthos.com>
1162
1163         * configure.in: Added "bs" to ALL_LINGUAS.
1164
1165 2004-08-16  Mark McLoughlin  <mark@skynet.ie>
1166
1167         * configure.in: post-release bump to 2.7.92.
1168
1169 ==================== 2.7.91 ====================
1170
1171 2004-08-16  Mark McLoughlin  <mark@skynet.ie>
1172
1173         * configure.in: Version 2.7.91.
1174
1175 2004-08-11  Kjartan Maraas  <kmaraas@gnome.org>
1176
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.
1183
1184 2004-08-10  Mark McLoughlin  <mark@skynet.ie>
1185
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.
1189
1190 2004-08-07  Danilo Å egan  <dsegan@gmx.net>
1191
1192         Fixes bug #149518.
1193         
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/.
1198
1199 2004-08-03  Mark McLoughlin  <mark@skynet.ie>
1200
1201         * configure.in: post-release bump to 2.7.91.
1202
1203 ==================== 2.7.90 ====================
1204
1205 2004-08-03  Mark McLoughlin  <mark@skynet.ie>
1206
1207         * configure.in: Version 2.7.90.
1208
1209 2004-08-03  Mark McLoughlin  <mark@skynet.ie>
1210
1211         Patch from Carlos Daniel Ruvalcaba Valenzuela <clsdaniel@yahoo.com.mx>
1212         in bug #148973.
1213
1214         * gconf/gconf-internals.[ch]: (gconf_escape_percents): remove unused
1215         (and internal) function.
1216
1217 2004-07-09  Mark McLoughlin  <mark@skynet.ie>
1218
1219         Patch from Kai Willadsen <kaiw@itee.uq.edu.au> in
1220         bug #120349.
1221
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
1229         of GtkObject.
1230
1231 2004-07-07  Mark McLoughlin  <mark@skynet.ie>
1232
1233         * configure.in: post-release bump to 2.7.4.
1234
1235 ==================== 2.7.3.1 ====================
1236
1237 2004-07-07  Mark McLoughlin  <mark@skynet.ie>
1238
1239         * configure.in: Version 2.7.3.1.
1240
1241 2004-07-07  Mark McLoughlin  <mark@skynet.ie>
1242
1243         * gconf/gconftool.c: (process_key_list): one character
1244         fix to make the schema actually be applied.
1245
1246 2004-07-07  Fernando Herrera  <fherrera@onirica.com>
1247
1248         * gconf/default.path.in: Removed outdated comment.
1249
1250 2004-07-07  Mark McLoughlin  <mark@skynet.ie>
1251
1252         * gconf/gconftool.c: (do_makefile_uninstall): merge with
1253         do_makefile_install() by adding a "unload" flag.
1254
1255 2004-07-05  Mark McLoughlin  <mark@skynet.ie>
1256
1257         * configure.in: post-release bump to 2.7.4.
1258
1259 ==================== 2.7.3 ====================
1260
1261 2004-07-05  Mark McLoughlin  <mark@skynet.ie>
1262
1263         * configure.in: Version 2.7.3.
1264
1265 2004-07-05  Mark McLoughlin  <mark@skynet.ie>
1266
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
1270         to reload schemas.
1271
1272         * gconf/gconfd.c:
1273         (signal_handler): handle SIGHUP by setting flag.
1274         (periodic_cleanup_timeout): reload all databases when
1275         the reload flag is set.
1276
1277 2004-07-04  Mark McLoughlin  <mark@skynet.ie>
1278
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.
1282
1283         * configure.in: add --sysconfsubdir argument and subst $sysgconfdir
1284         which contains the full sysconf path GConf uses.
1285         
1286         * Makefile.am,
1287           examples/Makefile.am,
1288           gconf/Makefile.am,
1289           gconf/default.path.in,
1290           gconf/gconftool.c,
1291           standard-schemas/Makefile.am,
1292           wrappers/cxx/Makefile.am: use $sysgconfdir.
1293
1294 2004-07-02  Mark McLoughlin  <mark@skynet.ie>
1295
1296         Fixup some bugs with the merge files support which was
1297         causing unset entries not to be completely wiped out.
1298
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
1309         entries too.
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.
1314
1315 2004-07-02  Mark McLoughlin  <mark@skynet.ie>
1316
1317         Based on a patch to add --unload option from
1318         Julio M. Merino Vidal <jmmv@menta.net> in bug #130129.
1319
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().
1328
1329 2004-07-02  Mark McLoughlin  <mark@skynet.ie>
1330
1331         Fix for bug #145141.
1332
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.
1336
1337 2004-07-01  Pawan Chitrakar  <pawan@nplinux.org>
1338
1339         * configure.in: Added "ne" Nepali in ALL_LINGUAS
1340
1341 2004-06-27  Ross Burton  <ross@burtonini.com>
1342
1343         * doc/Makefile.am: Distribute the incredibly useful FAQ and DTD.
1344
1345 2004-06-22  Mark McLoughlin  <mark@skynet.ie>
1346
1347         * backends/markup-tree.c: fix tiny typo which was causing
1348         /schemas/apps to be saved as one gigantic file.
1349
1350 2004-06-21  Mark McLoughlin  <mark@skynet.ie>
1351
1352         Fix for bug #138498 - turn on "subtree-in-a-file" for the
1353         subdirectories of the following directories:
1354
1355             /apps/evolution",
1356             /apps/panel/profiles",
1357             /apps
1358             /desktop/gnome
1359             /system
1360             /schemas/apps
1361             /schemas/desktop/gnome
1362             /schemas/system
1363             /schemas
1364             /
1365
1366         You can turn this of by passing the "nomerge" flag to the
1367         backend - e.g. xml:readwrite,nomerge:$(HOME)/.gconf
1368         
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
1376         below a given dir.
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.
1383         
1384         * backends/markup-backend.c:
1385         (resolve_address), (ms_new): parse and use the "nomerge" flag.
1386         
1387         * backends/gconf-merge-tree.c: (merge_tree): upd.
1388
1389 2004-06-21  Mark McLoughlin  <mark@skynet.ie>
1390
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.
1394
1395 2004-06-21  Mark McLoughlin  <mark@skynet.ie>
1396
1397         Patch from Leonardo Quijano Vincenzi <lquijano@hotpop.com>
1398         in bug #144502.
1399
1400         * doc/gconf/tmpl/gconf-client.sgml: warn the g_type_init()
1401         must be called before using GConfClient.
1402
1403 2004-06-12  Mark McLoughlin  <mark@skynet.ie>
1404
1405         Patch from Daniel Elstner <daniel.elstner@gmx.net>
1406         in bug #143679.
1407
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.
1411
1412 2004-06-12  Mark McLoughlin  <mark@skynet.ie>
1413
1414         Patch from Julio M. Merino Vidal <jmmv@menta.net>
1415         in bug #134247.
1416
1417         * doc/gconf/Makefile.am: don't create a directory if
1418         its not needed.
1419
1420 2004-06-12  Mark McLoughlin  <mark@skynet.ie>
1421
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.
1426
1427         * gconf/gconf.c: (gconf_escape_key): use a shorter encoding
1428         for non-ascii characters.
1429
1430 2004-06-12  Mark McLoughlin  <mark@skynet.ie>
1431
1432         64-bit fix from Joe Marcus Clarke <marcus@freebsd.org>
1433
1434         * backends/markup-tree.c: (parse_tree): the length
1435         returned from g_file_get_contents() is a gsize
1436         not an int.
1437
1438 2004-06-09  Kjartan Maraas  <kmaraas@gnome.org>
1439
1440         * gconf/gconf-internals.c: (gconf_activate_server):
1441         Plug a small leak. Fixes bug #143941.
1442
1443 2004-05-31  Mark McLoughlin  <mark@skynet.ie>
1444
1445         * configure.in: post-release bump to 2.7.2.
1446
1447 ==================== 2.7.1 ====================
1448
1449 2004-05-31  Mark McLoughlin  <mark@skynet.ie>
1450
1451         * configure.in: Version 2.7.1.
1452
1453 2004-05-04  Morten Welinder  <terra@gnome.org>
1454
1455         * gconf/gconf-internals.c (gconf_activate_server): Delete stray
1456         ";" aka null statement.  (Valid only in C99 where it had no
1457         effect.)
1458
1459 2004-04-23  Mark McLoughlin  <mark@skynet.ie>
1460
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.
1463
1464 2004-04-21  Richard Hult  <richard@imendio.com>
1465
1466         * gconf/gconf-database.c (gconf_database_unset): Init
1467         modified_sources to NULL since we access it later. Fixes random
1468         crashes.
1469
1470 2004-04-19  Mark McLoughlin  <mark@skynet.ie>
1471
1472         Based on a patch from Julio Merino <jmmv@hispabsd.org>
1473         in bug #102825
1474
1475         * configure.in: add a --enable-gtk=yes/no/auto (defaults to auto)
1476
1477 2004-04-19  Mark McLoughlin  <mark@skynet.ie>
1478
1479         Patch Elijah Newren <bugsqueesher@yahoo.com> in bug #138009
1480
1481         * examples/basic-gconf-app.c: (config_entry_commit):
1482         return a boolean so we don't crash.
1483
1484 2004-04-19  Mark McLoughlin  <mark@skynet.ie>
1485
1486         Based on a patch from Ryan Lovett <ryan@ocf.berkeley.edu>
1487         in bug #95198.
1488
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.
1493
1494 2004-04-19  Mark McLoughlin  <mark@skynet.ie>
1495
1496         * backends/dir-utils.[ch],
1497           backends/val-encode.[ch]: remove last remenants
1498         of the BDB backend.
1499
1500 2004-04-19  Mark McLoughlin  <mark@skynet.ie>
1501
1502         Tracked down by Gustavo Giráldez  <gustavo.giraldez@gmx.net>
1503         in bug #139170
1504
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
1508         address list.
1509
1510 2004-04-16  Colin Walters  <walters@redhat.com>
1511
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>.
1516
1517 2004-04-13  Mark McLoughlin  <mark@skynet.ie>
1518
1519         Fix pointed out by Frédéric L. W. Meunier <1@pervalidus.net>.
1520
1521         * gconf.m4.in: add quotes around AM_GCONF_SOURCE_2 to
1522         quell autoconf's rudeness.
1523
1524 2004-04-08  Guntupalli Karunakar  <karunakar@freedomink.org>
1525
1526         * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
1527
1528 2004-04-08  Adam Weinberger  <adamw@gnome.org>
1529
1530         * configure.in: Added en_CA to ALL_LINGUAS.
1531
1532 2004-04-05  Mark McLoughlin  <mark@skynet.ie>
1533
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.
1537
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.
1546
1547 2004-04-02  Mark McLoughlin  <mark@skynet.ie>
1548
1549         * gconf/gconftool.c: (set_values), (process_entry): handle
1550         an <entry> with only a <schema_name> correctly.
1551
1552 2004-04-01  Mark McLoughlin  <mark@skynet.ie>
1553
1554         * gconf/gconftool.c: (dump_entries_in_dir): don't dump
1555         the value if its the schema default.
1556
1557 2004-04-01  Mark McLoughlin  <mark@skynet.ie>
1558
1559         * gconf/default.path.in: fix the position of the
1560         local-defaults.path include. Bug #137578.
1561
1562 2004-03-31  Mark McLoughlin  <mark@skynet.ie>
1563
1564         Fix last remaining obvious issue I'm seeing with the previous
1565         patches. gconfd was crashing when removing objects from the
1566         panel.
1567
1568         * gconf/gconf-database.c: (gconf_database_recursive_unset):
1569         Don't try and propogate a NULL error.
1570         
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.
1577
1578 2004-03-30  Mark McLoughlin  <mark@skynet.ie>
1579
1580         * gconf/gconf-backend.c: (gconf_backend_verify_vtable):
1581         Return TRUE if the vtable is okay.
1582
1583 2004-03-30  Mark McLoughlin  <mark@skynet.ie>
1584
1585         * doc/gconf/tmpl/gconf-backend.sgml: add some documentation
1586         for set_notify_func().
1587
1588 2004-03-30  Mark McLoughlin  <mark@skynet.ie>
1589
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.
1593
1594 2004-03-30  Mark McLoughlin  <mark@skynet.ie>
1595
1596         * gconf/gconf-backend.h: actually add the vtable_size
1597         vtable member.
1598
1599 2004-03-29  Mark McLoughlin  <mark@skynet.ie>
1600
1601         * gconf/gconf-database.c:
1602         (safe_g_hash_table_insert): remove - no hash table here.
1603
1604 2004-03-29  Mark McLoughlin  <mark@skynet.ie>
1605
1606         * gconf/gconf-engine.h: add gconf_engine_get_for_addresses()
1607         and gconf_engine_get_local_for_addresses().
1608         
1609         * gconf/gconf.c:
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
1614         unregistering.
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.
1621         
1622         * gconf/GConfX.idl: extend the ConfigServer interface
1623         by adding ConfigServer2 inherting from ConfigServer.
1624         Add ConfigServer2::get_database_for_addresses().
1625         
1626         * gconf/gconf-backend.c:
1627         (gconf_address_valid), (gconf_get_backend): check the backend
1628         address doesn't contain any special characters.
1629         
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.
1645         
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.
1652
1653         * gconf/gconf-sources.[ch]:
1654         (gconf_sources_new_from_source): allow creating an empty source
1655         list.
1656         (gconf_sources_set_value),
1657         (gconf_sources_unset_value): return the sources modified by
1658         the change.
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.
1666         
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.
1680
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.
1684         
1685 2004-03-29  Mark McLoughlin  <mark@skynet.ie>
1686
1687         * backends/markup-backend.c,
1688           backends/xml-backend.c: initialize the set_notify_func
1689         vtable member.
1690
1691 2004-03-29  Mark McLoughlin  <mark@skynet.ie>
1692
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.
1696
1697         * gconf/gconf-backend.h: add a set_notify_func() member to
1698         the vtable and remove the callback arg from add_listener().
1699         
1700         * gconf/gconf-database.c:
1701         (gconf_database_new): set the notification callback here.
1702         (gconf_database_readd_listener): upd.
1703         
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.
1709
1710 2004-03-26  Mark McLoughlin  <mark@skynet.ie>
1711
1712         * gconf/gconf-database.c: (source_notify_cb): don't leak
1713         the schema name.
1714         
1715         * gconf/gconf-sources.c:
1716         (gconf_sources_add_listener),
1717         (gconf_sources_remove_listener): fix mistake pointed out
1718         by Cyrille.
1719
1720 2004-03-25  Mark McLoughlin  <mark@skynet.ie>
1721
1722         Allow backends to notify the daemon of changes to entries.
1723         Based on a patch from Cyrille Moureaux <Cyrille.Moureaux@Sun.COM>
1724         in bug #07692.
1725
1726         * gconf/gconf-backend.h: add add_listener() and
1727         remove_listener() members to the vtable.
1728         
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
1734         listeners.
1735         
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.
1741         
1742         * doc/gconf/tmpl/gconf-backend.sgml: update the backend
1743         documentation.
1744         
1745         * backends/markup-backend.c,
1746           backends/xml-backend.c: set the add_listener() and
1747         remove_listener() members to NULL.
1748         
1749 2004-03-24  Mark McLoughlin  <mark@skynet.ie>
1750         
1751         * gconf/gconf-backend.h: add a vtable_size member to
1752         the vtable.
1753
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.
1759         
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.
1763         
1764         * doc/gconf/tmpl/gconf-backend.sgml: upd.
1765
1766         * backends/markup-backend.c,
1767           backends/xml-backend.c: add sizeof (GConfBackendVTable) to
1768         the vtable.
1769         
1770 2004-03-24  Mark McLoughlin  <mark@skynet.ie>
1771         
1772         * gconf/gconf-database.c: (impl_ConfigDatabase_set): don't
1773         convert the value into a string and then do nothing with it.
1774         
1775 2004-03-30  Mark McLoughlin  <mark@skynet.ie>
1776
1777         * configure.in: bump to 2.7.1. 2.6.x development is on
1778         the gnome-2-6 branch now.
1779
1780 2004-03-24  Mark McLoughlin  <mark@skynet.ie>
1781
1782         * configure.in: kill the message-of-doom.
1783
1784 2004-03-22  Guntupalli Karunakar  <karunakar@freedomink.org>
1785
1786         * configure.in: Added "pa" (Punjabi) to ALL_LINGUAS.
1787
1788 2004-03-22  Mark McLoughlin  <mark@skynet.ie>
1789
1790         * configure.in: post-release bump to 2.6.1.
1791
1792 2004-03-22  Mark McLoughlin  <mark@skynet.ie>
1793
1794         * configure.in: Version 2.6.0
1795
1796 2004-03-18  Ross Burton  <ross@burtonini.com>
1797
1798         * doc/FAQ.txt:
1799         Added a FAQ, based upon the old FAQ and updated for the new
1800         locking policy.
1801
1802 2004-03-16  Gareth Owen  <gowen72@yahoo.com>
1803
1804         * configure.in: Added "en_GB" (British) to ALL_LINGUAS
1805
1806 2004-03-02 Dinesh Nadarajah <dinesh_list@sbcglobal.net>
1807
1808         * ta.po: Started Tamil Translation.
1809
1810 2004-02-24  Mark McLoughlin  <mark@skynet.ie>
1811
1812         * configure.in: Version 2.5.90.
1813
1814 2004-02-01  Robert Sedak  <robert.sedak@sk.htnet.hr>
1815
1816         * configure.in: Added "hr" (Croatian) to ALL_LINGUAS.
1817
1818 2003-12-14  Havoc Pennington  <hp@redhat.com>
1819
1820         * configure.in: 2.5.1
1821
1822 2003-12-03  Ross Burton  <ross@burtonini.com>
1823
1824         * tmpl/gconf.sgml: lamest patch *ever*, remove a newline.
1825
1826 Tue Nov  4 17:17:07 2003  Jonathan Blandford  <jrb@redhat.com>
1827
1828         * gconf/gconf-changeset.h: register GConfChangeSet as a boxed type.
1829
1830 2003-11-02  Havoc Pennington  <hp@pobox.com>
1831
1832         * ChangeLog: ascii-ize various people's names; Emacs can't handle 
1833         UTF-8, sadly
1834
1835         * backends/Makefile.am: cut over to the new backend implementation
1836
1837         * configure.in: change to 2.5.0, add "this is the unstable
1838         branch" warning.
1839
1840 2003-10-28  Ghee Teo  <ghee.teo@sun.com>
1841
1842         * gconf/default.path.in: added hooks for paths to preserve
1843           local configuration gconf values as in bug #107481.
1844
1845 2003-10-28  Mark McLoughlin  <mark@skynet.ie>
1846
1847         * backends/gconf-merge-tree.c: include locale.h - patch
1848         from Damien Carbery <damien.carbery@sun.com> in bug #125688.
1849
1850 2003-10-27  Mark McLoughlin  <mark@skynet.ie>
1851
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.
1855
1856         * backends/Makefile.am: install the markup backend and
1857         build gconf-merge-tree.
1858         
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
1863         the XML backend.
1864
1865         * gconf/gconftool.c:
1866         (recurse_subdir_dump), (do_dump_values): sort the directories
1867         before dumping.
1868         (print_schema_in_xml): don't add extra whitespace to schema
1869         descriptions.
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.
1873         
1874         * backends/markup-backend.c: (cleanup_timeout): fixup.
1875
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.
1881         
1882         * tests/testbackend.c: include stdio.h to fix warnings.
1883         
1884 Wed Oct 22 22:59:47 2003  Matthias Clasen  <maclas@gmx.de>
1885
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)
1892
1893 2003-10-22  Havoc Pennington  <hp@redhat.com>
1894
1895         * gconf/gconf.c, gconf/gconfd.c: use g_string_new (NULL) 
1896         rather than g_string_new ("") #106974 Morten Welinder
1897         
1898         * gconf/gconfd.c (gconf_main): change cleanup/exit timeout to 30
1899         seconds, bug #97361
1900
1901         * backends/xml-cache.c (cache_clean): whack string that needed
1902         ngettext, as it was dumb debug spew. #123866 Danilo Segan
1903
1904         * gconf/gconf.c (gconf_handle_corba_exception): fix to avoid
1905         passing arbitrary data as printf format, #123556 Dan Winship
1906
1907         * backends/markup-backend.c (resolve_address): remove unused
1908         variables, #122734 Kjartan Maraas
1909
1910         * gconf.spec.in: remove, not maintained
1911         
1912         * gconf/gconf-error.c (gconf_error_new_valist): don't put a
1913         newline in error messages, bug #111845 Morten Welinder
1914
1915         * throughout: s/dir/directory/ bug #111822 Christian Rose
1916         
1917         * gconf/gconfd.c (gconf_server_load_sources): avoid string
1918         concatenation with #defines, confuses gettext, #111821
1919         Christian Rose
1920
1921         * gconf/gconfd.h: fix gconf_get_poa() declaration, #110186
1922         Morten Welinder 
1923         
1924         * gconf/gconf-internals.c (read_current_server_and_set_warning):
1925         fix a warning, bug #110179
1926
1927         * gconf/gconfd.c (test_safe_tmp_dir): fix warning
1928
1929 2003-10-22  Havoc Pennington  <hp@redhat.com>
1930         
1931         * gconf/gconf-client.c: patch from Ray Strode to avoid breaking
1932         the schema name cache, bug #94412
1933
1934         * doc/rationales.txt: add file to track bugzilla numbers to refer
1935         to later
1936
1937 2003-10-22  Vincent Untz  <vincent@vuntz.net>
1938
1939         * backends/xml-dir.c (dir_load_doc): don't mark "%s" as translatable.
1940         Fix bug #84893.
1941
1942 2003-10-09  Ross Burton  <ross@burtonini.com>
1943
1944         * doc/Makefile.am:
1945         * doc/gconftool-2.1:
1946         Added a basic man page.
1947
1948 2003-10-07  Aygimantas Beru?ka  <uid0@tuxfamily.org>
1949
1950         * configure.in: Added "lt" to ALL_LINGUAS
1951
1952 2003-09-26  Havoc Pennington  <hp@pobox.com>
1953
1954         * gconf/gconf.c (gconf_engine_all_dirs): fix crash calling this
1955         with --direct (local source), the list contains strings not 
1956         GConfEntry
1957
1958 Wed Sep 10 15:23:17 2003  Jonathan Blandford  <jrb@redhat.com>
1959
1960         * configure.in: Rerelease 2.4.0.1 to fix glib-gettext problem.
1961
1962 2003-09-08  Havoc Pennington  <hp@redhat.com>
1963
1964         * configure.in: 2.4.0
1965
1966 2003-09-05  Taneem Ahmed  <taneem@bengalinux.org>
1967
1968         * configure.in: Added "bn" to ALL_LINGUAS.
1969
1970 2003-08-30  Laurent Dhima  <laurenti@alblinux.net>
1971
1972         * configure.in: Added "sq" (Albanian) to ALL_LINGUAS.
1973         
1974 2003-08-18  Muktha  <muktha.narayan@wipro.com>
1975
1976         * gconf/gconftool.c (main) : Print usage message when no options are
1977         passed to gconftool-2. Fixes #70316.
1978
1979 2003-08-11  Christophe Fergeau  <teuf@gnome.org>
1980
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.
1984
1985 2003-08-11  Frederic Crozat  <fcrozat@mandrakesoft.com>
1986
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.
2014
2015 2003-08-09  Guntupalli Karunakar  <karunakar@freedomink.org>
2016
2017         * configure.in: Added "hi" in ALL_LINGUAS.
2018
2019 2003-03-16  Jeffrey Stedfast  <fejj@ximian.com>
2020
2021         Fixes bug #108574
2022
2023         * backends/xml-dir.c (gconf_xml_doc_dump): Replacement for
2024         xmlDocDump() which is not reliable. While we're at it, also dump
2025         formatted xml.
2026         (dir_sync): Call the new gconf_xml_doc_dump() rather than
2027         xmlDocDump() because we don't want to risk losing user settings.
2028
2029 2003-07-19  Havoc Pennington  <hp@pobox.com>
2030
2031         * doc/gconf/gconf.sgml: doc fixes from Samuel Stringham
2032         #117830
2033         
2034 2003-07-17  Havoc Pennington  <hp@redhat.com>
2035
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
2039
2040         * gconf/gconf-value.h: flags can't be 0, patch from 
2041         Greg Hudson, #117712
2042
2043 2003-07-07  Mark McLoughlin  <mark@skynet.ie>
2044
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.
2051
2052 2003-06-28  Dafydd Harries  <daf@parnassus.ath.cx>
2053
2054         * gconf/gconftool.c (main): Slight extra option tweaking.
2055
2056 2003-06-26  Dafydd Harries  <daf@parnassus.ath.cx>
2057
2058         * gconf/gonftool.c (main): Tidied up "--foo option must be used by
2059         itself" messages.
2060
2061 2003-06-26  Ross Golder  <ross@golder.org>
2062
2063         * gconf/gconftool.c (do_dissociate_schema): Fixed a misleading
2064         string (#116042)
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)
2069  
2070 2003-06-26  Abel Cheung  <maddog@linux.org.hk>
2071   
2072         * configure.in: Added "am" "mk" to ALL_LINGUAS.
2073
2074 2003-06-26  Abel Cheung  <maddog@linux.org.hk>
2075
2076         * configure.in: Added "am" "mk" to ALL_LINGUAS.
2077
2078 2003-06-23  Havoc Pennington  <hp@redhat.com>
2079
2080         * NEWS: update
2081
2082         * configure.in: 2.3.3
2083
2084 2003-06-22  James M. Cape  <jcape@ignore-your.tv>
2085
2086         * gconf/gconf-database.c: Fix for GCC 3.3 warning (fixes #115722).
2087
2088 2003-06-18      Mohammad DAMT  <mdamt@bisnisweb.com>
2089
2090         * po/id.po: Added Indonesian translation
2091         * configure.in: Added "id" to ALL_LINGUAS
2092
2093 2003-06-18  Rodrigo Moya <rodrigo@ximian.com>
2094
2095         Fixes #73323
2096
2097         * gconf/gconf-sources.h: moved GConfUnsetFlags enum...
2098
2099         * gconf/gconf-value.h: ...to here.
2100
2101         * gconf/gconf-client.[ch] (gconf_client_recursive_unset):
2102         implemented new function for calling the unrecursive_unset
2103         method on the engine.
2104
2105 2003-06-12  Guntupalli Karunakar  <karunakar@freedomink.org>
2106
2107         * configure.in: Added "ml" in ALL_LINGUAS.
2108
2109 2003-06-06  Michael Meeks  <michael@ximian.com>
2110
2111         * configure.in: remove the explicit linc module.
2112
2113 2003-05-31  Michael Meeks  <michael@ximian.com>
2114
2115         * backends/markup-tree.c: include <stdio.h>
2116
2117 2003-05-19  Ross Burton  <ross@burtonini.com>
2118
2119         * gconf/gconftool.c: Implement uninstalling GConf schemas, closing
2120         #104487. Patch based on work by jmmv@hispabsd.org <Julio Merino>.
2121
2122 2003-05-19  Telsa Gwynne  <hobbit@aloss.ukuu.org.uk>
2123
2124         * configure.in: Add cy (Welsh) to ALL_LINGUAS
2125
2126 2003-05-09  Mark McLoughlin  <mark@skynet.ie>
2127
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.
2133
2134 2003-05-08  Ross Burton  <ross@burtonini.com>
2135
2136         * gconf/gconf-client.[ch]: Add gconf_client_notify(), to fake a
2137         notification from a monitored key. Fixes #70553.
2138
2139 2003-05-07  Danilo Egan  <dsegan@gmx.net>
2140
2141         * configure.in: Added "sr" and "sr@Latn" to ALL_LINGUAS.
2142
2143 2003-05-03  Havoc Pennington  <hp@pobox.com>
2144
2145         * configure.in: 2.3.2
2146
2147         * NEWS: update
2148
2149 2003-04-26  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>
2150
2151         * configure.in: call AC_LIBTOOL_WIN32_DLL.
2152
2153         * backends/Makefile.am: add -no-undefined to *_la_LDFLAGS.
2154         add $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la to *_la_LIBADD.
2155
2156         * gconf/Makefile.am (libgconf_2_la_LDFLAGS): add -no-undefined.
2157
2158         * gconf/gconfd.c (main): use g_strdup_printf() instead of strlen() +
2159         g_malloc() + g_snprintf().
2160
2161 03-04-23  Muktha <muktha.narayan@wipro.com>
2162         * gconf/gconfd.c
2163         When reading the saved_state file, gconfd will not log message if 
2164         the saved_state file is not present. Fixes bug #110944.
2165
2166 2003-03-27  Brian Cameron <brian.cameron@sun.com>
2167
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
2171         change.
2172
2173 2003-03-27  Ross Burton  <ross@burtonini.com>
2174
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.
2179
2180         Applied patch from Jeff Franks <jcf@tpg.com.au> with a extensions,
2181         closing #97205.
2182         * gconf/gconf-schema.h:
2183         * gconf/gconf-value.h: Wrapped both header files in an extern "C"
2184         for C+compilation.
2185         
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().
2190
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.
2194         
2195         * gconf/gconf-client.h: Added missing GCONF_CLIENT_GET_CLASS
2196         macro.
2197
2198 2003-03-26  Havoc Pennington  <hp@pobox.com>
2199
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.
2203
2204 2003-03-26  Havoc Pennington  <hp@pobox.com>
2205
2206         * gconf/gconf-internals.c (gconf_get_daemon_dir): call
2207         linc_set_tmpdir() to maybe make it work
2208
2209 2003-03-26  Havoc Pennington  <hp@redhat.com>
2210
2211         * configure.in: bump to 2.3.1
2212
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.
2216
2217         * gconf/gconf-internals.c (gconf_log): convert to locale encoding
2218         to pass stuff to syslog
2219
2220 2003-03-26  Christian Rose  <menthos@menthos.com>
2221
2222         * configure.in: Added "yi" to ALL_LINGUAS.
2223
2224 2003-03-14  Mark McLoughlin  <mark@skynet.ie>
2225
2226         Basically the same patch as the previous one .. but
2227         for the markup backend.
2228
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/
2234         markup_tree_get/
2235         (ms_destroy): s/markup_tree_free/markup_tree_unref/
2236
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.
2244
2245 2002-07-16  Mark McLoughlin  <mark@skynet.ie>
2246
2247         Use the same cache for multiple sources with the same
2248         root directory.
2249
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.
2259
2260         * backends/xml-backend.c:
2261         (xs_new): s/cache_new/cache_get/
2262         (xs_destroy): s/cache_destroy/cache_unref/.
2263
2264 2003-03-14  Mark McLoughlin  <mark@skynet.ie>
2265
2266         * backends/Makefile.am: kill unused bdb SOURCES.
2267
2268 2003-03-13  Mark McLoughlin  <mark@skynet.ie>
2269
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
2273         or
2274         gconftool-2 -load metacity.dump /apps/other_metacity
2275
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.
2290
2291 2003-03-05  Havoc Pennington  <hp@pobox.com>
2292
2293         * backends/Makefile.am: remove BDB backend
2294
2295         * configure.in: remove BDB backend support
2296
2297 2003-03-04  Mark McLoughlin  <mark@skynet.ie>
2298
2299         Fixes weird bug where a directory appears to not exist when
2300         you create subdirectories of it.
2301
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.
2306
2307 2003-02-25  Havoc Pennington  <hp@redhat.com>
2308
2309         * configure.in: bump to 2.3.0 unstable version number to avoid 
2310         confusion
2311
2312 2003-02-22  Roozbeh Pournader  <roozbeh@sharif.edu>
2313
2314         * configure.in: Added "fa" to ALL_LINGUAS.
2315
2316 2003-02-12  Mark McLoughlin  <mark@skynet.ie>
2317
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.
2321
2322 2003-02-12  Mark McLoughlin  <mark@skynet.ie>
2323
2324         * backends/xml-dir.c: (listify_foreach): set the schema
2325         name even when the key is set.
2326
2327 2003-01-21  Ross Burton  <ross@burtonini.com>
2328
2329         * doc/gconf-1.0.dtd: Add comments to the DTD.
2330
2331 2003-01-21  Christian Rose  <menthos@menthos.com>
2332
2333         * configure.in: Added "mn" to ALL_LINGUAS.
2334
2335 2003-01-12  Havoc Pennington  <hp@pobox.com>
2336
2337         * configure.in: 2.1.90
2338
2339 2002-12-04  Havoc Pennington  <hp@pobox.com>
2340
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
2344
2345 2002-11-22  Dan Mills  <thunder@ximian.com>
2346
2347         * configure.in: fix gtk-doc version check.
2348
2349 2002-11-09  Dmitry G. Mastrukov  <dmitry@taurussoft.org>
2350
2351         * configure.in: Added Belarusian to ALL_LINGUAS
2352
2353 2002-11-02  Havoc Pennington  <hp@pobox.com>
2354
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, 
2358         #96210
2359
2360 2002-10-18  Havoc Pennington  <hp@pobox.com>
2361
2362         * gconf/gconf-internals.c (subst_variables): patch from 
2363         Benn Vosseteig fixing a crash with a long path to $HOME 
2364         
2365 2002-09-30  Yanko Kaneti <yaneti@declera.com>
2366
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.
2370
2371 2002-09-18  Yanko Kaneti <yaneti@declera.com>
2372
2373         * doc/Makefile.am: change the gconf-1.0.dtd install location to 
2374         $(datadir)/sgml/gconf which sounds more standards compliant.
2375
2376 2002-09-18  Havoc Pennington  <hp@pobox.com>
2377
2378         * backends/markup-backend.c (resolve_address): add FIXME about
2379         GCONF_LOCAL_LOCKS
2380
2381 2002-09-18  Havoc Pennington  <hp@pobox.com>
2382
2383         Merge gconf-markup-hacking branch
2384         
2385         * tests/testbackend.c: add a test for backends
2386
2387         * gconf/gconftool.c (extract_global_info): add more error
2388         checking, adding more error strings
2389
2390         * gconf/gconf-schema.c (gconf_schema_validate): do some more
2391         validation with error strings that couldn't be added to stable
2392         branch
2393
2394         * backends/xml-dir.c: fix quoting in error string
2395
2396         * backends/xml-backend.c (resolve_address): fix quoting in error
2397         string
2398
2399         * backends/markup-tree.c: make it work
2400
2401         * backends/markup-backend.c: make it work
2402
2403         * backends/Makefile.am (libgconfbackend_markup_la_SOURCES): add
2404         markup-backend.c
2405
2406 2002-09-18  Yanko Kaneti <yaneti@declera.com>
2407
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.
2411
2412         * doc/Makefile.am:
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.
2416
2417 2002-09-18  Havoc Pennington  <hp@pobox.com>
2418
2419         * configure.in: bump to 2.1.0, to get in sync with gnome and allow
2420         identifying HEAD
2421
2422 2002-09-09  jacob berkman  <jacob@ximian.com>
2423
2424         * gconf/GConf.idl:
2425         * gconf/GConfX.idl:
2426         * gconf/Makefile.am:
2427         * gconf/gconf-database.h:
2428         * gconf/gconf-internals.h:
2429         * gconf/gconf.c:
2430         * gconf/gconfd.c:
2431         * gconf/gconfd.h: rename GConf.idl to GConfX.idl in order to build
2432         on non-case-sensitive file systems
2433
2434 2002-09-06  Peteris Krisjanis <peteris.krisjanis@os.lv>
2435
2436         * configure.in: Added Latvian (lv) to ALL_LINGUAS
2437
2438 2002-08-04  Havoc Pennington  <hp@redhat.com>
2439
2440         * configure.in: 1.2.1
2441
2442 2002-07-12  Brian Cameron  <Brian.Cameron@sun.com>
2443
2444         * gconf/gconfd.c
2445         Removed reference to gnome_segv2 since it was not used.
2446
2447 2002-07-11  Brian Cameron  <Brian.Cameron@sun.com>
2448
2449         * gconf-2.0.pc.in
2450         * gconf.spec.in
2451         * gconf/Makefile.am
2452         * gconf/gconfd.c
2453         * gconf/gconf-internals
2454         Now install gconfd-2 and gconf-sanity-check-2 in libexec
2455
2456 2002-07-09  Mark McLoughlin  <mark@skynet.ie>
2457
2458         * gconf/gconfd.c: (obtain_database): fix
2459         silly with addresses list.
2460
2461 2002-07-04  Havoc Pennington  <hp@pobox.com>
2462
2463         * gconf/gconfd.c (logfile_read): close our FILE* when we're done.
2464         Reported by Michael.
2465         
2466 2002-07-03  Yanko Kaneti <yaneti@declera.com>
2467
2468         * configure.in: (ALL_LINGUAS) Added Bulgarian (bg).
2469
2470 2002-06-16  Havoc Pennington  <hp@pobox.com>
2471
2472         * gconf/gconf-sources.c (gconf_sources_recursive_unset): don't
2473         propagate nonexistent errors, fixes a warning.
2474
2475 Fri Jun 14 13:24:42 2002  HideToshi Tajima  <hidetoshi.tajima@sun.com>
2476
2477         * gconf/gconfd.c: include <locale.h> for setlocale.
2478
2479 2002-06-11  Havoc Pennington  <hp@pobox.com>
2480
2481         * configure.in: version 1.2.0
2482
2483         * README, NEWS, AUTHORS: update
2484
2485 2002-06-02  Havoc Pennington  <hp@pobox.com>
2486
2487         * gconf/gconftool.c: add --version argument, #79555, involves a
2488         help string but it should be OK if this string isn't translated.
2489
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,
2493         #75503
2494
2495         * gconf/gconfd.c (gconf_handle_segv): disable bug-buddy for now,
2496         too much recursion danger.
2497
2498         * gconf/gconf-internals.c, gconf/gconfd.c: replace isspace() with
2499         g_ascii_isspace, bug #70945
2500
2501         * gconf/gconf-value.c (gconf_value_new): init i18n here
2502
2503         * gconf/gconf.c (gconf_engine_blank): init i18n here
2504
2505         * gconf/gconftool.c (main): init i18n here, call textdomain
2506
2507         * gconf/gconfd.c (main): init i18n here, and call setlocale and
2508         textdomain
2509
2510         * gconf/gconf-internals.c (_gconf_init_i18n): function to call
2511         from various places
2512         (gconf_orb_get): init i18n here
2513
2514         * configure.in: require ORBit 2.4.0, linc 0.5.0, 
2515
2516         bump version to 1.1.11
2517
2518         fix setting of gconflocaledir (there was a typo, 
2519         gtklocaledir instead of gconflocaledir)
2520
2521         check for bind_textdomain_codeset
2522
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
2526
2527 2002-06-02  Havoc Pennington  <hp@pobox.com>
2528
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.
2532
2533 2002-06-02  Havoc Pennington  <hp@pobox.com>
2534
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"
2539         kind of bugs.
2540
2541         * backends/xml-dir.c (dir_sync): don't try to delete the root dir,
2542         should fix some warnings.
2543
2544 2002-05-27  Hasbullah Bin Pit <sebol@ikhlas.com>
2545
2546         * configure.in: Added Malay (ms)to ALL_LINGUAS.
2547         * po/ms.po: Added Malay Translation.
2548
2549 2002-05-27  Havoc Pennington  <hp@pobox.com>
2550
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.)
2555         
2556         * gconf/gconf-internals.h (gconf_value_set_string_nocopy): 
2557         new function
2558
2559 2002-05-15  Pablo Saratxaga  <pablo@mandrakesoft.com>
2560
2561         * configure.in: Added Vietnamese (vi) to ALL_LINGUAS
2562
2563 2002-05-10  Shivaram U  <shivaram.upadhyayula@wipro.com>
2564
2565         * doc/gconf/Makefile.am: Honouring CFLAGS and LDFLAGS passed by the user
2566         Ensures successful 64bit build on Solaris.
2567
2568 2002-05-09  Michael Meeks <michael@ximian.com>
2569
2570         * backends/xml-entry.c (entry_get_value): ensure we
2571         don't print a NULL.
2572
2573 2002-04-29  Pablo Saratxaga  <pablo@mandrakesoft.com>
2574
2575         * configure.in: Added Basque (eu) to ALL_LINGUAS
2576
2577 2002-04-29  Havoc Pennington  <hp@pobox.com>
2578
2579         * configure.in: 1.1.10
2580
2581 2002-04-26  Havoc Pennington  <hp@pobox.com>
2582
2583         * gconf/gconf-changeset.c: make the internal functions static
2584
2585         * gconf/gconf-internals.c (byte_type): make static
2586         (get_hostname): remove
2587
2588         * gconf/gconfd.c (add_client): set the maximum connection buffer
2589         to a reasonable-size value in order to handle locked-up clients.
2590         
2591         * backends/xml-entry.c (node_set_schema_value): opacity fixes
2592
2593         * gconf/gconftool.c (list_pairs_in_dir): opacity fixes
2594
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
2598         it's still useful.
2599
2600         * gconf/gconf-sources.c: opacity fixes
2601
2602         * gconf/gconf-database.c: namespace fixes
2603
2604         * gconf/gconf-internals.h: namespace some things
2605
2606         * gconf/gconf-internals.c: opacity fixes
2607         (fill_corba_schema_from_gconf_schema):
2608         make static
2609         (corba_schema_from_gconf_schema): make static   
2610
2611         * gconf/gconf-schema.c: do groundwork to make GConfSchema opaque,
2612         and fix some lack of spaces before parens
2613
2614         * gconf/gconf-value.c: do groundwork to make GConfEntry mostly
2615         opaque (implement with GConfRealEntry)
2616
2617 2002-04-19  Abel Cheung  <maddog@linux.org.hk>
2618
2619         * configure.in: Added "zh_TW" to ALL_LINGUAS.
2620
2621 2002-04-10  jacob berkman  <jacob@ximian.com>
2622
2623         * backends/xml-dir.c (my_xml_parse_file): g_file_get_contents()
2624         takes gsize, not int
2625
2626 2002-03-29  Havoc Pennington  <hp@pobox.com>
2627
2628         * configure.in: 1.1.9
2629
2630         * gconf/gconf-client.c (gconf_client_get_string): clean up some
2631         weird cruft
2632
2633         * gconf/gconf-internals.c (primitive_value): steal the schema,
2634         avoids a copy.
2635
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.
2639
2640         * configure.in (PKGCONFIG_MODULES): require the right versions of 
2641         various things
2642
2643 2002-03-24  Havoc Pennington  <hp@pobox.com>
2644
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 
2648         gconf web page.
2649
2650 2002-03-23  Havoc Pennington  <hp@pobox.com>
2651
2652         * gconf/gconfd.c (gconf_main): change exit timeout to 2 minutes
2653
2654 2002-03-22  Havoc Pennington  <hp@pobox.com>
2655
2656         * gconf/gconfd.c (gconf_set_exception): change "returning
2657         exception" message to DEBUG priority
2658
2659 2002-03-20  Havoc Pennington  <hp@pobox.com>
2660
2661         * tests/testpersistence.c: remove the -G_MAXFLOAT test, since
2662         it didn't work and probably shouldn't
2663
2664         * gconf/gconf-internals.c (gconf_double_to_string): use
2665         g_ascii_dtostr()
2666         (gconf_string_to_double): use g_ascii_strtod()
2667
2668 2002-03-21  Havoc Pennington  <hp@redhat.com>
2669
2670         * configure.in: fuck, Martin apparently deleted -Wall last March.
2671         
2672         * gconf/gconftool.c (main): don't pass unused arg to do_get_default_source
2673         
2674         * backends/xml-test.c: include all headers we use
2675
2676         * backends/xml-backend.c (remove_dir): fix unused variable
2677
2678         * backends/xml-dir.c (dir_rescan_subdirs): return a value in all
2679         cases
2680
2681         * gconf/gconf-sanity-check.c (check_gconf): remove unused variables
2682
2683         * gconf/gconfd.c: include sys/wait.h
2684
2685         * gconf/gconf-client.c: remove unused function
2686
2687 2002-03-21  Havoc Pennington  <hp@redhat.com>
2688
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. ;-)
2696
2697 2002-03-21  Havoc Pennington  <hp@redhat.com>
2698
2699         * gconf/gconf-schema.c: move schema accessors to be functions not
2700         macros.
2701
2702 2002-03-20  Havoc Pennington  <hp@redhat.com>
2703
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.
2707
2708         * gconf/gconfd.c (main): enable the signal handler for USR1
2709
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)
2714
2715 2002-03-20  Havoc Pennington  <hp@redhat.com>
2716
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.
2720
2721 2002-03-19  Havoc Pennington  <hp@pobox.com>
2722
2723         * backends/xml-cache.c (dircmp): fix bad assertion reported
2724         by lunarbard on #gnome
2725
2726 2002-03-14  Havoc Pennington  <hp@redhat.com>
2727
2728         * gconf/gconf-sanity-check.c (check_gconf): beef up the sanity
2729         checker to detect stuck locks, missing config files, and other
2730         screwups.
2731
2732 2002-03-10  Havoc Pennington  <hp@pobox.com>
2733
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.
2737
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
2741         Rietveld.
2742
2743 2002-03-07  Havoc Pennington  <hp@pobox.com>
2744
2745         * backends/xml-test.c: test program for XML backend code
2746
2747         * configure.in: add a "minimum" debug mode and compile with it
2748         by default.
2749
2750         * gconf/gconftool.c (main): call setlocale()
2751
2752         * tests/runtests.sh: run tests in various locales
2753
2754         * gconf/gconf-value.h: add more padding to GConfEntry
2755         
2756         * gconf/gconf-internals.c (gconf_CORBA_Object_equal):
2757         (gconf_CORBA_Object_hash): remove stupid inlining of these
2758         functions
2759
2760 2002-02-26  Havoc Pennington  <hp@redhat.com>
2761
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.
2765
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
2769
2770 Sat Feb 16 01:27:29 2002  Jonathan Blandford  <jrb@redhat.com>
2771
2772         * gconf/gconftool.c (read_value_type): fix typo in reading args.
2773
2774 2002-02-14  Dave Camp  <dave@ximian.com>
2775
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.
2784
2785 2002-02-12  Havoc Pennington  <hp@pobox.com>
2786
2787         * configure.in: version 1.1.8
2788
2789 2002-02-10  Jody Goldberg <jody@gnome.org>
2790
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.
2794
2795 2002-02-10  Havoc Pennington  <hp@pobox.com>
2796
2797         * gconf/gconfd.c (signal_handler): run gnome_segv if DISPLAY is
2798         set. Why not. may turn it off for production.
2799         
2800 2002-02-10  Havoc Pennington  <hp@pobox.com>
2801
2802         * gconf/gconf.c (CHECK_OWNER_USE): put name of function in the
2803         warning
2804         (gconf_engine_associate_schema): remove warning from this
2805         function, it has no GConfClient equivalent and won't mangle the
2806         cache
2807
2808 2002-02-10  Zbigniew Chyla  <cyba@gnome.pl>
2809
2810         * configure.in (ALL_LINGUAS): Added pl (Polish).
2811
2812 2002-02-08  jacob berkman  <jacob@ximian.com>
2813
2814         * gconf.m4.in: revert some stuff i didn't mean to commit
2815         yesterday.  Fixes problems when building with DESTDIR set.
2816
2817 2002-02-07  jacob berkman  <jacob@ximian.com>
2818
2819         * gconf/Makefile.am (install-exec-local): don't install gconftool
2820         symlink
2821
2822         * gconf.m4.in (AM_GCONF_SOURCE_2): call gconftool-2 rather than
2823         gconftool
2824
2825 2002-02-05  Havoc Pennington  <hp@redhat.com>
2826
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.
2832
2833         Only catches very simple problems so far.
2834
2835         * configure.in: define XML_AND_GTK_CFLAGS
2836
2837 2002-02-05  Michael Meeks  <michael@ximian.com>
2838
2839         * gconf/gconf.h: move (gconf_debug_shutdown) out of
2840         the internals guard - doh.
2841
2842         * gconf/gconf-client.c (gconf_client_get_default):
2843         ensure we still own the reference we keep around.
2844
2845 2002-02-04  Havoc Pennington  <hp@redhat.com>
2846
2847         * gconf/Makefile.am (regenerate-built-sources): give up and check
2848         stupid enum sources in to CVS and require manual rebuild.
2849
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.
2853
2854         * autogen.sh: use automake-1.4 aclocal-1.4 if found
2855
2856 2002-02-02  jacob berkman  <jacob@ximian.com>
2857
2858         * gconf/Makefile.am: re-enable explicit dependency on built
2859         sources, as it doesn't build otherwise.
2860
2861 2002-02-01  Havoc Pennington  <hp@pobox.com>
2862
2863         * gconf/Makefile.am: include the *.sh scripts
2864
2865         * gconf/regenerate-enum-footer.sh: fix screwup that broke build
2866
2867 2002-02-01  Havoc Pennington  <hp@redhat.com>
2868
2869         * gconf/Makefile.am: move the complicated enum rules into small
2870         shell scripts (regenerate-enum-*.sh), rename CORBA_SOURCES to 
2871         CORBA_SOURCECODE
2872
2873 2002-01-28  Michael Meeks  <michael@ximian.com>
2874
2875         * gconf/gconf-database.c: warning cleans.
2876         (impl_ConfigDatabase3_add_listener_with_properties):
2877         init name.
2878         (gconf_database_add_listener): right args for format.
2879
2880         * gconf/gconf-client.c: warning cleans.
2881
2882         * gconf/gconf-internals.c (gconf_orb_release):
2883         return shutdown status.
2884
2885         * gconf/gconf.c (gconf_detach_config_server):
2886         privatize again, and split out ORB shutdown into
2887         (gconf_debug_shutdown): here.
2888
2889 2002-01-25  Michael Meeks  <michael@ximian.com>
2890
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
2897         references.
2898
2899         * tests/testgconf.c (main): add
2900         gconf_detach_config_server
2901
2902         * gconf/gconf-internals.c
2903         (gconf_orb_get): remove bonobo activation
2904         worries, kill bogus fiddling with the default
2905         context.
2906         (gconf_orb_release): impl.
2907
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.
2915
2916 2002-01-28  Ross Golder  <ross@golder.org>
2917
2918         * configure.in: Updated popt URL.
2919
2920 2002-01-27  Havoc Pennington  <hp@pobox.com>
2921
2922         * gconf/Makefile.am: don't use BUILT_SOURCES, might fix annoying
2923         build problems
2924         (CLEANFILES): put stamp files in CLEANFILES
2925         (s-enum-types-h): make enum stamps depend on Makefile
2926
2927 2002-01-20  Havoc Pennington  <hp@pobox.com>
2928
2929         * gconf/Makefile.am: add gconf-enum-types.h/gconf-enum-types.c 
2930         files, thanks to Johan Dahlin
2931
2932         * gconf-2.0.pc.in (Libs): oops, we had Requires: bonobo-activation
2933         still
2934
2935 2002-01-16  Anders Carlsson  <andersca@gnu.org>
2936
2937         * gconf/gconf-client.c (gconf_client_get_full): Plug a leak.
2938
2939 2002-01-14  Havoc Pennington  <hp@pobox.com>
2940
2941         * gconf/gconf.c (gconf_key_is_below): fix to handle root dir
2942
2943         * gconf/gconftool.c (main): add --unapply-schema mode
2944
2945         * gconf/gconf-database.c (impl_ConfigDatabase_set_schema): allow
2946         unset schema if we get an empty schema name
2947
2948         * gconf/gconf.c (gconf_engine_associate_schema): allow NULL 
2949         schema name to unset the schema
2950
2951         * gconf/gconftool.c (do_recursive_unset): use new
2952         gconf_engine_recursive_unset internal function to do the unset
2953
2954         * backends/xml-cache.c, backends/xml-dir.c: rearrange things 
2955         to try and make directories auto-disappear when empty
2956
2957         * backends/xml-backend.c (remove_dir): make this do nothing
2958
2959         * backends/xml-dir.c (dir_all_subdirs): cache subdir names in the
2960         directory so we can cheaply check if we have subdirectories
2961
2962         * gconf/gconf-sources.c (gconf_sources_set_value): enhance the
2963         other giant error message
2964
2965         * gconf/gconf-internals.c (gconf_activate_server): improve error
2966         message to cover stale locks and explain how to active TCP for 
2967         ORBit
2968
2969         * gconf/gconf-sources.c (gconf_sources_recursive_unset): implement
2970
2971         * gconf/gconf.c (gconf_key_check): handle NULL key
2972
2973         * gconf/gconf-sources.c (gconf_sources_set_schema): allow NULL
2974         schema name
2975
2976         * gconf/GConf.idl: add flags to recursive_unset
2977
2978         * gconf/gconf.c (gconf_engine_recursive_unset): Add this internal
2979         API to use in gconftool etc.
2980         
2981 2002-01-14  Havoc Pennington  <hp@redhat.com>
2982
2983         * gconf/gconf-client.c (gconf_client_get_full): fix segfault on
2984         missing entry
2985
2986 2002-01-12  Havoc Pennington  <hp@pobox.com>
2987
2988         * examples/basic-gconf-app.c (main): remove unused variable, 
2989         fix from  Markus Bertheau 
2990
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 
2994         to GConfEngine)
2995         (gconf_client_key_is_writable): avoid pointless copies if
2996         possible, to make this fast
2997
2998         * gconf/gconf-schema.h: add padding to GConfSchema
2999
3000         * gconf/gconf-value.h: add padding to GConfEntry
3001
3002         * gconf/gconf-value.c (gconf_entry_equal): new internal function
3003
3004         * gconf/gconf-client.c: queue notifies to an idle handler, replace 
3005         CacheEntry with GConfEntry
3006
3007         * gconf/gconf-client.h (struct _GConfClientClass): add padding
3008         (struct _GConfClient): add padding
3009
3010 2001-12-11  Havoc Pennington  <hp@redhat.com>
3011
3012         * tests/testgconf.c (check_unset): fixes
3013
3014 2002-01-10  Havoc Pennington  <hp@pobox.com>
3015
3016         * configure.in: version to 1.1.6
3017         (GCONF_REVISION): increment
3018
3019 2002-01-08  Mark McLoughlin  <mark@skynet.ie>
3020
3021         * backends/xml-dir.c:
3022         (struct _Dir): kill unused subdir_cache.
3023         (dir_sync): move incorrect assertion.
3024
3025 2002-01-07  Mark McLoughlin  <mark@skynet.ie>
3026
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.
3031
3032 2002-01-05  Havoc Pennington  <hp@pobox.com>
3033
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.
3039
3040         * gconf/gconf-value.c (gconf_value_compare): new function,
3041         internal for now to avoid API addition
3042
3043         * gconf/gconf-client.c (cache_entry_list_destructively): new
3044         static function
3045         (gconf_client_all_entries): cache the requested entries, if 
3046         we are monitoring the dir we get the values from.
3047
3048         * gconf/gconf-value.c (gconf_entry_copy): new function, internal
3049         for now to avoid API addition
3050
3051 2002-01-04  Havoc Pennington  <hp@pobox.com>
3052
3053         * gconf/gconf-client.c (gconf_client_class_init): add
3054         GCONF_DEBUG_TRACE_CLIENT setting, to debug spew about
3055         what's going on
3056         (gconf_client_real_unreturned_error): also ignore
3057         GCONF_ERROR_NO_WRITABLE_DATABASE since it's typically not 
3058         an error to report.
3059
3060 2002-01-04  Havoc Pennington  <hp@pobox.com>
3061
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.
3065
3066 2002-01-04  Havoc Pennington  <hp@pobox.com>
3067
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!
3072
3073         * gconf/gconf.c (gconf_engine_notify_add): use
3074         add_listener_with_properties if available to send name of client
3075         to the server
3076
3077         * gconf/GConf.idl: put in ConfigDatabase3 with a couple of new
3078         methods, just to make this file more horrible
3079         
3080 2002-01-04  Havoc Pennington  <hp@pobox.com>
3081
3082         * gconf/gconfd.c (main): if GCONF_DEBUG_OUTPUT is set, 
3083         enable gconf_log_debug_messages
3084
3085 2002-01-03  Havoc Pennington  <hp@pobox.com>
3086
3087         * gconf/gconftool.c (main): honor
3088         GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL to do nothing for
3089         --makefile-install-mode
3090  
3091         * backends/xml-cache.c (cache_sync): fill in the error if we
3092         return a failure code.
3093
3094 2002-01-03  Havoc Pennington  <hp@pobox.com>
3095
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.
3100
3101 2001-12-22  Duarte Loreto <happyguy_pt@hotmail.com>
3102
3103         * configure.in: Added portuguese (pt) to ALL_LINGUAS
3104
3105 2001-12-17  Havoc Pennington  <hp@pobox.com>
3106
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.
3110
3111 2001-12-17  Josh Barrow  <drleary@mac.com>
3112
3113         * examples/basic-gconf-app.c:
3114         s/GLIB_DISABLE_DEPRECATED/G_DISABLE_DEPRECATED/
3115
3116 2001-12-17  Darin Adler  <darin@bentspoon.com>
3117
3118         * doc/gconf/.cvsignore:
3119         * examples/.cvsignore:
3120         Update.
3121
3122 2001-12-11  Havoc Pennington  <hp@redhat.com>
3123
3124         * gconf/gconfd.c (drop_old_clients): fix this
3125
3126         * gconf/gconf-database.c (client_alive_predicate): fix spelling in
3127         log message
3128
3129 2001-12-11  Havoc Pennington  <hp@redhat.com>
3130
3131         * gconf/gconfd.c (drop_old_clients): use
3132         CORBA_Object_non_existent() instead of ConfigListener_ping
3133
3134         * gconf/gconf-database.c (client_alive_predicate): use
3135         CORBA_Object_non_existent() instead of ConfigListener_ping
3136
3137 2001-12-11  Havoc Pennington  <hp@redhat.com>
3138
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 
3142         things lazily.
3143         (gconf_shutdown_daemon): ignore NO_SERVER error code
3144
3145         * backends/xml-dir.c (dir_get_value): always get schema name, not
3146         just if value is unset
3147
3148         * gconf/gconfd.c (main): don't free logname since there are atexit
3149         handlers for now
3150
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
3153         inefficiency.
3154
3155         * gconf/gconfd.c (main): set log handler for GLib
3156         (log_handler): mask extra flags out of log level
3157
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.
3160
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)
3163
3164         * tests/*: put in a big comment saying don't use these as example
3165         code since they are ugly-ass and broken.
3166
3167 Sun Dec  9 18:22:50 2001  Jonathan Blandford  <jrb@redhat.com>
3168
3169         * gconf.m4.in: Just when I think I understand the depths of the
3170         bogosity autoconf, something else comes up to impress me.
3171
3172 2001-12-09  Havoc Pennington  <hp@pobox.com>
3173
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.
3177
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
3181         source writability
3182
3183 2001-12-08  Havoc Pennington  <hp@pobox.com>
3184
3185         * gconf/gconf-client.c: fix some warnings
3186
3187         * gconf/gconf-internals.h: try to fix gettext issues
3188
3189 2001-12-08  Havoc Pennington  <hp@pobox.com>
3190
3191         * gconf/gconf-value.c (gconf_value_validate): take const arg
3192
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.
3196
3197         * gconf/gconf-client.c: Use new internal GConfEngine "exclusive
3198         owner" API
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 
3202         anyway.
3203
3204         * gconf/gconf-client.h: fix comment to be accurate about how 
3205         overlaps are handled
3206
3207 2001-12-06  Havoc Pennington  <hp@pobox.com>
3208
3209         * autogen.sh: fix up check for gettext to do glib-gettext instead
3210
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.
3213
3214         * doc/gconf/Makefile.am: make makefile use snazzy canonical
3215         gtk-doc makefile from gtk
3216
3217         * doc/gconf/gconf.sgml: make it reflect current reality a bit
3218         more.
3219
3220         * examples/basic-gconf-app.c: Update the example
3221
3222         * examples/complex-gconf-app.c: Move the old basic-gconf-app.c
3223         into here.
3224
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
3228
3229 2001-12-04  Havoc Pennington  <hp@redhat.com>
3230
3231         * gconf/gconf-internals.c (open_empty_locked_file): improve error
3232
3233         * gconf/gconftool.c (main): complain about using --config-source
3234         but not --direct
3235
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
3239         build scripts.
3240
3241         * gconf/gconfd.c (gconf_set_exception): add missing value to case
3242         statement so we don't crash
3243
3244         * examples/basic-gconf-app.c: update comment to say that the
3245         example isn't really right anymore
3246
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.
3250
3251         * Makefile.am (SUBDIRS): remove standard-schemas subdir, should
3252         have long ago
3253
3254 2001-12-04  jacob berkman  <jacob@ximian.com>
3255
3256         * gconf/Makefile.am: add an explicit dependency on the built files
3257
3258 2001-12-03  Laszlo Peter  <laca@ireland.sun.com>
3259
3260         * gconf/gconf-internals.c: oops, s/ulong_t/gulong/
3261
3262 2001-12-03  Laszlo Peter  <laca@ireland.sun.com>
3263
3264         * gconf/gconf-internals.c (get_hostname): fix memory alignment
3265         problem on Solaris.
3266
3267 2001-12-02  Havoc Pennington  <hp@pobox.com>
3268
3269         * gconf/gconf-value.h: put casts in the accessor macros, so they 
3270         can accept void pointers. Doh.
3271
3272 2001-11-26  Havoc Pennington  <hp@redhat.com>
3273
3274         * configure.in: version to 1.1.5
3275
3276 Tue Nov 20 15:37:58 2001  Owen Taylor  <otaylor@redhat.com>
3277
3278         * gconf/gconf-client.c: Remove extraneous gobject/* includes.
3279
3280 2001-11-18  Miles Lane  <miles@megapathdsl.net>
3281
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.
3286
3287 2001-10-31  Havoc Pennington  <hp@pobox.com>
3288
3289         * configure.in: bump version to 1.1.4, and set revision to 1
3290
3291         * doc/gconf/Makefile.am: fix this
3292
3293         * doc/gconf/gconf.types: update
3294         
3295 2001-10-31  Havoc Pennington  <hp@pobox.com>
3296
3297         * gconf/gconftool.c: add --recursive-unset command line option
3298
3299 2001-10-31  Zbigniew Chyla  <cyba@gnome.pl>
3300
3301         * gconf/gconf-internals.c (gconf_activate_server): Plug leak.
3302
3303 2001-10-30  Frederic Crozat  <fcrozat@mandrakesoft.com>
3304
3305         * backends/val-encode.c: add missing headers to remove
3306         some warnings.
3307
3308 2001-10-29  jacob berkman  <jacob@ximian.com>
3309
3310         * gconf-editor/gconf-editor.c (main): bind to GETTEXT_PACKAGE
3311         rather than PACKAGE
3312
3313         * autogen.sh: call glib-gettextize
3314
3315         * configure.in: set the GETTEXT_PACKAGE to be more like the gnome
3316         1 one
3317
3318 2001-10-30  Abel Cheung  <maddog@linux.org.hk>
3319
3320         * configure.in: When probing for db3, check libdb-3.3, libdb-3.2 and
3321           libdb-3.1 in addition to libdb-3 .
3322
3323 2001-10-16  Ross Golder  <ross@golder.org>
3324
3325         * gconf.spec.in: updated installation paths
3326
3327 2001-10-15  Havoc Pennington  <hp@redhat.com>
3328
3329         * gconf/gconftool.c (main): don't create config daemon for
3330         --get-default-source
3331         (main): shut down daemon in makefile install mode
3332
3333 2001-10-14  Havoc Pennington  <hp@redhat.com>
3334
3335         * configure.in: bump version, increment GCONF_CURRENT
3336         and GCONF_AGE due to API additions
3337
3338 2001-10-13  Jaka Mocnik  <jaka@gnu.org>
3339
3340         * configure.in: allow for db3 headers/includes installed in a
3341         strange location.
3342         * backends/Makefile.am: add BDB_CFLAGS to INCLUDES.
3343         
3344 2001-10-12  Havoc Pennington  <hp@redhat.com>
3345
3346         Merge from stable.
3347         
3348         * gconf/gconf.c (gconf_engine_set): check UTF-8 validity here,
3349         instead of at the higher levels 
3350
3351         * gconf/gconf-value.c (gconf_value_validate): new internal function
3352
3353 2001-10-12  Havoc Pennington  <hp@redhat.com>
3354
3355         Merge from stable.
3356         
3357         * tests/testschemas.c (check_schema_storage): add some UTF-8
3358
3359         * tests/testpersistence.c: UTF-8 test
3360
3361         * tests/testgconf.c: add a UTF-8 test
3362
3363         * gconf/gconf.c: UTF-8 checks, and some indentation
3364
3365         * gconf/gconf-schema.c: UTF-8 checks
3366
3367         * gconf/gconf-value.c: add some UTF-8 robustness
3368
3369 2001-10-12  Havoc Pennington  <hp@redhat.com>
3370
3371         Merging from stable.
3372         
3373         * backends/xml-entry.c (entry_unset_value): don't translate "%s"
3374
3375         * backends/xml-cache.c (cache_sync_foreach): printf string screwup
3376
3377         * backends/xml-backend.c (query_value): fix printf string derived
3378         from untrusted data
3379         (query_value): ditto
3380
3381         * configure.in: ensure we find the right bdb headers, if we find
3382         the library, error if not. Reported by Samuel Stringham
3383
3384         * gconf/gconf-internals.c (gconf_double_to_string): use g_snprintf
3385         not plain snprintf for Solaris 2.5.1 friendliness
3386
3387         * doc/gconf/tmpl/gconf-value.sgml: fix docs to mention that pairs
3388         contain only primitive types; pointed out by Gregory Merchan
3389
3390         * configure.in (BDB_CFLAGS): patch from Nils Philippsen to detect
3391         DB 3.1 if available.
3392
3393 2001-10-11  Havoc Pennington  <hp@redhat.com>
3394
3395         * tests/testgconf.c (check_utils): add test for the key
3396         escaper/unescaper thingy
3397
3398         * gconf/gconf.c (gconf_escape_key): new function
3399         (gconf_unescape_key): new function
3400
3401 2001-10-10  Havoc Pennington  <hp@redhat.com>
3402
3403         * gconf/gconf.c (gconf_valid_key): disallow non-ASCII characters
3404         in key names
3405
3406 2001-10-10  Havoc Pennington  <hp@redhat.com>
3407
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!)
3411
3412 2001-10-04  Havoc Pennington  <hp@redhat.com>
3413
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.
3417
3418 2001-10-04  Havoc Pennington  <hp@redhat.com>
3419
3420         * backends/xml-dir.c (dir_fill_cache_from_doc): remove an 
3421         extra warning
3422
3423 2001-10-04  Havoc Pennington  <hp@redhat.com>
3424
3425         * gconf/gconf-internals.c (open_empty_locked_file): include
3426         strerror in the error message on lock failure
3427
3428 2001-10-01  Michael Meeks  <michael@ximian.com>
3429
3430         * gconf/gconf.h: fix deprecated guard.
3431
3432         * gconf/gconf.c (ctable_remove_by_client_id): remove unused.
3433
3434 2001-09-29  Carlos Perello Marin <carlos@gnome-db.org>
3435
3436         * gconf/gconf.h (GCONF_DISABLE_DEPRECATED): closed a comment.
3437
3438 2001-09-28  Havoc Pennington  <hp@redhat.com>
3439
3440         * gconf/gconfd.c (main): fix write_byte_fd to always be initialized
3441
3442         * gconf/gconf-internals.c (gconf_get_current_lock_holder): read
3443         IOR file, not directory it's inside
3444
3445 2001-09-26  Havoc Pennington  <hp@redhat.com>
3446
3447         * gconf/gconf.h: mark gconf_init() deprecated
3448
3449         * gconf/Makefile.am (INCLUDES): libxml cflags
3450
3451         * gconf/gconf.c (gconf_init): make this a no-op, instead init on
3452         demand.
3453
3454         Merge from stable
3455         
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
3459
3460         * gconf/Makefile.am (install-data-local): don't install oafinfo
3461
3462         * configure.in: don't generate oafinfo
3463
3464         * gconf/gconftool.c (main): remove error message about running
3465         gconfd while installing schemas, instead we'll fail to get a lock.
3466
3467         * gconf/gconfd.c (main): redirect stdin/out/err to /dev/null
3468         instead of just closing them, saves ORBit some confusion
3469
3470         * backends/xml-cache.c (cache_clean): change the "items remain in
3471         cache" message to DEBUG level 
3472  
3473         * gconf/gconf-internals.c (gconf_get_lock_or_current_holder):
3474         rearrange locking to just use fcntl()
3475  
3476         * gconf/gconf.c (gconf_engine_connect): fix error message in
3477         default daemon case
3478  
3479         * gconf/gconfd.c (gconf_main): reduce exit-after-unused timeout to
3480         2 minutes
3481  
3482         * gconf/Makefile.am (INCLUDES): add -DGCONF_BINDIR
3483  
3484         * gconf/gconf-internals.c: delete nanosleep junk
3485                 
3486 2001-09-27  Havoc Pennington  <hp@redhat.com>
3487
3488         * backends/Makefile.am (INCLUDES): srcdir != builddir fixage
3489
3490         * configure.in: increment version for release
3491         (ORBIT_IDL): look for orbit-idl-2 using pkg-config
3492
3493 2001-09-17  Havoc Pennington  <hp@redhat.com>
3494
3495         * configure.in: look for orbit-idl-2 not orbit-idl, 
3496         add option to explicitly enable/disable bdb backend
3497
3498 2001-09-08  Wang Jian  <lark@linux.net.cn>
3499
3500         * configure.in(ALL_LINGUAS): Renamed zh_CN.GB2312 to zh_CN.
3501
3502 2001-08-25  Darin Adler  <darin@bentspoon.com>
3503
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.
3510
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.
3517
3518 2001-08-19  Jesus Bravo Alvarez  <jba@pobox.com>
3519
3520         * configure.in: Added gl (Galician) to ALL_LINGUAS.
3521
3522 2001-08-17  Maciej Stachowiak  <mjs@noisehavoc.org>
3523
3524         * gconf/gconf-internals.c: (gconf_handle_oaf_exception): Handle
3525         rename for ParseFailed exception.
3526
3527 2001-08-15  Havoc Pennington  <hp@redhat.com>
3528
3529         Merge from stable.
3530         
3531         * backends/xml-backend.c (x_shutdown): ditto
3532         (resolve_address): ditto
3533
3534         * backends/bdb-backend.c (vtable_bdb_shutdown): ditto
3535         (vtable_bdb_resolve_address): ditto
3536
3537         * gconf/gconf-internals.c (gconf_load_source_path): ditto
3538
3539         * gconf/gconfd.c (gconf_server_load_sources): change to DEBUG
3540         level
3541
3542         * backends/xml-backend.c (g_module_check_init): change a log
3543         message to DEBUG level
3544
3545 2001-08-14  Michael Meeks  <michael@ximian.com>
3546
3547         * configure.in: depend on bonobo-activation >= 0.9.1
3548
3549         * gconf/Makefile.am: Update to install GNOME_Config.server.
3550
3551         * configure.in: update to GNOME_Config.server
3552
3553         * gconf/Makefile.am (-DIID): rename to GNOME_Config_Daemon
3554         to fit with the bonobo namespace guidelines.
3555
3556         * gconf/GNOME_Config.server.in: update & indent.
3557
3558 2001-08-13  Marco Pesenti Gritti  <mpeseng@tin.it>
3559
3560         * doc/gconf/gconf.sgml: small explanation about 
3561         AM_GCONF_SOURCE_2 macro
3562         
3563 2001-08-13  Havoc Pennington  <hp@redhat.com>
3564
3565         Merge from stable.
3566         
3567         * gconf/gconf-internals.c (gconf_load_source_path): patch from
3568         Adam Spiers to honor variables in include lines
3569
3570         * gconf/gconf-database.c (notify_listeners_cb):
3571         indentation/whitespace changes
3572
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.
3576
3577 2001-08-13  Michael Meeks  <michael@ximian.com>
3578
3579         * gconf/gconf-internals.c: remove nano_sleep; it's unused.
3580
3581         * configure.in: remove nanosleep check.
3582
3583 2001-08-07  Marco Pesenti Gritti  <mpeseng@tin.it>
3584
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
3589         
3590 2001-08-07  Marco Pesenti Gritti  <mpeseng@tin.it>
3591
3592         * gconf/gconf.m4.in: remove duplicate macro
3593         
3594 2001-08-07  Marco Pesenti Gritti  <mpeseng@tin.it>
3595
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.
3605
3606 2001-08-03  Martin Baulig  <baulig@suse.de>
3607
3608         * gconf/gconfd.oafinfo.in: Renamed -> gconfd.server.in.
3609
3610         * Makefile.am: Install gconfd.server into the correct dir
3611         for bonobo-activation.
3612
3613 2001-08-03  Abel Cheung <maddog@linux.org.hk>
3614
3615         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
3616         
3617 2001-08-02  Havoc Pennington  <hp@pobox.com>
3618
3619         * configure.in: version 1.1.1
3620
3621         * autogen.sh: don't search for subdirs to autogen, that's just
3622         annoying if you have a make dist directory laying around
3623
3624 2001-08-01  Michael Meeks  <michael@ximian.com>
3625
3626         * port to bonobo-activation from oaf.
3627
3628 2001-07-28  Yanko Kaneti  <yaneti@declera.com>
3629
3630         * gconf/gconftool.c (main): s/all-pairs/all-entries/ in the error
3631         messages
3632
3633 2001-07-24  Darin Adler  <darin@bentspoon.com>
3634
3635         Merge from stable.
3636
3637         * acinclude.m4: Set BUILD_INCLUDED_LIBINTL for compatibility
3638         with newer versions of gettext.
3639
3640 2001-07-23  Havoc Pennington  <hp@redhat.com>
3641
3642         Merge from stable.
3643         
3644         * gconf/gconfd.c (main): don't warn about failure to create
3645         ~/.gconfd if EEXIST
3646
3647         * gconf/gconf.c (gconf_engine_all_entries): convert empty string 
3648         to NULL
3649
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
3653
3654         * gconf/gconftool.c (list_pairs_in_dir): put a newline after the
3655         error message
3656
3657 2001-07-16  Havoc Pennington  <hp@redhat.com>
3658
3659         Merge from stable.
3660         
3661         * gconf/gconfd.c (main): add super-lame hack to 
3662         pass currently-running gconfd to oafd if oafd has lamely leaked it
3663         due to lame-assness
3664
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
3668         owner of a lock
3669
3670         * gconf/GConf.idl: add subclass of ConfigDatabase for some
3671         exciting new hacky functions. 
3672
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
3676         question. ;-)
3677
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.
3682
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
3686         much.
3687         
3688 2001-07-18  Anders Carlsson  <andersca@gnome.org>
3689
3690         * configure.in: Remove gconf-config and gconf.m4 from AC_OUTPUT
3691
3692 2001-07-17  Anders Carlsson  <andersca@gnome.org>
3693
3694         * Makefile.am: Remove gconf-config and gconf.m4 from EXTRA_DIST
3695         and do not try to install them.
3696
3697         * gconf.m4.in: Remove this file.
3698
3699         * gconf-config.in: Remove this file.
3700
3701 2001-07-17  Darin Adler  <darin@bentspoon.com>
3702
3703         * gconf/gconf.c: (gconf_postinit):
3704         Let CORBA generate the ID instead of providing one ourselves.
3705
3706 2001-07-17  Laszlo Peter  <laca@ireland.sun.com>
3707
3708         * gconf/Makefile.am: remove the -Wno-unused flag; not portable.
3709
3710 2001-07-14  Kjartan Maraas  <kmaraas@gnome.org>
3711
3712         * configure.in: Added "nn" to ALL_LINGUAS.
3713         
3714 2001-07-13  Darin Adler  <darin@bentspoon.com>
3715
3716         Fix a bunch of warnings.
3717
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.
3739
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.
3743
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
3747         const in one place.
3748
3749         * gconf/gconftool.c: (main): Add cast.
3750
3751 2001-07-07  Peter Williams  <peter@beta.newton.cx>
3752
3753         * backends/bdb*: s,uint32_t,guint32,g
3754
3755 2001-07-11  Michael Meeks  <michael@ximian.com>
3756
3757         * gconf/Makefile.am (CLEANFILES): add stamps so we can
3758         clean & make.
3759
3760 2001-07-03  Michael Meeks  <michael@ximian.com>
3761
3762         * configure.in: add ORBIT_IDL check.
3763
3764 2001-07-02  Carlos Perello Marin <carlos@gnome-db.org>
3765
3766         * gconf/gconf-client.c: /s/g_signal_newc/g_signal_new to reflect
3767         the changes at glib2 module. Now It compiles.
3768
3769 2001-06-29  Laszlo Peter  <laca@ireland.sun.com>
3770
3771         * gconf/Makefile.am: Fix the marshaller rules to avoid looping.
3772
3773 2001-06-20  Peter Williams  <peterw@ximian.com>
3774
3775         * configure.in (ACLOCAL): Save flags to aclocal -- life
3776         easier when configure.in changes.
3777
3778 2001-06-15  Havoc Pennington  <hp@redhat.com>
3779
3780         * configure.in: remove library versioning for 
3781         no-longer-existing gconf-gtk lib and Guile wrapper
3782
3783 2001-06-01  Peter Williams  <peterw@ximian.com>
3784
3785         * configure.in: Check if DB3 headers are in db3/db.h as well.
3786
3787         * acconfig.h: Add HAVE_DB3_DB_H
3788
3789         * backends/bdb.c: #include config.h to get HAVE_DB3_DB_H
3790
3791         * backends/bdb.h: Include the proper db.h
3792
3793 2001-05-11  Tomas O Connor  <tomas.oconnor@ireland.sun.com>
3794
3795         * gconf/gconf-internals.h, gconf/gconf-value.h: move
3796         gconf_value_new_from_string to make it a public API
3797
3798 2001-05-11  Havoc Pennington  <hp@redhat.com>
3799
3800        Merge from stable.
3801
3802         * gconf/gconfd.c (signal_handler): on SIGUSR1, enable/disable
3803         debug spew.
3804
3805         * gconf/gconf-internals.c (gconf_log): use a runtime variable to
3806         decide whether to log debug messages
3807
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
3811
3812 2001-05-09  Havoc Pennington  <hp@redhat.com>
3813
3814         * gconf/Makefile.am: remove testgconfclient from build, should 
3815         now be made nongraphical and stuck in tests/
3816
3817         * Makefile.am (SUBDIRS): remove "wrappers" from subdirs
3818
3819         * configure.in: remove Guile cruft, fix up pkg-config usage
3820
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...)
3825         
3826 2001-04-28  Murray Cumming  <murrayc@usa.net>
3827
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).
3833
3834 2001-04-17  Michael Meeks  <michael@ximian.com>
3835
3836         * gconf/Makefile.am (dist-hook): don't distribute built
3837         sources.
3838
3839 Wed Apr 11 08:07:11 2001  George Lebl <jirka@5z.com>
3840
3841         * gconf/gconf.c (gconf_engine_unref): If unreffing the default engine
3842           set the default_engine pointer to NULL
3843
3844 2001-04-02  Federico Mena Quintero  <federico@ximian.com>
3845
3846         * acinclude.m4: "sourceforge.net", not "sourceforce.net".
3847
3848 2001-03-24  Anders Carlsson   <andersca@gnu.org>
3849
3850         * configure.in (REBUILD): Add gconf-2.0.pc to AC_OUTPUT files.
3851
3852 2001-03-23  Marius Andreiana  <mandreiana@yahoo.com>
3853
3854         * configure.in: Added ro (Romanian) to ALL_LINGUAS
3855
3856 2001-03-18  Martin Baulig  <baulig@suse.de>
3857
3858         * gconf/gthreadpool.[ch]: Removed.
3859         * gconf/gconf-glib-private.h: Removed.
3860         * gconf/gconf-glib-public.h: Removed.
3861
3862         * gconf/gconf-client.[ch]: Moved here from wrappers/gtk/
3863         and migrated to use GObject.
3864
3865         * gconf/testgconfclient.c: Moved here from wrappers/gtk/.
3866
3867         * gconf/gconf-internals.h
3868         (gconf_CORBA_Object_hash, gconf_CORBA_Object_equal):
3869         New static inline functions.
3870
3871         * gconf/gconfmarshal.list: New file.
3872
3873         * gconf/gconftool.c: Use libxml 2.
3874
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.
3878
3879         * wrappers/gtk/*: Moved to gconf/.
3880
3881 2001-03-18  Martin Baulig  <baulig@suse.de>
3882
3883         We're now on the GNOME 2.0 platform.
3884
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.
3888
3889         * acinclude.m4: Add the contents of
3890         gnome-common/macros2/gnome-pkgconfig.m4 here.
3891
3892         * Makefile.am: Install gconf-2.0.pc.
3893
3894         * gconf-2.0.pc.in: New file.
3895
3896 2001-03-13  Kjartan Maraas  <kmaraas@gnome.org>
3897
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.
3901         
3902 2001-03-12  Timur Bakeyev  <timur@gnu.org>
3903
3904         * Makefile.am: Made warning printing a bit nicer.
3905         
3906 2001-03-06  Havoc Pennington  <hp@redhat.com>
3907
3908         Merge from stable.
3909         
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
3914         descriptors open.
3915         (gconfd_need_log_cleanup): new internal function used to control 
3916         whether the periodic cleanup function needs to save a log file
3917
3918 2001-02-27  Havoc Pennington  <hp@redhat.com>
3919
3920         * gconf.spec.in: %define prefix %{_prefix} instead of @prefix@
3921
3922 2001-02-27  Havoc Pennington  <hp@redhat.com>
3923
3924         Merge from stable.
3925         
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,
3928         they go to syslog.
3929
3930         * gconf/Makefile.am (INCLUDES): set the log domain
3931
3932         * gconf/gconftool.c (recurse_subdir_list): the list contains full
3933         directory paths to start with, fix from Colm
3934
3935         * gconf/gconfd.c (register_database): bugfix from Colm
3936
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
3940         Colm
3941         (gconf_engine_remove_dir): new function from Colm, this was
3942         implemented on the server side but somehow never exported.
3943
3944         * gconf/gconf-database.c (gconf_database_get_persistent_name): Fix
3945         from Colm to handle the case of empty databases (no sources).
3946
3947 2001-02-05  Havoc Pennington  <hp@redhat.com>
3948
3949         File permissions fixes, problem pointed out by Steve Fox.
3950         
3951         * backends/xml-dir.c (dir_sync): chmod() the XML file after
3952         xmlSaveFile creates it
3953
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.
3958         
3959         * backends/dir-utils.c (mode_t_to_mode): make this more portable,
3960         for paranoia
3961
3962         * backends/xml-dir.c (dir_load): We were getting directory
3963         permissions from the %gconf.xml file, instead of from the XML root
3964         directory. Fix.
3965
3966 2001-01-23  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>
3967
3968         * configure.in: Add 'sk' to ALL_LINGUAS
3969
3970 2001-01-21  Havoc Pennington  <hp@pobox.com>
3971
3972         * configure.in: change version to 1.1
3973         
3974         Sync from stable
3975         
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
3981
3982         * tests/testschemas.c (check_schema_use): fix indentation and mem
3983         leaks
3984
3985         * gconf/gconftool.c (do_get): print default value from schema
3986
3987 2000-12-19  Rebecca Schulman  <rebecka@eazel.com>
3988
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.
3992
3993 Fri Dec 01 00:54:33 2000  George Lebl <jirka@5z.com>
3994
3995         * gconf/gconf-locale.c (gconf_split_locale):  When inserting "C"
3996           into a list, dup it first to avoid a possible crash later.
3997
3998 2000-11-30  Havoc Pennington  <hp@redhat.com>
3999
4000         * gconf/gconf.c (gconf_engine_unset): Fix dereference of NULL GError**
4001
4002 2000-11-20  Havoc Pennington  <hp@redhat.com>
4003
4004         * doc/gconf/Makefile.am: Fix "make scan" to actually work, so 
4005         you can build the docs
4006
4007 2000-11-11  Havoc Pennington  <hp@pobox.com>
4008
4009         * gconf/gconf-value.c (gconf_entry_set_is_writable): Add this
4010         function
4011
4012 2000-11-05  Havoc Pennington  <hp@pobox.com>
4013
4014         * gconf/gconf-glib.c, gconf/gconf-glib-private.h: Remove the 
4015         GMarkup and Unicode stuff, turned out to be unnecessary.
4016         Left only GError.
4017
4018 2000-11-05  Havoc Pennington  <hp@pobox.com>
4019
4020         * gconf/gconfd.c (parse_listener_entry): fix strtoul error
4021         checking
4022
4023         * gconf/gconf-internals.c (gconf_string_to_gulong): Fix error
4024         checking on strtoul
4025
4026 2000-11-05  Havoc Pennington  <hp@pobox.com>
4027
4028         * gconf/gconf-glib.c (g_propagate_error): Sync from GLib,
4029         should fix one very minor memory leak in GConf
4030
4031 2000-10-31  Almer S. Tigelaar  <almer1@dds.nl>
4032
4033         * configure.in: Add 'nl' to ALL_LINGUAS
4034
4035 2000-10-26  Havoc Pennington  <hp@pobox.com>
4036
4037         * configure.in: Bump version to 0.11
4038
4039 2000-10-25  Havoc Pennington  <hp@pobox.com>
4040
4041         * wrappers/gtk/gconf-client.c: remove get_nocopy, since it can't
4042         be implemented since we don't cache everything. Oops.
4043
4044 2000-10-16  Havoc Pennington  <hp@pobox.com>
4045
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
4050         very cleanly
4051
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.
4058
4059         So, this is mild API breakage (but hopefully no one was using the
4060         feature anyway).
4061         
4062 2000-10-10  Christophe Merlet  <christophe@merlet.net>
4063
4064         * backends/Makefile.am: Added README.bdb in EXTRA_DIST.
4065
4066         * gconf/gconf-glib.c: Corrected mispelling string.
4067
4068 2000-10-10  Havoc Pennington  <hp@pobox.com>
4069
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.
4075
4076         * gconf/gconf-sources.c (gconf_sources_all_entries): fix
4077         cut-and-paste error resulting in NULL pointer dereference.
4078
4079 2000-10-08  Havoc Pennington  <hp@pobox.com>
4080
4081         gconfd should now exit when not in use.
4082         
4083         * gconf/gconf-database.c (gconf_database_drop_dead_listeners):
4084         function to drop any listeners with dead clients.
4085
4086         * gconf/gconfd.c (drop_old_databases): before checking 
4087         whether the listener count is 0, clean up listeners belonging 
4088         to dead clients.
4089
4090         * gconf/gconf-listeners.c (gconf_listeners_remove_if): New
4091         function removes listeners matching some predicate
4092         (ltable_remove): fix some indentation
4093
4094 2000-10-08  Havoc Pennington  <hp@pobox.com>
4095
4096         * configure.in: version to 0.10
4097
4098 2000-10-06  Havoc Pennington  <hp@pobox.com>
4099
4100         * wrappers/gtk/gconf-client.c: indentation/formatting
4101
4102         * gconf/gconfd.c (parse_listener_entry): extra paranoia error
4103         check. Also, make log messages level DEBUG, not WARNING.
4104
4105 2000-10-06  Havoc Pennington  <hp@pobox.com>
4106
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.
4110
4111         * gconf/gconfd.c (main): unregister with OAF after all shutdown is
4112         complete.
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
4118         robust, possibly.
4119
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.
4129         
4130         * gconf/gconfd.c (gconf_set_exception): add ConfigInShutdown
4131
4132         * gconf/GConf.idl: add ConfigInShutdown error
4133
4134         * gconf/gconf.c (corba_errno_to_gconf_errno): add ConfigInShutdown
4135
4136         * gconf/gconf-error.h: two error codes had the same integer value.
4137         Also, add GCONF_ERROR_IN_SHUTDOWN
4138
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.
4142
4143         * gconf/gconf.c (gconf_server_broken): treat ConfigInShutdown 
4144         as a broken server.
4145         
4146 2000-10-06  Colm Smyth  <colm.smyth@sun.com>
4147
4148         * Committed BerkeleyDB back-end:-
4149
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
4153
4154         * Changes to make GConf build with an ISO C compiler:-
4155
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
4160           tests/testschemas.c
4161
4162
4163 2000-10-03  Robin * Slomkowski  <rslomkow@eazel.com>
4164
4165         * gconf.spec.in:/etc/etc is not a directory
4166         OK I am less foolish now
4167
4168 2000-10-03  Robin * Slomkowski  <rslomkow@eazel.com>
4169
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
4173
4174 2000-10-03  Havoc Pennington  <hp@redhat.com>
4175
4176         * gconf/gconfd.c (close_append_handle): set invalid FILE* to 
4177         NULL afterward, avoid segfaults.
4178
4179         * Makefile.am: add install-schemas target here which recurses
4180         into standard-schemas and runs install-schemas
4181
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'
4187
4188 2000-09-29  Havoc Pennington  <hp@pobox.com>
4189
4190         * gconf/gconf.c (drop_all_caches): don't spew warnings here for
4191         now.
4192         (invalidate_cached_values): no spew
4193         (update_listener): remove more spew
4194
4195 2000-09-29  Havoc Pennington  <hp@pobox.com>
4196
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
4201         I'll keep looking)
4202
4203 2000-09-26  Havoc Pennington  <hp@pobox.com>
4204
4205         * gconf/gconf-locale.c (gconf_locale_cache_expire): fix a
4206         static initialization with non-const value
4207
4208 2000-09-25  Havoc Pennington  <hp@pobox.com>
4209
4210         Bug fixes and portability issues reported by Colm Smyth
4211         
4212         * gconf/gconf-sources.c (gconf_sources_query_value): fix NULL
4213         pointer dereference
4214
4215         * s/__FUNCTION__/G_GNUC_FUNCTION/g;
4216         
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...)
4220
4221         * gconf/gconftool.c: use N_ not _ with static strings.
4222
4223         * tests/testschemas.c: Don't include locale.h
4224
4225         * gconf/gconf-internals.h: Remove some of the #defines from 
4226         the non-ENABLE_NLS case. 
4227
4228 2000-09-24  Havoc Pennington  <hp@pobox.com>
4229
4230         * NEWS: Put release notes for 0.9 in here.
4231
4232 2000-09-24  Havoc Pennington  <hp@pobox.com>
4233
4234         * gconf/gconfd.c (gconf_main): With debugging turned on, use
4235         obscenely short timeout for periodic cleanups, to ensure bugs 
4236         get triggered.
4237
4238         * gconf/gconf-database.c (impl_ConfigDatabase_all_dirs): Set
4239         _release to TRUE for sequences
4240         (impl_ConfigDatabase_all_entries): ditto
4241
4242         * gconf/gconfd.c (half_hour_timeout): exit only if client count is
4243         0 after dropping all dead clients.
4244         
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
4248
4249         * backends/xml-dir.c (dir_all_subdirs): Fix a memory leak
4250
4251         * gconf/gconfd.c: Implement client list logging
4252
4253         * gconf/gconf.c: Add self to the server's client list 
4254         whenever we get a new server objref
4255
4256 2000-09-23  Havoc Pennington  <hp@pobox.com>
4257
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.
4261
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.
4265
4266 2000-09-21  Havoc Pennington  <hp@pobox.com>
4267
4268         * configure.in: remove intl/Makefile
4269
4270         * Makefile.am: remove intl subdir
4271
4272 2000-09-17  Havoc Pennington  <hp@pobox.com>
4273
4274         * gconf/gconf.c: Update to reflect IDL change
4275
4276         * gconf/GConf.idl: Change invalidate_cached_values() to take
4277         multiple keys to invalidate; better efficiency that way
4278
4279 2000-09-17  Havoc Pennington  <hp@pobox.com>
4280
4281         * gconf/gconf-database.c: Add new methods on ConfigDatabase
4282
4283         * gconf/gconf.c: Add new methods on ConfigListener, but they
4284         do nothing at the moment
4285
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 
4289         them later
4290
4291 2000-09-16  Havoc Pennington  <hp@pobox.com>
4292
4293         * gconf/gconf.c (gconf_engine_key_is_writable): And actually 
4294         implement it here. Doh.
4295
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... 
4299
4300         * gconf/gconf.c (corba_errno_to_gconf_errno): add
4301         NO_WRITABLE_DATABASE handling here also
4302
4303         * gconf/gconfd.c (gconf_set_exception): handle
4304         NO_WRITABLE_DATABASE error
4305
4306         * gconf/GConf.idl: Add NoWritableDatabase to error type enum
4307
4308         * wrappers/gtk/testgconfclient.c (entry_attached_to): Update 
4309         to properly handle writability
4310
4311         * examples/simple-controller.c (main): set entry sensitivity
4312         properly
4313
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
4317         writability
4318
4319         * wrappers/gtk/gconf-client.c (gconf_client_finalize): Move all
4320         cleanup to finalize, remove destroy handler     
4321
4322 2000-09-16  Havoc Pennington  <hp@pobox.com>
4323
4324         * doc/gconf/tmpl/gconf-value.sgml: Update some docs
4325
4326         * wrappers/gtk/gconf-client.c (notify_listeners_callback): Update
4327         to reflect new callback signature for GConfClientNotifyFunc
4328
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.
4332
4333         * gconf/gconf-database.c (gconf_database_notify_listeners): Add
4334         is_writable here
4335
4336         * gconf/GConf.idl: Add writable flag to notification
4337
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.
4343
4344         * wrappers/gtk/gconf-client.c (gconf_client_get_entry): Update
4345         to reflect GConfEngine changes
4346
4347         * gconf/gconf.c (gconf_engine_all_entries): Get the writability
4348         stuff
4349         (gconf_engine_get_full): rename to gconf_value_get_entry 
4350         and return an entry; drop the is_default argument.
4351
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 
4355         flag on the entries
4356
4357         * gconf/gconf-value.c (gconf_entry_new_nocopy): Default to 
4358         the entry being writable
4359
4360         * gconf/gconf-database.c: Change to match IDL changes
4361
4362         * gconf/GConf.idl (lookup_with_locale): Add out param for
4363         writability
4364         (all_entries): Add out param for writability
4365
4366         * gconf/gconf-value.h: Add is_writable field to GConfEntry
4367         (gconf_entry_get_is_writable): Add this
4368
4369         * wrappers/gtk/gconf-client.c (gconf_client_key_is_writable): Add 
4370         the matching stub here
4371
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 
4374         TRUE at the moment.
4375
4376         * gconf/gconf-changeset.c (gconf_change_set_set_user_data,
4377         gconf_change_set_get_user_data): Add user data for language
4378         bindings
4379
4380         * gconf/gconf.c (gconf_engine_set_user_data,
4381         gconf_engine_get_user_data): Add user data for language
4382         bindings
4383
4384 2000-09-15  Havoc Pennington  <hp@redhat.com>
4385
4386         * s/gconf_concat_key_and_dir/gconf_concat_dir_and_key/g
4387
4388 2000-09-14  Havoc Pennington  <hp@pobox.com>
4389
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
4394
4395         * acinclude.m4: Add never-use-included-gettext macro
4396
4397         * configure.in: Bump version to 0.9
4398
4399 2000-09-14  Darin Adler  <darin@eazel.com>
4400
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
4403         intended.
4404         
4405         * gconf/gconf-sources.c: (gconf_sources_new_from_addresses):
4406         Removed unused variable.
4407         * tests/.cvsignore: Added some generated files.
4408
4409 2000-09-13  Havoc Pennington  <hp@redhat.com>
4410
4411         * More renaming:
4412
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;
4416
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;
4421
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;
4431
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;
4441
4442 2000-09-13  Havoc Pennington  <hp@redhat.com>
4443
4444         * gconf/gconf.c (gconf_engine_all_entries): Put full key in
4445         GConfEntry (but we only get the relative key over the 
4446         CORBA wire)
4447
4448         * wrappers/gtk/gconf-client.c (cache_pairs_in_dir): Change to 
4449         reflect fact that GConfEntry now contains full key
4450
4451         * gconf/gconftool.c (list_pairs_in_dir): Change to reflect full
4452         key in GConfEntry
4453
4454         * doc/gconf/tmpl/gconf-value.sgml: updated GConfEntry docs on this
4455         matter.
4456         
4457 2000-09-11  Havoc Pennington  <hp@redhat.com>
4458
4459         * Actually use gettext. Involves checking in configure.in, linking
4460         to it in Makefile.am, making _() do the right thing.
4461
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.
4464
4465 2000-09-10  Havoc Pennington  <hp@pobox.com>
4466
4467         * gconf/gconf-value.c (gconf_entry_new): New function
4468         (gconf_entry_set_value): New function
4469
4470 2000-09-10  Havoc Pennington  <hp@pobox.com>
4471
4472         * Another rename fest:
4473
4474         #!/usr/bin/perl -pi.bak
4475
4476         ## note that this regexp could affect non-GConf stuff
4477         s/writeable/writable/g;
4478
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;
4484
4485 2000-09-10  Havoc Pennington  <hp@pobox.com>
4486
4487         * gconf/gconf-value.c (gconf_value_new): don't use
4488         GCONF_INTERNAL_VALUE_TYPE_VALID
4489
4490         * gconf/gconf-internals.h, gconf/gconf-error.h:
4491         (gconf_error_new)
4492         (gconf_set_error)
4493         (gconf_compose_errors):
4494         Move these to gconf-internals.h, now they aren't needed due
4495         to GError
4496
4497         * gconf/gconf.c: Get rid of GConfEnginePrivate, just define struct
4498         _GConfEngine in the private .c file, like a sane person.
4499
4500         * gconf/gconf-value.h: remove GCONF_INTERNAL_VALUE_TYPE_VALID
4501
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
4506         
4507 2000-09-09  Havoc Pennington  <hp@pobox.com>
4508
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
4518
4519 2000-09-09  Havoc Pennington  <hp@pobox.com>
4520
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
4523
4524
4525         Throughout, rename a bunch of stuff:
4526
4527         #!/usr/bin/perl -pi.bak
4528
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;
4554
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;
4559
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;
4564
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;
4568
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;
4572
4573         s/gconf_get\(/gconf_engine_get (/g;
4574         s/gconf_set\(/gconf_engine_set (/g;
4575
4576         
4577 2000-09-09  Havoc Pennington  <hp@pobox.com>
4578
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
4582         format
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
4587
4588         * gconf/gconf-listeners.c (gconf_listeners_get_data):
4589         new function to get listener data for a connection ID
4590
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
4593         last hour
4594         (logfile_read, logfile_save): rewrite to use new format, not the
4595         GMarkup format
4596
4597         * gconf/gconf-internals.c (gconf_object_to_string): Add 
4598         this function
4599
4600 2000-09-04  Havoc Pennington  <hp@pobox.com>
4601
4602         * doc/gconf/Makefile.am (LDFLAGS): libs have been renamed
4603
4604 2000-08-31  Havoc Pennington  <hp@redhat.com>
4605
4606         * Massive rename from GConfError to GError
4607
4608         * gconf/gconf-error.h, gconf/gconf-error.c: Remove
4609         redundant-with-GError stuff; add GCONF_ERROR domain
4610         macro
4611
4612 2000-08-30  Havoc Pennington  <hp@redhat.com>
4613
4614         * gconf/gconfd.c (restore_listener): use gconf_string_to_gulong
4615         instead of atoi for reading a ulong out of the log file
4616
4617         * gconf/gconf.c (gconf_engine_get_default): assign to the
4618         default_engine variable, so we don't keep creating new default
4619         engines.
4620
4621         * gconf/gconf-listeners.c (ltable_next_cnxn): Start "uniqueness
4622         bits" at a different location depending on pid
4623
4624 2000-08-30  Havoc Pennington  <hp@redhat.com>
4625
4626         * gconf/gconf.c: Change client to new system (use object
4627         references to ConfigDatabase instead of the integer context ID).
4628         
4629         * gconf/gconf-backend.c: Fix path to uninstalled modules, and 
4630         put the whole uninstalled modules thing in GCONF_ENABLE_DEBUG 
4631
4632         * gconf/gconf-database.c: add some missing includes, and fix
4633         a typo bug
4634
4635         * gconf/gconfd.c: CORBA_Object_duplicate() the ConfigDatabase
4636         objrefs before passing them back out to ORBit. Remove
4637         some bogus assertions.
4638         
4639         * TODO: Updates, added notes from Colm
4640
4641 2000-08-30  Havoc Pennington  <hp@pobox.com>
4642
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.
4648
4649 2000-08-29  Havoc Pennington  <hp@redhat.com>
4650
4651         * gconf/gconfd.c: Add logfile load/save; not really working 
4652         yet.
4653
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
4657         instead.
4658
4659         * gconf/gconf-listeners.c: #include <string.h>, 
4660         store full key name on tree nodes, add connection ID to 
4661         foreach callback
4662
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
4665
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.
4672
4673 2000-08-27  Havoc Pennington  <hp@pobox.com>
4674
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 
4678         GLib 2.0
4679
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.
4683
4684 2000-08-26  Havoc Pennington  <hp@pobox.com>
4685
4686         * gconf/gconf-listeners.c (gconf_listeners_foreach): Add a foreach
4687         function, will use that to dump the daemon's listener table to
4688         a file.
4689
4690 2000-08-26  Havoc Pennington  <hp@pobox.com>
4691
4692         * TODO: Created a TODO file
4693
4694 2000-08-09  Havoc Pennington  <hp@pobox.com>
4695
4696         * configure.in: 0.8
4697
4698         * fixes from Ralph Loader for DESTDIR support (hopefully 
4699         got them all in)
4700
4701         * gconf.spec: fix description (the G is just a G, doesn't stand
4702         for anything)
4703         
4704 2000-08-09  Robin * Slomkowski  <rslomkow@eazel.com>
4705
4706         * gconf.spec.in: made it so the specfile worked for rpm builds
4707
4708 2000-08-07  Robin * Slomkowski  <rslomkow@eazel.com>
4709
4710         * gconf/Makefile.am: use top_build instead of build
4711         and some beautification.
4712
4713 Wed Aug 02 18:11:37 2000  George Lebl <jirka@5z.com>
4714
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
4718           on extraction.
4719
4720         * gconf/GConf.idl:  Add value_list_type, value_car_type,
4721           value_cdr_type to the ConfigSchema struct
4722
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
4732
4733         * gconf/gconf-internals.h:  For gconf_value_new_list_from_string
4734           and gconf_value_new_pair_from_string add an GConfError field
4735
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
4739           these fields.
4740
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
4746           problems.
4747
4748         * gconf/gconf.c (gconf_unique_key): use GPOINTER_TO_UINT to
4749           avoid warning on alpha
4750
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.
4758
4759 2000-07-27  Havoc Pennington  <hp@redhat.com>
4760
4761         * backends/Makefile.am (backenddir): backenddir is
4762         pkglibdir/MAJOR_VERSION, not plain VERSION
4763
4764         * configure.in: Bump to 0.7
4765
4766 Wed Jul 26 12:40:45 2000  George Lebl <jirka@5z.com>
4767
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
4771
4772 Tue Jul 25 23:48:24 2000  George Lebl <jirka@5z.com>
4773
4774         * wrappers/gtk/gconf-client.c:  || doesn't mean && :).  It would
4775           consider as an above directory every directory that had a notify_id
4776
4777 2000-07-25  James Henstridge  <james@daa.com.au>
4778
4779         * Makefile.am, gconf/Makefile.am: make relative symlinks rather than
4780         absolute path symlinks.  Again to help packagers.
4781
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
4785         packages.
4786
4787 Mon Jul 24 16:39:01 2000  George Lebl <jirka@5z.com>
4788
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.
4797
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
4801           notifications.
4802
4803 2000-07-24  Yukihiro Nakai <nakai@gnome.gr.jp>
4804
4805         * configure.in: Add Japanese (ja)
4806
4807 2000-07-21  Robin * Slomkowski  <rslomkow@eazel.com>
4808
4809         * gconf.spec.in: just fixed up some filename stuff
4810
4811 2000-07-14  Havoc Pennington  <hp@pobox.com>
4812
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.)
4820
4821 2000-07-13  Havoc Pennington  <hp@pobox.com>
4822
4823         * gconf/gconfd.c (shutdown_contexts): fix cheesy race condition 
4824         (context_list may not exist at this point)
4825
4826 2000-07-12  Havoc Pennington  <hp@pobox.com>
4827
4828         * gconf.spec.in: Change spec file to reflect my fooling with
4829         names of things
4830
4831         * configure.in: Some files converted to .in files, so we can 
4832         do versioning
4833
4834         * gconf-config.in: output versioned names for libs and includes
4835
4836         * gconf/Makefile.am: version all installed files
4837
4838         * wrappers/gtk/Makefile.am: put version in the name of 
4839         everything
4840
4841         * wrappers/gtk/testgconfclient.c (main): remove ref/sink to
4842         reflect change to GConfClient
4843
4844 2000-07-13  Havoc Pennington  <hp@pobox.com>
4845
4846         * backends/xml-entry.c (schema_node_extract_value): fix a
4847         double-free
4848
4849 2000-07-12  Havoc Pennington  <hp@pobox.com>
4850
4851         * configure.in: Bump library versions, bump to 0.6
4852
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
4858
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
4864
4865 2000-07-11  Havoc Pennington  <hp@redhat.com>
4866
4867         * Makefile.am: spew messages about needing to create
4868         prefix/etc/gconf/path, should make things easier for users.
4869
4870 2000-07-05  Eskil Heyn Olsen  <eskil@eazel.com>
4871
4872         * gconf-config.in:
4873         adds output of oaf-config, since gconf uses oaf.
4874
4875 2000-07-05  Eskikl Heyn Olsen  <eskil@eazel.com>
4876
4877         * gconf.spec.in:
4878         Fixed som typos.
4879
4880 2000-06-22  Dan Winship  <danw@helixcode.com>
4881
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.
4884
4885 2000-06-12  Eskil Heyn Olsen  <eskil@eazel.com>
4886
4887         * gconf.spec.in: Removed the .a libs from the base package, but
4888         added them to -devel.
4889
4890 2000-06-11  Eskil Heyn Olsen  <eskil@eazel.com>
4891
4892         * gconf.spec.in: Req oaf >= 0.3.0
4893
4894 2000-06-11  Eskil Heyn Olsen  <eskil@eazel.com>
4895
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
4899         EXTRA_DIST.     
4900
4901 2000-06-07  Pavel Cisler  <pavel@eazel.com>
4902
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.
4907
4908 2000-06-04      Mathieu Lacage  <mathieu@gnome.org>
4909
4910         * gconf-config.in: add gtk-config --cflags and --libs
4911         output to the gconf-gtk --cflags and --libs output.
4912
4913 2000-06-01  Havoc Pennington  <hp@pobox.com>
4914
4915         * gconf/gconf.c (lookup_engine): check whether the hash is NULL
4916         before looking up the engine.
4917
4918 2000-06-01  Havoc Pennington  <hp@pobox.com>
4919
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
4922         one.
4923         (gconf_engine_new_from_address): ditto
4924
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.
4932
4933 2000-05-07  Havoc Pennington  <hp@pobox.com>
4934
4935         * gconf/gconf-listeners.c: Move struct _GConfListeners
4936         into the .c file, eventually need to simply get rid of this.
4937
4938 2000-04-24  Fatih Demir <kabalak@gmx.net>
4939
4940         * configure.in : Added tr to ALL_LINGUAS .
4941
4942 2000-04-19  Pablo Saratxaga <pablo@mandrakesoft.com>
4943
4944         * configure.in (ALL_LINGUAS): Added Catalan language
4945
4946 2000-04-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4947
4948         * gconf/gconftool.c (main): Don't g_free the result of g_getenv ().
4949
4950 Tue Apr 18 01:37:51 2000  George Lebl <jirka@5z.com>
4951
4952         * gconf/gconf.c: make the default path sane by adding the flag
4953           field with readwrite
4954
4955         * gconf/gconf.path: add readwrite flag field to make the path legal
4956
4957 2000-03-30  Matthias Warkus  <mawa@iname.com>
4958
4959         * configure.in (ALL_LINGUAS): Added German translation.
4960
4961 2000-03-13 Alastair McKinstry <mckinstry@computer.org>
4962
4963         * configure.in (ALL_LINGUAS): Added Irish translation.
4964
4965 2000-03-09  Havoc Pennington  <hp@redhat.com>
4966
4967         * configure.in (absolute_top_srcdir): don't do makefile for Guile 
4968         stuff.
4969
4970         * Makefile.am: create DIST_SUBDIRS with tests directory
4971
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.
4975
4976 2000-03-08  Havoc Pennington  <hp@redhat.com>
4977
4978         * gconf/gconf.c (gconf_init): exit on error.
4979
4980         * examples/simple-controller.c (main): fix gconf_init() error
4981
4982         * examples/simple-view.c (main): fix gconf_init() error 
4983
4984 2000-03-06  Havoc Pennington  <hp@redhat.com>
4985
4986         * doc/intro-article.sgml: Add the examples
4987
4988         * examples/simple-view.c: Change include to work before 
4989         we install.
4990         
4991         * examples/simple-controller.c: ditto
4992
4993 2000-02-29  Havoc Pennington  <hp@redhat.com>
4994
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
4998
4999 2000-02-26  Havoc Pennington  <hp@pobox.com>
5000
5001         * examples/Makefile.am: Add new examples
5002         * examples/simple-view.c, examples/simple-controller.c:
5003         Two simple new examples
5004
5005 2000-02-23  Havoc Pennington  <hp@redhat.com>
5006
5007         * configure.in: Bump version and libtool versions, 
5008         and try to fix the prefix mess. Update required OAF version.    
5009
5010         * doc/gconf/Makefile.am: srcdir != builddir fix
5011
5012         * standard-schemas/Makefile.am: add schemas to EXTRA_DIST
5013
5014 2000-02-22  Elliot Lee  <sopwith@redhat.com>
5015
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.
5019
5020 2000-02-19  Havoc Pennington  <hp@pobox.com>
5021
5022         * gconf/gconf.c (try_to_contact_server): Make sure we always set 
5023         an error
5024
5025 2000-02-15  Havoc Pennington  <hp@redhat.com>
5026
5027         * gconf/gconf-changeset.c (gconf_change_set_set): apply patch from 
5028         Rusty Conover <rconover@zootweb.com> fixing an infinite recursion
5029         typo
5030
5031         * gconf/gconfd.c (fast_cleanup): Don't bother to unregister with
5032         OAF
5033
5034 2000-02-01  Havoc Pennington  <hp@redhat.com>
5035
5036         * configure.in (GCONF_CONFIG_SOURCE): update default schema
5037         install source
5038         (XML_LIBS): add better check that we actually ran xml-config
5039         successfully
5040
5041         * gconf/gconf-backend.c (gconf_backend_resolve_address): Honor the
5042         "readonly" flag in address names
5043
5044         * gconf/gconf-sources.c (SOURCE_WRITEABLE): convert to a function,
5045         source_is_writeable
5046
5047         * gconf/gconf-sources.h: add GCONF_SOURCE_NEVER_WRITEABLE flag
5048
5049         * tests/testaddress.c: new test to verify the functions that break
5050         up a configuration source address
5051
5052         * gconf/gconf-backend.c (gconf_address_flags): function to extract
5053         configuration source flags
5054
5055         * doc/gconf/gconf.sgml: note new configuration source URL format
5056
5057         * gconf/gconf.c: Add space, tab, carriage return, newline to the
5058         invalid characters in a gconf key
5059
5060 2000-01-31  Havoc Pennington  <hp@redhat.com>
5061
5062         * wrappers/gtk/gconf-client.c (check_type): include name of the
5063         key with the wrong type in the error message
5064
5065 2000-01-31  Havoc Pennington  <hp@redhat.com>
5066
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
5073
5074         * wrappers/gtk/gconf-client.h: don't pass error handling mode to
5075         the error handler function
5076
5077 2000-01-28  Havoc Pennington  <hp@redhat.com>
5078
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
5082
5083 2000-01-27  Havoc Pennington  <hp@pobox.com>
5084
5085         * wrappers/gtk/gconf-client.c (check_overlap): fix the no-debug
5086         case
5087
5088 2000-01-24  Havoc Pennington  <hp@redhat.com>
5089
5090         * backends/xml-backend.c (resolve_address): base mode for creating
5091         files and directories on the permissions of the root XML directory
5092
5093         * gconf/gconf.h: Clean up indentation
5094
5095 2000-01-27  Elliot Lee  <sopwith@redhat.com>
5096         * gconf/Makefile.am, standard-schemas/Makefile.am: Fix builddir != srcdir
5097
5098 2000-01-24  Havoc Pennington  <hp@redhat.com>
5099
5100         * gconf/gconf-sources.c (gconf_sources_new_from_addresses):
5101         never return errors, just log them.
5102
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)
5105
5106         * gconf/gconf-internals.c (gconf_get_lock): fix mem leak
5107
5108         * backends/xml-entry.c (schema_node_extract_value): fix a mem leak
5109
5110         * gconf/gconfd.c (main): keep a pointer to the object ID returned
5111         from PortableServer_POA_activate_object()
5112
5113         * backends/xml-backend.c (resolve_address): fix a mem leak on
5114         error
5115
5116 2000-01-24  Havoc Pennington  <hp@redhat.com>
5117
5118         * gconf/gconf-internals.c (gconf_get_lock): Use a long enough
5119         buffer to read in the IOR
5120
5121 2000-01-24  Havoc Pennington  <hp@redhat.com>
5122
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> 
5127         tags.
5128
5129 2000-01-23  Havoc Pennington  <hp@pobox.com>
5130
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
5134
5135 2000-01-23  Havoc Pennington  <hp@pobox.com>
5136
5137         * doc/gconf/gconf.sgml: Add schema file DTD from Mirko
5138
5139         * backends/xml-dir.c (dir_sync): pass the XML filename in to
5140         create_fs_dir()
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 
5146         effect only.
5147
5148         * gconf/Makefile.am (install-data-local): Install default path to
5149         path.example, so we don't override someone's existing setup.
5150
5151         * gconf/tests/testdirlist.c: test program that detects dir listing
5152         bugs.
5153         
5154 2000-01-22  Havoc Pennington  <hp@pobox.com>
5155
5156         * backends/xml-dir.c (dir_all_subdirs): If we can't open the
5157         directory it's not an error, just return NULL.
5158
5159 2000-01-21  Havoc Pennington  <hp@redhat.com>
5160
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 
5166
5167         * gconf/gconfd.c (context_synchronous_sync): remove sync
5168         timeout/idle handlers when we do a synchronous sync
5169
5170 2000-01-21  Havoc Pennington  <hp@pobox.com>
5171
5172         * gconf/gconf-value.c (gconf_value_new_from_string): use new
5173         double conversion
5174         (gconf_value_to_string): use new conversion
5175
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
5181
5182         * gconf/gconftool.c (main): improve gconfd-is-running error
5183         message
5184
5185         * gconf/gconf.c (gconf_synchronous_sync): internal-only API 
5186         for the synchronous sync
5187
5188         * gconf/gconfd.c (gconfd_synchronous_sync): implement a way to
5189         force _immediate_ sync for testing purposes
5190
5191 2000-01-21  Havoc Pennington  <hp@pobox.com>
5192
5193         * tests/Makefile.am (testpersistence_SOURCES): add new test
5194
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.
5198
5199 2000-01-21  Havoc Pennington  <hp@pobox.com>
5200
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
5203         we destroy it.
5204
5205         * backends/xml-dir.c (dir_sync_pending): new function
5206
5207         * backends/xml-backend.c (clear_cache): implement clearing cache
5208         for XML backend
5209
5210         * gconf/gconf.c (gconf_clear_cache): implement API here
5211
5212         * gconf/GConf.idl: add clear_cache method
5213
5214         * gconf/gconfd.c (context_clear_cache): add code to implement
5215         clear_cache IDL 
5216
5217         * gconf/gconf-sources.c (gconf_sources_clear_cache): New function
5218         for debugging purposes
5219
5220 2000-01-20  Havoc Pennington  <hp@pobox.com>
5221
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.
5225
5226         * gconf/gconf-internals.c (gconf_get_lock): remove IOR debug spew
5227
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
5231         stuff.
5232
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.
5236         
5237 2000-01-20  Havoc Pennington  <hp@redhat.com>
5238
5239         * gconf/Makefile.am (EXTRA_DIST): fix EXTRA_DIST to have
5240         default.path.in in it
5241
5242 2000-01-20  Havoc Pennington  <hp@redhat.com>
5243
5244         * gconf/default.path: remove, replace with gconf/default.path.in
5245         which is set up properly to go in $sysconfdir
5246         
5247         * gconf/gconftool.c (main): Always unref the engine when we're
5248         done, to ensure we cleanly give up locks on local sources.
5249
5250         * configure.in (GCONF_CONFIG_SOURCE): --enable-gconf-source option
5251
5252         * gconf/gconftool.c (main): add an --makefile-install-rule option,
5253         which does the right thing in makefile install rules.   
5254
5255         * Makefile.am: add standard-schemas subdir
5256         
5257         * configure.in (absolute_top_srcdir): create standard-schemas Makefile
5258
5259         * standard-schemas/desktop.schemas: Schemas that any desktop can use
5260
5261         * standard-schemas/Makefile.am: install schemas
5262
5263 2000-01-19  Havoc Pennington  <hp@redhat.com>
5264
5265         * gconf/gconfd.c (gconf_set_exception): warn if the error is set
5266         to GCONF_ERROR_SUCCESS
5267
5268         * gconf/gconf-error.h: Prefix all errno values with GCONF_ERROR as
5269         Owen suggested
5270
5271 2000-01-15  Havoc Pennington  <hp@pobox.com>
5272
5273         * tests/testlisteners.c (check_immediate_remove_after_add): update 
5274         to match change to gconf-listeners.c
5275
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
5280         being recycled).        
5281
5282 2000-01-15  Havoc Pennington  <hp@pobox.com>
5283
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.
5289         
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
5292         NULL
5293         (entry_sync_to_node): Remember to unset the value if necessary
5294         
5295         * gconf/gconftool.c (list_pairs_in_dir): handle entries with no
5296         value.
5297
5298 2000-01-15  Havoc Pennington  <hp@pobox.com>
5299
5300         * backends/xml-dir.c (dir_destroy): destroy entries before the xml
5301         doc, since they hold pointers into the xml doc.
5302
5303         * backends/xml-entry.c (entry_sync_to_node): if no cached value,
5304         blow away the value in the node.
5305
5306 2000-01-14  Havoc Pennington  <hp@pobox.com>
5307
5308         * gconf/gconfd.c (gconfd_all_entries): remove bad assertion that 
5309         the value in an entry was non-NULL
5310
5311         * gconf/gconf.c (gconf_set): check for invalid list type
5312
5313         * gconf/gconf-internals.c (gconf_value_from_corba_value): Be more 
5314         paranoid about list types coming from gconfd
5315
5316 2000-01-13  Havoc Pennington  <hp@pobox.com>
5317
5318         * gconf/gconf.c (gconf_unique_key): function to generate
5319         a pseudo-random very-very-likely-to-be-unique key name.
5320
5321 2000-01-13  Havoc Pennington  <hp@redhat.com>
5322
5323         * gconf/gconf-internals.c (gconf_concat_key_and_dir): move
5324         declaration to public header
5325
5326         * doc/gconf/tmpl/gconf-client.sgml: Document the changed
5327         dir add/remove behavior
5328
5329 2000-01-13  Havoc Pennington  <hp@redhat.com>
5330
5331         * backends/xml-dir.c (dir_load): arguments to this were backward
5332
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 
5338         same GConfClient.
5339         (gconf_client_destroy): move a bunch of stuff to finalize
5340         so we remain "safe" before last unref
5341
5342 2000-01-12  Havoc Pennington  <hp@redhat.com>
5343
5344         * gconf/gconfd.c (main): don't use custom object ID
5345
5346 2000-01-12  Jonathan Blandford  <jrb@redhat.com>
5347
5348         * wrappers/gtk/gconf-client.c: #include <stdio.h>
5349
5350 2000-01-11  Havoc Pennington  <hp@pobox.com>
5351
5352         * gconf.m4: separate $4 from gconf_config_args
5353
5354         * gconf-config.in (af_libs): -lgconf, not -lgconf-client
5355         (Libraries): add gconf-gtk lib
5356
5357 2000-01-11 Andreas Hyden <andreas.hyden@telia.com>
5358
5359         * configure.in : added sv (swedish)
5360
5361 2000-01-08  Havoc Pennington  <hp@pobox.com>
5362
5363         * gconf/gconftool.c (main): had local and non-local cases backward
5364         so you got the opposite of what you requested
5365
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()
5370
5371 2000-01-07  Havoc Pennington  <hp@redhat.com>
5372
5373         * gconf/gconf-internals.c (gconf_get_lock): totally rewrite the
5374         locking stuff
5375
5376         * backends/xml-dir.c (dir_load): if errno == ENOENT don't make
5377         dir_load() fail
5378
5379         * gconf/gconfd.c (main): check return value of
5380         oaf_active_server_register() and act accordingly.
5381
5382         * gconf/gconf.c (try_to_contact_server): use new
5383         OAF_FLAG_EXISTING_ONLY when appropriate 
5384
5385         * gconf/gconf-internals.c (gconf_set_daemon_ior): allow setting
5386         IOR to a global var
5387
5388         * gconf/gconfd.c (main): set the IOR so it can be used in lockfiles
5389
5390 2000-01-03  Havoc Pennington  <hp@redhat.com>
5391
5392         * gconf/gconftool.c (main): add support for direct config source access
5393
5394 1999-12-31  Havoc Pennington  <hp@pobox.com>
5395
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
5399
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
5403
5404         * gconf/gconf-internals.h: Remove server_info* functions
5405
5406         * gconf/gconf-error.h: add GCONF_LOCK_FAILED
5407
5408         * gconf/gconf.c (corba_errno_to_gconf_errno): lock failed error
5409
5410         * gconf/gconf-internals.c (gconf_nanosleep): Add utility function
5411         to portably sleep a little while (we should really stick one of
5412         these in glib)
5413         (gconf_release_lock, gconf_get_lock): Lock directory functions
5414
5415 2000-01-02  Timur Bakeyev <mc@bat.ru>
5416
5417         * doc/gconf/Makefile.am: Replace unportable install -d with $MKINSTALLDIRS.
5418         install -m 0644 - with $(INSTALL_DATA).
5419
5420 2000-01-02  Timur Bakeyev <mc@bat.ru>
5421
5422         * po/uk.po: Add missed "\n" in 2 strings. Things sholud be checked 
5423         before commit :)
5424         
5425         * backends/Makefile.am, wrappers/gtk/Makefile.am: Add $(top_builddir)/gconf
5426         to INCLUDES to make GConf.h visiable.
5427
5428         * gconf/gconf-internals.c: If LC_MESSAGE doesn't exist, use value of
5429         LC_CTYPE (is this correct?)
5430                 
5431 1999-12-31  Yuri Syrota  <rasta@renome.rovno.ua>
5432
5433         * configure.in: Added "uk" to ALL_LINGUAS
5434
5435 1999-12-30  Havoc Pennington  <hp@pobox.com>
5436
5437         * backends/xml-backend.c: Complete cleanup of XML backend, 
5438         all test suite passes, code is much more manageable.
5439
5440 1999-12-21  Havoc Pennington  <hp@redhat.com>
5441
5442         * doc/gconf/tmpl/gconf-backend.sgml: Documented the methods in the
5443         backend vtable.
5444
5445         * backends/xml-dir.[hc], backends/xml-entry.[hc]: fixed up some
5446         code, mostly done.      
5447
5448 1999-12-20  Havoc Pennington  <hp@redhat.com>
5449
5450         * gconf/gconf-sources.c (gconf_sources_new_from_addresses): const
5451         correctness
5452
5453         * gconf/gconfd.c: Massive const-correctness changes to match
5454         latest ORBit
5455
5456         * gconf/gconf.c (notify): "in string" seems to be const again now.
5457
5458         * wrappers/gtk/gconf-client.c (cache_pairs_in_dir): store the
5459         is_default parameter when preloading
5460
5461         * gconf/gconf.c (gconf_all_entries): receive the is_default
5462         parameter
5463
5464         * gconf/gconfd.c (gconfd_all_entries): pass the is_default
5465         parameter over the CORBA link
5466
5467         * backends/xml-backend.c (listify_foreach): Add the schema name to
5468         the entry if appropriate (if value is unset)
5469
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.
5474
5475         * gconf/gconf-value.c (gconf_entry_set_is_default): new function
5476         (gconf_entry_set_schema_name): new function
5477
5478         * backends/xml-backend.c (listify_foreach): Include keys that
5479         exist but have no value set in the list of returned entries.
5480
5481 1999-12-20  Havoc Pennington  <hp@redhat.com>
5482
5483         * tests/testlisteners.c: fix include
5484
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.
5488         
5489 1999-12-14  Havoc Pennington  <hp@redhat.com>
5490
5491         * gconf/gconf.c (gconf_engine_new_from_address): Add a g_warning()
5492         that people probably don't want to use this.
5493
5494 1999-12-14  Havoc Pennington  <hp@redhat.com>
5495
5496         * doc/gconf/tmpl/gconf-client.sgml: fix a typo, add additional
5497         explanation to the introduction.
5498
5499         * doc/gconf/tmpl/gconf.sgml: Document the string-to-enum functions.
5500         Update some other docs too.
5501
5502         * doc/gconf/gconf-sections.txt: add new functions
5503
5504         * gconf/gconf.c (gconf_string_to_enum): new function
5505         (gconf_enum_to_string): new function
5506
5507         * gconf/gconf-engine.h: Put gconf_engine_new_local() here instead
5508         of gconf-internals.h
5509
5510         * gconf/gconf-internals.h: added a new GCONF_ENABLE_INTERNALS
5511         define, to allow us to have internal stuff in headers other than
5512         gconf-internals.h
5513
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
5520
5521         * gconf/gconf-internals.h (gconf_engine_new_local): Declare this
5522         function here, though it's defined in gconf.c
5523
5524         * gconf/gconf.c (gconf_set): local version
5525
5526         * gconf/gconfd.c (context_query_default_value): use
5527         gconf_sources_query_default_value()
5528
5529         * gconf/gconf-sources.c (gconf_sources_query_default_value): New
5530         function
5531
5532         * gconf/gconf-sources.h: egtk-format-protos the function
5533         prototypes.
5534
5535         * gconf/Makefile.am (libgconf_la_SOURCES): move gconf-locale.[hc]
5536         into the library, bah
5537
5538         * gconf/gconf.c (gconf_get_full): Add local (no gconfd) version
5539
5540         * gconf/gconf-locale.c (gconf_split_locale): locale splitter
5541         function.
5542
5543         * gconf/gconf-sources.c (gconf_sources_new_from_source): new function
5544
5545         * examples/basic-gconf-app.c (create_prefs_dialog): Move keys from
5546         /apps/gnome to plain /apps
5547
5548         * doc/gconf/gconf.sgml: Add an initial stab at namespace
5549         splitting.
5550
5551 1999-12-09  Havoc Pennington  <hp@redhat.com>
5552
5553         * gconf/gconf.c (gconf_init): Safety check to ensure we don't
5554         initialize OAF a second time.
5555
5556 1999-12-06  Havoc Pennington  <hp@pobox.com>
5557
5558         * gconf/gconf.c (gconf_notify_add): Backward assertion
5559
5560 1999-12-02  Havoc Pennington  <hp@pobox.com>
5561
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.        
5566
5567         * wrappers/gtk/gconf-client.c
5568         (gconf_client_create_change_set_from_currentv): use without_default
5569         (revert_foreach): use without_default
5570
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()
5574
5575         * wrappers/gtk/testgconfclient.c (entry_notify_func): fix to compile
5576
5577         * examples/basic-gconf-app.c (configurable_widget_config_notify):
5578         fix to compile
5579
5580         * wrappers/gtk/gconf-client.c
5581         (gconf_client_get_default_from_schema): New function
5582
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
5588
5589         * backends/xml-backend.c (xentry_extract_value): remove ignore_subsequent
5590         (xentry_set_value): ditto
5591
5592         * gconf/gconf-sources.c (gconf_sources_query_value): Remove ignore
5593         subsequent
5594
5595         * gconf/gconf-value.c (gconf_value_new_from_string): remove
5596         ignore_subsequent
5597         (gconf_value_to_string): remove ignore_subsequent
5598         (gconf_value_copy): Remove ignore_subsequent
5599
5600         * gconf/gconfd.c (context_unset): add is_default to notification
5601         (context_set): add is_default to notification
5602
5603         * gconf/gconf-internals.c (gconf_value_type_to_string): Remove
5604         ignore_subsequent. 
5605
5606         * gconf/gconf.c (gconf_cnxn_notify): add is_default
5607         (notify) add is_default
5608
5609         * gconf/gconf-value.h: Remove GCONF_VALUE_IGNORE_SUBSEQUENT
5610
5611         * gconf/gconf-sources.c (gconf_sources_unset_value): don't do that
5612         weird IGNORE_SUBSEQUENT goo
5613
5614         * wrappers/gtk/Makefile.am (INCLUDES): add top_builddir to include
5615         search to get the built sources
5616
5617         * gconf/gconf-engine.h: fix includes
5618
5619         * gconf/gconf-changeset.h: fix includes
5620
5621         * gconf/Makefile.am (gconfd_SOURCES): add gconf-sources.h here
5622         instead of installing it.
5623
5624         * wrappers/gtk/Makefile.am (INCLUDES): remove -I$(top_builddir)/gconf
5625
5626         * wrappers/gtk/gconf-client.c (gconf_client_get_full): Add this,
5627         etc.
5628
5629         * gconf/gconf-sources.c (gconf_sources_query_value): Set a flag
5630         indicating whether the retrieved value was the default or not.
5631
5632         * gconf/GConf.idl: add value_is_default out flag to
5633         lookup_with_locale()
5634
5635 1999-12-02  Havoc Pennington  <hp@pobox.com>
5636
5637         * gconf/gconf-error.c: Was missing an element in the err_msgs
5638         array and the array had the wrong size.
5639         
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.
5645
5646         * gconf/gconfd.c (gconfd_lookup_with_locale): fix
5647         
5648         * gconf/gconf.c (gconf_get_no_default): new function to get
5649         a value, but not fall back to the schema default.
5650
5651         * gconf/GConf.idl: lookup_with_locale() needs to raise
5652         ConfigException. Also, add a "use schema default" flag.
5653
5654 1999-12-01  Havoc Pennington  <hp@pobox.com>
5655
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.
5659         
5660         * gconf/Makefile.am (libgconf_la_SOURCES): move gconf-sources.c to
5661         the library instead of gconfd (again).
5662
5663         * gconf/gconf-internals.c (gconf_handle_oaf_exception): set the
5664         GCONF_OAF_ERROR errno
5665         
5666         * gconf/gconf-error.c: add strerror stuff for those errors.
5667
5668         * gconf/gconf-error.h: add oaf error and "this is not a gconfd
5669         engine" error.
5670
5671 1999-12-01  Havoc Pennington  <hp@pobox.com>
5672
5673         * gconf/gconf.c (try_to_contact_server): handle OAF exceptions
5674
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...
5678
5679 1999-12-01  Havoc Pennington  <hp@pobox.com>
5680
5681         * doc/gconf/gconf-sections.txt: Add new create_change_set
5682         functions for GConfClient and GConfEngine
5683
5684         * doc/gconf/Makefile.am (LDFLAGS): Use proper cflags/ldflags 
5685         for gtk and OAF when doing 'make scan'
5686
5687         * wrappers/gtk/testgconfclient.c (entry_attached_to): change for
5688         new get_string() thing
5689
5690         * gconf/gconf-changeset.h: fix the "" vs. <> issue on an #include
5691
5692         * wrappers/gtk/gconf-client.c (gconf_client_get_bool): remove
5693         "default" argument
5694         (gconf_client_get_string): ditto
5695         (gconf_client_get_int): ditto
5696         (gconf_client_get_float): ditto
5697
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
5702
5703 1999-11-30  Havoc Pennington  <hp@pobox.com>
5704
5705         * backends/xml-backend.c (resolve_address): s/dir/root_dir/
5706
5707 1999-11-29  Havoc Pennington  <hp@pobox.com>
5708
5709         * gconf/gconftool.c (do_load_schema_file): Use new syntax for
5710         attaching schema names to key names
5711
5712         * backends/xml-backend.c (resolve_address): Create the XML root
5713         directory if necessary.
5714
5715 1999-11-29  Havoc Pennington  <hp@pobox.com>
5716
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.
5720
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
5727
5728         * gconf/gconfd.c (gconfd_set): return if the conversion from
5729         GConfValue doesn't fly
5730
5731         * gconf/gconf-value.c (gconf_value_new): add a check for valid type
5732
5733         * gconf/gconf-value.h (GCONF_VALUE_TYPE_VALID): Add macro to check the
5734         a value type is valid
5735
5736         * gconf/gconf-changeset.c (change_set): return if the value being
5737         set is the same as the existing value.
5738
5739         * examples/Makefile.am (EFENCE): add EFENCE var
5740
5741         * wrappers/gtk/gconf-client.c (gconf_client_commit_change_set):
5742         add checks
5743
5744         * gconf/gconf-changeset.c (gconf_commit_change_set): add checks
5745
5746         * gconf/gconf-listeners.c (gconf_listeners_remove): Robust against
5747         bad notify_id
5748
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
5753         same function.
5754         (gconf_change_set_check_value): new function to check for and get 
5755         the value of a key in a change set.
5756
5757         * wrappers/gtk/gconf-client.h: Add client analogues for the above
5758         two set-creation functions.
5759         
5760 1999-11-28  Havoc Pennington  <hp@pobox.com>
5761
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
5765         understand it yet.
5766
5767 1999-11-23  Havoc Pennington  <hp@pobox.com>
5768
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
5772         them are ignorable.
5773
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
5779
5780         * wrappers/gtk/gconf-client.c (gconf_client_commit_change_set):
5781         put some casts in to chill warnings
5782
5783         * gconf/gconf-changeset.c (gconf_change_set_size): new function
5784
5785         * wrappers/gtk/gconf-client.c (gconf_client_destroy): Destroy the
5786         directory list.
5787
5788         * Makefile.am (SUBDIRS): add "examples" directory
5789
5790         * examples/Makefile.am, examples/basic-gconf-app.c: Examples;
5791         write nice example program.
5792         
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.       
5796
5797 1999-11-23  Havoc Pennington  <hp@pobox.com>
5798
5799         * wrappers/gtk/testgconfclient.c: remove GNOME dependency
5800
5801         * configure.in: don't build gconf-editor makefile.
5802
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)
5806
5807         * configure.in (GCONF_AGE): Check for plain GTK not GNOME
5808
5809         * wrappers/Makefile.am (SUBDIRS): change GNOME conditional to GTK
5810
5811 1999-11-23  Havoc Pennington  <hp@pobox.com>
5812
5813         * gconf/Makefile.am (libgconf_la_LDFLAGS): split off LIBADD
5814
5815         * wrappers/gtk/Makefile.am (libgconf_gtk_la_LIBADD): set shared
5816         lib version
5817         (libgconf_gtk_la_LDFLAGS): split LIBADD and LDFLAGS maybe properly.
5818
5819         * configure.in: remove gnorba cflags/libs
5820
5821         * gconf/Makefile.am (install-data-local): Create the
5822         $(sysconfdir)/gconf directory.
5823
5824         * wrappers/Makefile.am: For now, always disable Guile wrapper
5825         build.
5826
5827 1999-11-22  Havoc Pennington  <hp@pobox.com>
5828
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.
5832
5833         * gconf/gconfd.c (gconf_server_load_sources): log decision to use
5834         default config source
5835
5836 1999-11-22  Havoc Pennington  <hp@pobox.com>
5837
5838         * gconf/gconfd.c (gconf_server_load_sources): Fall back to
5839         xml:~/.gconf if no config file is found
5840
5841 1999-11-22  Havoc Pennington  <hp@pobox.com>
5842
5843         * gconf/default.path: default configuration file
5844         
5845         * gconf/Makefile.am (install-data-local): Install default.path to
5846         sysconfdir/gconf/path (theoretically)
5847
5848 1999-11-22  Havoc Pennington  <hp@pobox.com>
5849
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
5853
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.
5859
5860         * gconf/gconfd.c (gconf_server_load_sources): #ifdef the
5861         debug-only search for debugging path file.
5862
5863 1999-11-19  Havoc Pennington  <hp@pobox.com>
5864
5865         * gconf/gconfd.c (gconf_server_load_sources): Give actual
5866         sysconfdir in the error message, not just /etc;
5867         include liboaf.h
5868
5869         * gconf/gconf.c: include liboaf.h
5870         (gconf_postinit): fix a bunch of missing semicolons
5871
5872 1999-11-20  Havoc Pennington  <hp@pobox.com>
5873
5874         * wrappers/gtk/gconf-client.c
5875         (gconf_client_create_reverse_change_set): new function
5876         (gconf_client_commit_change_set): new function
5877
5878 1999-11-20  Havoc Pennington  <hp@pobox.com>
5879
5880         * gconf/gconf-changeset.c (gconf_create_reverse_change_set): New
5881         function creates a change set which will revert another change set
5882         on commit.
5883
5884 1999-11-19  Havoc Pennington  <hp@pobox.com>
5885
5886         * gconf/gconfd.c (gconf_server_load_sources): Give actual
5887         sysconfdir in the error message, not just /etc;
5888         include liboaf.h
5889
5890         * gconf/gconf.c: include liboaf.h
5891         (gconf_postinit): fix a bunch of missing semicolons
5892
5893 1999-11-19  Havoc Pennington  <hp@pobox.com>
5894
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()
5897
5898         * doc/gconf/gconf-sections.txt: Add preinit, postinit
5899
5900         * doc/gconf/gconf.sgml: Remove gconf-orbit entity
5901
5902         * doc/gconf/gconf-sections.txt: Remove gconf-orbit stuff
5903
5904         * tests/*.c: Fix to not include gconf-orbit.h, call gconf_init()
5905         properly
5906         
5907         * gconf-editor/gconf-editor.c: don't include gconf-orbit.h
5908
5909         * wrappers/gtk/testgconfclient.c (main): remove "orb" variable
5910
5911         * gconf/gconftool.c: don't include gconf-orbit.h
5912
5913         * gconf/gconfd.c: don't include gconf-orbit.h
5914
5915         * gconf/gconf.c: don't include gconf-orbit.h
5916
5917         * gconf/gconf.h: don't include gconf-orbit.h
5918
5919         * gconf/Makefile.am (gconfinclude_HEADERS): remove gconf-orbit.h
5920         (libgconf_la_SOURCES): remove gconf-orbit.c
5921
5922         * gconf/gconfd.c (main): fix error message if oaf_init() returns FALSE
5923
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.
5929
5930         * gconf/gconfd.c (fast_cleanup): Unregister with OAF in order to
5931         clean up.
5932
5933         * gconf/Makefile.am: add -DIID to INCLUDES
5934
5935         * gconf/gconfd.c (main): Use a macro for the IID
5936
5937         * gconf/gconf-internals.c: Remove gconf_read_server_ior(),
5938         gconf_info_dir(), gconf_info_file(), etc. since we use OAF instead.
5939
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()
5943         won't set it.
5944
5945         * gconf/gconf-orbit.h, gconf/gconf-orbit.c: Delete these, we 
5946         are using OAF now.
5947         
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).
5953
5954 1999-11-19  Elliot Lee  <sopwith@redhat.com>
5955
5956         * Make it all use OAF, and redo the initialization routine(s) to
5957         fit better into the GnomeModuleInfo system.
5958
5959 1999-11-18  Elliot Lee  <sopwith@redhat.com>
5960
5961         * gconf.m4: AM_PATH_GCONF macro.
5962         
5963         * wrappers/gtk/Makefile.am, autogen.sh, backends/Makefile.am: Work with builddir != srcdir
5964
5965         * Makefile.am: Distribute gconf.m4 & gconf-config.in, install gconf.m4
5966
5967 1999-11-18  Havoc Pennington  <hp@pobox.com>
5968
5969         * gconf/gconfd.c (gconf_server_load_sources): fix the message
5970         about writeable sources
5971
5972 1999-11-18  Havoc Pennington  <hp@pobox.com>
5973
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"
5977
5978         * tests/testschemas.c (check_one_schema): fix the locale-related tests
5979
5980         * gconf/gconf.c (gconf_set_schema): remove debug spew
5981
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
5985         ship to the server.
5986
5987         * gconf/GConf.idl: Add encoded default value string to
5988         ConfigSchema struct
5989
5990         * gconf/gconf-internals.c (gconf_value_decode): implement
5991         (gconf_value_encode): implement
5992
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.
5996
5997 1999-11-17  Havoc Pennington  <hp@pobox.com>
5998
5999         * tests/testencode.c: new test for string quoting
6000
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
6005
6006 1999-11-16  Havoc Pennington  <hp@pobox.com>
6007
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
6011
6012 1999-11-16  Havoc Pennington  <hp@pobox.com>
6013
6014         * gconf/gconf-value.c (gconf_value_to_string): print more info
6015         about schemas
6016
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.
6026
6027         * gconf/gconf-internals.c (gconf_value_type_to_string): Add case
6028         for GCONF_VALUE_INVALID
6029
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.  
6035
6036 1999-11-15  Havoc Pennington  <hp@pobox.com>
6037
6038         * backends/xml-backend.c (entry_fill): handle locale by syncing
6039         cached value if necessary 
6040         
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
6044
6045         * backends/xml-backend.c (xentry_extract_value): use "C" locale if
6046         none is given.
6047
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
6053
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
6058
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).
6063
6064 1999-11-15  Havoc Pennington  <hp@pobox.com>
6065
6066         * doc/gconf/tmpl/gconf-client.sgml: write GConfClient docs.
6067
6068         * wrappers/gtk/gconf-client.c (gconf_client_new_with_engine):
6069         change this to increment the #GConfEngine reference count.
6070
6071         * doc/gconf/gconf.sgml: Add GConfClient entity
6072
6073         * doc/gconf/gconf-sections.txt: Add GConfClient stuff, add
6074         set_list and set_pair for GConfChangeSet
6075
6076         * doc/gconf/gconf.types: New file gtk-doc requires
6077
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.
6081
6082         * wrappers/Makefile.am: Build GConfClient if we have GNOME
6083
6084 1999-11-15  Havoc Pennington  <hp@pobox.com>
6085
6086         * gconf/gconf.c (gconf_get): Fix it to use the current
6087         locale as documented.
6088
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
6093
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
6100
6101         * gconf/gconf-internals.c (gconf_value_pair_from_primitive_pair):
6102         new function removes guts of gconf_set_pair()
6103
6104         * gconf/gconf.c (gconf_set_list): change to use
6105         gconf_value_list_from_primitive_list()
6106
6107         * gconf/gconf-changeset.c (gconf_change_set_set_list): new
6108         convenience function
6109         (gconf_change_set_set_pair): new function
6110
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
6114
6115 1999-11-14  Havoc Pennington  <hp@pobox.com>
6116
6117         * backends/xml-backend.c (listify_foreach):  s/gconf_entry_new/gconf_entry_new_nocopy/
6118
6119         * gconf/gconf.c (gconf_all_entries):  s/gconf_entry_new/gconf_entry_new_nocopy/
6120
6121         * gconf/doc/*: tons of documentation updates.
6122         
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
6127         a foreach
6128
6129         * gconf/gconf-changeset.h: try to spell "committed" right.
6130
6131         * gconf/gconf-value.h (gconf_entry_value): add accessor macros 
6132         to GConfEntry.
6133
6134         * gconf/gconf-value.c (gconf_entry_new_nocopy): Rename
6135         gconf_entry_new() to gconf_entry_new_nocopy() to reflect its 
6136         actual behavior.
6137
6138 1999-11-13  Havoc Pennington  <hp@pobox.com>
6139
6140         * gconf/gconf-internals.h: move the value-from-string constructors
6141         here
6142
6143         * gconf/gconf-value.h: moved from here
6144
6145 1999-11-13  Havoc Pennington  <hp@pobox.com>
6146
6147         * gconf/gconf-value.h (gconf_meta_info_schema): Add const cast to
6148         this macro.
6149
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
6154
6155         * doc/gconf/tmpl/gconf-value.sgml: docs!
6156
6157         * doc/gconf/tmpl/gconf.sgml: docs!
6158
6159         * doc/gconf/gconf-sections.txt: add set/get list/pair
6160
6161         * gconf/gconf.c (gconf_set_list): Fix dumb bug (assign back to the
6162         original list!)
6163
6164 1999-11-13  Havoc Pennington  <hp@pobox.com>
6165
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 ;-)
6169
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
6178
6179         * gconf/gconf-value.h (gconf_value_string): add const cast to this 
6180         macro
6181
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
6198         
6199 1999-11-12  Havoc Pennington  <hp@pobox.com>
6200
6201         * doc/gconf/gconf.sgml: Set up the gtk-doc system. Added all the
6202         files for that.
6203
6204 1999-11-12  Havoc Pennington  <hp@pobox.com>
6205
6206         * backends/xml-backend.c: Change all comments starting with /** to
6207         not start with that (for gtkdoc)
6208
6209 1999-11-12  Havoc Pennington  <hp@pobox.com>
6210
6211         * gconf/gconftool.c (main): Add the ability to specify a
6212         configuration source other than the default configuration source
6213         stack.
6214         Add the ability to install a schema file.
6215
6216         * gconf/Makefile.am (INCLUDES): add XML_CFLAGS
6217         (gconftool_LDADD): add XML_LIBS
6218
6219         * backends/Makefile.am (INCLUDES): add XML_CFLAGS
6220
6221 1999-11-11  Havoc Pennington  <hp@pobox.com>
6222
6223         * tests/testchangeset.c: test for the changeset stuff
6224         
6225         * gconf/gconf.c (gconf_set): add check that string values don't
6226         contain a NULL string   
6227
6228         * gconf/gconf-changeset.c (gconf_change_set_unset): fix typo
6229
6230         * doc/gconf.sgml: tweaks
6231         
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)
6236
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.
6241
6242 1999-11-11  Havoc Pennington  <hp@pobox.com>
6243
6244         * tests/runtests.sh: Enhance to detect missing tests.
6245
6246         * gconf/gconf-internals.c (gconf_log): don't log DEBUG level stuff 
6247         if built without GCONF_ENABLE_DEBUG
6248
6249         * backends/xml-backend.c (safe_g_hash_table_insert): Same, use
6250         GCONF_ENABLE_DEBUG
6251         Add locales stuff throughout this file, but do nothing with it for
6252         now.
6253
6254         * gconf/gconfd.c (safe_g_hash_table_insert): Make this dependent
6255         on GCONF_ENABLE_DEBUG setting.
6256
6257         * gconf/gconf-sources.c (gconf_sources_query_value): fix locale
6258         (gconf_sources_unset_value): locale
6259         (gconf_sources_all_entries): locales
6260
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
6265
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
6270
6271         * gconf/gconf-backend.h: Add locale args to the backend functions
6272         that need it
6273
6274         * gconf/gconf-internals.c (gconf_current_locale): Use setlocale()
6275         again, not guess_category_value from gnome-i18n
6276
6277 1999-11-10  Havoc Pennington  <hp@pobox.com>
6278
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
6281         library.
6282
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
6285         cache. 
6286         (main): free the locale cache on exit
6287
6288 1999-11-10  Havoc Pennington  <hp@pobox.com>
6289
6290         * backends/xml-backend.c (free_childs): function to free children
6291         of a node.
6292         (xentry_set_value): free_childs() in a couple places we weren't
6293
6294         * tests/testschemas.c: Add new schema test to check for storing a
6295         blank schema
6296
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
6299         variable value
6300
6301         * gconf/gconf-internals.c (gconf_current_locale): We want
6302         LC_MESSAGES not LC_ALL
6303
6304 1999-11-07  Havoc Pennington  <hp@pobox.com>
6305
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.
6310
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
6314
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
6324
6325         * gconf/GConf.idl: Add a context ID to the argument
6326         list of the notification.
6327
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
6333         appropriate.
6334         (gconf_notify_add): Detach and respawn if needed
6335         (gconf_notify_remove): ditto
6336         (gconf_set): 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
6349         initialization
6350         (gconf_engine_unref): Destroy CnxnTable, and free the engine
6351         struct itself.
6352         (notify): remove debug spew, reflect new signature of notify function
6353
6354 1999-11-07  Havoc Pennington  <hp@pobox.com>
6355
6356         * gconf/gconf-internals.c: #include <locale.h>, oops
6357
6358 1999-11-07  Havoc Pennington  <hp@pobox.com>
6359
6360         * tests/testschemas.c (check_schema_storage): Properly consider
6361         that schema fields can be NULL
6362
6363         * backends/xml-backend.c (entry_value): Properly consider that
6364         a schema can have a NULL locale
6365
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()
6369
6370         * gconf/gconf-internals.c (gconf_current_locale): So I don't have
6371         to think about setlocale()
6372
6373         * tests/testschemas.c: New test program for schema stuff
6374         
6375 1999-11-06  Havoc Pennington  <hp@pobox.com>
6376
6377         * gconf/gconf.c (gconf_associate_schema): Add function to associate 
6378         a schema name with a key.
6379
6380 1999-10-28  Havoc Pennington  <hp@pobox.com>
6381
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.
6386
6387         (xentry_extract_value): locale argument added, but needs to 
6388         be implemented.
6389
6390         * gconf/gconf-backend.h: Add locale to query_value in vtable
6391
6392         * gconf/gconf-sources.c (gconf_source_query_value): Add locale
6393         (gconf_sources_query_value): Add locale
6394
6395         * gconf/gconfd.c (gconfd_lookup_with_locale): Implement new 
6396         IDL method
6397         (context_query_value): Add locale
6398
6399         * gconf/GConf.idl: Add lookup_with_locale() method
6400
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.
6404
6405         * gconf/gconf-schema.c (gconf_schema_set_locale): New function
6406
6407         * gconf/gconftool.c: Clean up so it is easier to deal with
6408
6409 1999-10-28  Havoc Pennington  <hp@pobox.com>
6410
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 
6414         on shutdown.
6415
6416         * tests/testgconf.c: Fix to compile
6417
6418         * tests/Makefile.am (testgconf_LDADD): Fix Makefile.am to use new
6419         library name
6420
6421 1999-10-27  Havoc Pennington  <hp@pobox.com>
6422
6423         * configure.in: Add --enable-debug option to G_DISABLE_CHECKS as needed
6424
6425         * gconf/wrappers/gtk/testgconfclient.c: Test program for the GTK+ 
6426         client wrapper.
6427         
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.
6431
6432         * gconf/gconf.c (gconf_init): Actually set the have_initted variable.   
6433
6434         * wrappers/gtk/Makefile.am (libgconf_gtk_la_LIBADD): Don't try to 
6435         link with libgconf;
6436         Add testgconfclient target.
6437
6438         * wrappers/gtk/gconf-client.h, wrappers/gtk/gconf-client.c: Make
6439         it compile
6440         
6441         * configure.in: Generate Makefile for GtkObject wrapper
6442
6443 1999-10-27  Havoc Pennington  <hp@pobox.com>
6444
6445         * gconf-editor/Makefile.am (gconf_editor_LDADD): 
6446         link to libgconf.la
6447
6448         * gconf/Makefile.am: Renamed the shared lib to libgconf instead of
6449         libgconf-client.
6450         
6451         * wrappers/gtk/Makefile.am: Renamed gconf-gtk.[hc] to
6452         gconf-client.[hc] via CVS surgery, then updated Makefile.
6453
6454 1999-10-21  Havoc Pennington  <hp@pobox.com>
6455
6456         * gconf/gconf.c (gconf_key_is_below): New function, tells you if a
6457         key is below another key in the directory hierarchy.
6458
6459 1999-10-20  Havoc Pennington  <hp@pobox.com>
6460
6461         * gconf/gconfd.c, gconf/gconf-sources.c: Finish stuff from the
6462         17th (use GConfError throughout, etc.)
6463
6464         * gconf/gconfd-error.h, gconf/gconfd-error.c: Remove the broken
6465         old error stuff, even gconfd no longer uses it.
6466         
6467 1999-10-17  Havoc Pennington  <hp@pobox.com>
6468
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
6472         function
6473         (gconf_sources_set_value): use the new flags and writeable
6474         function
6475
6476         * gconf/gconf-error.c (gconf_error_copy): new function
6477         (gconf_compose_errors): new function
6478
6479         * backends/xml-backend.c: Throughout, use a GConfError** argument
6480         instead of the global errno thing
6481         
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** 
6486
6487         * gconf/gconfd.c: don't include gconfd-error.h
6488
6489         * backends/xml-backend.c: Remove inclusion of gconfd-error.h
6490
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.
6494
6495         * gconf/gconfd.c (safe_g_hash_table_insert): priority GCL_WARNING
6496
6497         * backends/xml-backend.c (safe_g_hash_table_insert): make
6498         it priority GCL_WARNING.
6499
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.
6503
6504 1999-10-17  Havoc Pennington  <hp@pobox.com>
6505
6506         * gconf/gconf-orbit.h: Include orb/orbit.h instead of GConf.h
6507
6508 1999-10-17  Havoc Pennington  <hp@pobox.com>
6509
6510         * backends/xml-backend.c: Use %gconf.xml instead of .gconf.xml 
6511         for the magic files.
6512
6513 1999-10-17  Havoc Pennington  <hp@pobox.com>
6514
6515         * tests/runtests.sh: Make this script work
6516
6517         * gconf/gconftool.c: Don't use -s for --spawn, since it's used for
6518         --set.
6519
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.
6524
6525         Throughout: Make sure error is set but don't require a 
6526         specific error type
6527
6528         * gconf/gconf-internals.c (gconf_read_server_ior): Set error 
6529         if the server info file doesn't exist
6530
6531         * gconf/gconf.c (try_to_contact_server): Add a check for setting 
6532         the error properly
6533
6534         * gconf/gconftool.c (main): Switch to gconf_suggest_sync()
6535         instead of gconf_sync()
6536
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
6542
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.
6549         
6550 1999-10-17  Havoc Pennington  <hp@pobox.com>
6551
6552         * For all files, s/G_CONF/GCONF
6553
6554 1999-10-12  Havoc Pennington  <hp@pobox.com>
6555
6556         * gconf/gconfd.c: Use GConfListeners to handle listener
6557         registration and notification
6558
6559 1999-10-12  Havoc Pennington  <hp@pobox.com>
6560         
6561         * gconf/gconf-listeners.c (ltable_insert): Was failing to init 
6562         the node in the flat array of nodes if the listener location 
6563         was NULL. 
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
6574         
6575         * tests/testlisteners.c: New test program for GConfListeners, 
6576         fairly comprehensive
6577
6578         * tests/Makefile.am: add testlisteners, put EFENCE at the end of 
6579         the link line
6580
6581 1999-10-12  Havoc Pennington  <hp@pobox.com>
6582
6583         * gconf/Makefile.am: Fixes - remove some public headers from
6584         libgconf_client_SOURCES, look for GConf.idl in $(srcdir) (bug from
6585         Wichert Akkerman)
6586
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.
6590
6591 1999-10-11  Havoc Pennington  <hp@pobox.com>
6592
6593         * For all files, s/g_conf/gconf
6594
6595 1999-10-05  Havoc Pennington  <hp@pobox.com>
6596
6597         * tests/testgconf.c (check_list_storage): Add checks for empty
6598         lists, and all the various list types.
6599
6600         * gconf/gconf-value.c (g_conf_value_to_string): Fix a segfault
6601         (not always allocating a large enough buffer)
6602
6603 1999-10-05  Havoc Pennington  <hp@pobox.com>
6604
6605         * configure.in: 0.3, bump soname
6606
6607 1999-10-04  Havoc Pennington  <hp@pobox.com>
6608
6609         * tests/testgconf.c (main): Add checks for getting/setting lists,
6610         bools, floats, and ints
6611
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).
6616
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
6622         <ban@lifix.fi>.
6623
6624         * gconf/gconf-internals.c (g_conf_log): Plug memory leak (not
6625         freeing log string)
6626
6627         * gconf/gconfd.c (gconfd_set): Plug memory leak (not freeing the GConfValue)
6628
6629         * tests/Makefile.am: Make testgconf noinst
6630
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.
6634
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 
6638         GConfValue
6639
6640         * gconf/GConf.idl: Create ConfigList type to past the list type 
6641         along with the sequence of values
6642
6643         * gconf/gconf-value.c (g_conf_value_set_list): New function, list
6644         setter that copies the list
6645
6646         * gconf/gconf.c (g_conf_unset, g_conf_set): return boolean to
6647         indicate success
6648
6649         * gconf/gconf-value.c (g_conf_value_new_from_string): Rewrite the
6650         bool string parser with switch, accept y/n as values.
6651
6652 1999-10-01  Havoc Pennington  <hp@pobox.com>
6653
6654         * gconf/gconf-sources.c (g_conf_sources_query_value): Check for 
6655         errors when we query the default value from the schema.
6656
6657         * backends/xml-backend.c (entry_fill): If the schema key for a key is 
6658         invalid, don't load it.
6659
6660 1999-09-30  Havoc Pennington  <hp@pobox.com>
6661
6662         * gconf/gconf-sources.c (g_conf_key_check_hack): Clear error 
6663         before we check the key
6664
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.
6670
6671         * tests/testgconf.c: Easiest to just write the test suite in
6672         C. Tests set/get and unset for strings so far.
6673
6674 1999-09-29  Havoc Pennington  <hp@pobox.com>
6675
6676         * gconf/gconf.sgml: Update docs
6677
6678 1999-09-29  Havoc Pennington  <hp@pobox.com>
6679
6680         * gconf/gconf-conf.h: Replaced with gconf-engine.h
6681
6682         * gconf/Makefile.am: use gconf-engine.h
6683
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
6687
6688 1999-09-29  Rodrigo Stulzer Lopes <rodrigo@conectiva.com.br>
6689
6690         * configure.in: added pt_BR to ALL_LINGUAS
6691
6692 1999-09-29  Havoc Pennington  <hp@pobox.com>
6693
6694         * backends/xml-backend.c: include gconfd-error.h and gconf.h, 
6695         change error checking to new system as needed
6696
6697         * gconf/Makefile.am: Put more stuff in gconfd_SOURCES instead of
6698         client lib, add new files
6699
6700         * gconf/gconf-backend.h: include gconf-sources.h
6701
6702         * gconf/gconf-conf.h: add error arg to g_conf_new_from_address
6703
6704         * gconf/gconf-error.c: move strerror in here, fixups,
6705         preconditions
6706
6707         * gconf/gconf-internals.c, gconf/gconf-sources.c: move all sources
6708         stuff to new gconf-sources file
6709
6710         * gconf/gconf-orbit.c: Check for failure to get lock
6711
6712         * All the rest of this giant diff: Move to new error-handling
6713         scheme
6714         
6715 1999-09-26  Havoc Pennington  <hp@pobox.com>
6716
6717         * gconf/Makefile.am: add gconf-error.h, gconf-conf.h headers,
6718         gconf-value.c file
6719
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)
6723
6724         * gconf/gconf-internals.c: Move the value, metainfo, and entry
6725         datatypes to gconf-value.c
6726
6727         * gconf/gconf.c, gconf/gconf.h: Remove appname argument from
6728         g_conf_init(), remove g_conf_global_appname() function.
6729
6730         * gconf/gconftool.c: don't pass appname to g_conf_init()
6731
6732         * gconf-editor/gconf-editor.c: Ditto
6733         
6734 1999-09-25  Kjartan Maraas  <kmaraas@online.no>
6735
6736         * configure.in: Added "da" to ALL_LINGUAS.
6737         
6738 1999-09-19  Havoc Pennington  <hp@pobox.com>
6739
6740         * NEWS, README: put something in here
6741
6742         * Makefile.am: conditionally include gconf-editor if we have 
6743         GNOME
6744
6745         * autogen.sh: make it more like "macros" autogen.sh
6746         
6747         * configure.in: manually check for GNOME instead of using
6748         "macros"
6749         
6750         * macros, intl: remove these subdirs, autogen.sh now
6751         generates intl
6752
6753         * gconf/gconf.c: fix array size for strerror messages
6754
6755         * gconf-editor/Makefile.am: use new GNOME variables
6756
6757         * gconf-editor/gconf-editor.c: use new g_conf_init() 
6758         signature
6759
6760         * gconf-editor/menus.h, gconf-editor/menus.c: These 
6761         hadn't been added
6762         
6763 1999-09-19  Havoc Pennington  <hp@pobox.com>
6764
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.
6768
6769         * gconf/gconf.c: Add G_CONF_OVERRIDDEN to strerror, etc.
6770
6771         * gconf/GConf.idl: add ConfigOverridden to pass it across the
6772         CORBA link
6773
6774         * doc/gconf.sgml: Add more stuff to docs
6775         
6776 1999-09-17  Havoc Pennington  <hp@pobox.com>
6777
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)
6781
6782         * Makefile.am: Add "doc" subdir
6783
6784         * doc/Makefile.am: Added
6785
6786         * doc/gconf.sgml: write more docs
6787         
6788 1999-09-03  Havoc Pennington  <hp@pobox.com>
6789
6790         * configure.in: Set library version info variables, and locate
6791         Guile libraries, etc.   
6792
6793         * wrappers/Makefile.am: conditionally build Guile subdir if we
6794         found guile.
6795
6796         * wrappers/guile: new subdir with the basic files/build for Guile 
6797         bindings, will add the actual bindings later. 
6798         
6799 1999-09-03  Havoc Pennington  <hp@pobox.com>
6800
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.
6804
6805         * gconf/Makefile.am: use POPT_LIBS
6806
6807         * gconf/gconf-backend.c: change some g_warning to g_conf_log
6808
6809 1999-09-03  Havoc Pennington  <hp@pobox.com>
6810
6811         * gconf/gconfd.c: Every hour or so, hibernate all contexts that
6812         haven't been accessed in 45 minutes. Make some assorted changes
6813         to support that.
6814
6815 1999-09-02  Havoc Pennington  <hp@pobox.com>
6816
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
6822         g_warning().
6823
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 
6826         to report problems.
6827
6828         * gconf/gconfd.c: Use g_conf_log(); log "exiting" later than we 
6829         had been, after shutting everything down. 
6830
6831 1999-09-02  Havoc Pennington  <hp@pobox.com>
6832
6833         * backends/Makefile.am: Install backends in $(libdir)/gconf
6834
6835         * gconf/Makefile.am: Look for backends in $(libdir)/gconf
6836
6837         * gconf/gconf-backend.c (g_conf_backend_file): Use
6838         g_module_build_path() to build the module path
6839
6840         * gconf/gconf-orbit.c (g_conf_get_cookie_reliably): Make the 
6841         ~/.gconfd directory if necessary.
6842
6843         Lots of error-checking added.
6844
6845         * gconf/gconfd.c: Mark a lot of strings for translation; include 
6846         username in the syslog spew.
6847
6848 1999-09-02  Havoc Pennington  <hp@pobox.com>
6849
6850         * gconf/gconfd.c (main): If the orb init fails, syslog the 
6851         GConf error.
6852
6853         * gconf/gconf-orbit.c: Add tons of error checks/reports
6854
6855 1999-09-01  Tim P. Gerla  <timg@means.net>
6856
6857         * configure.in: Added test for popt.
6858
6859 1999-09-01  Havoc Pennington  <hp@pobox.com>
6860
6861         * backends/xml-backend.c (dir_get_value): Fix a segfault, check
6862         that an Entry != NULL before dereferencing it
6863
6864         * GConf.idl: Add ConfigException and ConfigErrorType to pass
6865         errors from server to client
6866
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. 
6870
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
6876         occurred
6877
6878 1999-09-01  Havoc Pennington  <hp@pobox.com>
6879
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)
6884
6885         * gconf/Makefile.am: Assume GMODULE_CFLAGS are now included in
6886         GLIB_CFLAGS since we fixed configure.in
6887
6888         * gconf/gconf.c, gconf/gconf.h: Reference count the GConf object, 
6889         add extern "C" when using C++
6890
6891         * gconf/gconftool.c: unref instead of destroying the GConf object
6892
6893 1999-08-31  Dave Camp  <campd@oit.edu>
6894
6895         * gconf/gconf.c (g_conf_is_initialized): New function.
6896
6897 1999-08-31  Dave Camp  <campd@oit.edu>
6898
6899         * gconf/gconftool.c (main): Changed --dir-exists to return 0 if 
6900         the dir exists, and 2 if it does not.
6901
6902 1999-08-31  Dave Camp  <campd@oit.edu>
6903
6904         * gconf/gconftool.c (options): Added "--dir-exists".
6905         (main): If dir_exists is on the command line, check if the argument dir
6906         exists.
6907
6908         * gconf/gconfd.c (server_epv): Added gconfd_dir_exists.
6909         (gconfd_dir_exists): New function.
6910         (context_dir_exists): New function.
6911
6912         * gconf/gconf.c (g_conf_dir_exists): New function.
6913
6914         * gconf/gconf-internals.c (g_conf_sources_dir_exists): New function.
6915         (g_conf_source_dir_exists): New function.
6916
6917         * gconf/gconf-backend.h (GConfBackendVTable): Added a dir_exists 
6918         entry. 
6919
6920         * gconf/GConf.idl (dir_exists): New function.
6921
6922         * backends/xml-backend.c (dir_exists): New function.
6923         (xml_vtable): Added dir_exists.
6924
6925 1999-08-30  Dave Camp  <campd@oit.edu>
6926
6927         * gconf/gconf.h: #include gconf-orbit.h.
6928
6929         * gconf/Makefile.am (gconfinclude_HEADERS): Install gconf-orbit.h,
6930         GConf.h
6931
6932 1999-08-29  Dave Camp  <campd@oit.edu>
6933
6934         * Makefile.am (bin_SCRIPTS): Install gconf-config.
6935
6936         * configure.in (AC_OUTPUT): Create gconf-config. 
6937
6938         * gconf/Makefile.am: Install gconf.h and gconf-schema.h.
6939         
6940
6941 1999-08-29  Dave Camp  <campd@oit.edu>
6942
6943         * configure.in (XML_LIBS): Use xml-config.
6944
6945 1999-08-29  Kjartan Maraas  <kmaraas@online.no>
6946
6947         * configure.in: Added "no" to ALL_LINGUAS