2004-10-26 Ray Strode <rstrode@redhat.com>
* glib/gkeyfile.c: Add Matthias to "Written by" lines
(GKeyFileGroup): add field to hold comments about groups
(g_key_file_load_from_fd): return TRUE on success and
FALSE on failure. Don't close fd's opened by other
parent function.
(g_key_file_load_from_file): run FILE_IS_REGULAR test
before trying to open file, to save an fd from being
leaked (would probably be better to use fstat()). Close
fd when done with it. Return TRUE on success and FALSE
on failure.
(g_key_file_load_from_data): Return TRUE on success and
FALSE on failure.
(g_key_file_load_from_data_dirs): remove superfluous
const modifier. Return TRUE on success and FALSE on
failure. Stop trying to load files when one succeeds.
(g_key_file_parse_key_value_pair): don't validate input
for UTF-8 until users uses a getter that does
validation. Don't leak copy of start_group_name.
(g_key_file_to_data): serialize new comment field for
groups.
(g_key_file_get_keys): Remove convenience code to let
NULL group mean start group. Get rid of unneeded NULL
check before g_strdup.
(g_key_file_get_groups): Reverse groups list before
sending to user because it is maintained in backward
order internally.
(g_key_file_get_value),
(g_key_file_set_value): add g_return checks at top of
public functions.
(g_key_file_get_string),
(g_key_file_get_string_list): validate key value is UTF-8.
(g_key_file_[sg]et_*comment): new functions for
setting/getting comments
(g_key_file_remove_comment): new function to remove
comment block
(g_key_file_remove_key_value_pair_node): new function to
pull a key-value pair out of the list and free it.
(g_key_file_remove_group_node): call
g_key_file_remove_key_value_pair_node instead of
freeing the list immediately to get better statistics
for approximate_size.
(g_key_file_remove_group): use lookup_group_node instead
of lookup_group to prevent a g_list_find call.
(g_key_file_add_key): report group also when unable to
find key.
(g_key_file_lookup_group_node): new function to make
getting the group node from a group name easier.
(g_key_file_lookup_group): use lookup_group_node under
the hood.
(g_key_file_lookup_key_value_pair_node): new function to
make getting the key-value pair from a group and key
name eaiser.
(g_key_file_parse_comment_as_value): new function to add '#' to the
beginning of every line.
(g_key_file_parse_value_as_comment): new function that
attempts to be the inverse of comment as value.
Mon Oct 25 15:05:18 2004 Manish Singh <yosh@gimp.org>
* autogen.sh: rm autom4te.cache, since it might interfere with
differing autoconf versions.
* tests/child-test.c: use GINT_TO_POINTER for g_child_watch_add
user data.
* glib/gfileutils.c: G_IS_DIR_SEPARATOR is defined in gutils.h now,
don't redefine it here.
2004-10-23 Matthias Clasen <mclasen@redhat.com>
* gtype.h (GTypeInterfaceCheckFunc): Rename first parameter to
check_data, since apparently the system headers on AIX leak a
macro named func_data. (#155178, Andrea Campi)
2004-10-23 Matthias Clasen <mclasen@redhat.com>
* glib/gnulib/g-gnulib.h: Undef libc functions before defining
them, since they may also be macros. (#155177, Andrea Campi)
2004-10-23 Matthias Clasen <mclasen@redhat.com>
* glib/gkeyfile.h:
* glib/gkeyfile.c: Add a parser for desktop entries and
similar files with a .ini-like syntax. (#139974, Ray Strode)
* glib/glib.h: Include gkeyfile.h
* glib/Makefile.am (libglib_2_0_la_SOURCES): Add gkeyfile.c
(glibsubinclude_HEADERS): Add gkeyfile.h
* glib/gutils.c (_g_compute_locale_variants): Make this
non-static and use it in gkeyfile.c
2004-10-22 Matthias Clasen <mclasen@redhat.com>
* tests/uri-test.c (run_uri_list_tests): Add some
uri list tests.c.
* glib/gconvert.h:
* glib/gconvert.c (g_uri_list_extract_uris): New function to
split a text/uri-list data into individual uris and strip comments.
2004-10-08 Matthias Clasen <mclasen@redhat.com>
* glib/gmain.c (g_child_watch_add_full):
* glib/gmain.c (g_child_watch_add): Document that GLib supports only
a single callback per pid. (#154828, Gustavo Carneiro)
Wed Oct 6 02:12:44 2004 <timj@birnet.org>
* gtype.c (g_type_instance_get_private): applied patch from Jean-Yves
Lefort <jylefort@brutele.be> to not access the instance_real_class_bsa
pointer without holding the instance_real_class lock.
2004-10-05 Anders Carlsson <andersca@gnome.org>
* glib/goption.c: (g_option_context_parse):
Add check for if argc is 0.
* tests/option-test.c: (empty_test3), (main):
Add test case.
2004-10-04 Matthias Clasen <mclasen@redhat.com>
* gsignal.c (g_signal_add_emission_hook): Improve the warning
if G_SIGNAL_NO_HOOKS is set. (#154299, Nickolay V. Shmyrev)
2004-10-03 Anders Carlsson <andersca@gnome.org>
* glib/goption.c: (parse_arg):
Set arg_data on filenames. (Discovered by Mats-Ola Persson).
* tests/option-test.c: (arg_test3), (ignore_test3), (main):
Add test for filename args.
2004-10-01 Tor Lillqvist <tml@iki.fi>
* glib/goption.c (g_option_context_parse): Use
g_path_get_basename() instead of strrchr(), so that either slash
is accepted on Windows.
2004-09-30 Matthias Clasen <mclasen@redhat.com>
* glib/gfileutils.c: Convert filenames to UTF-8 before
putting them in GErrors. (#154078, Morten Welinder)
2004-09-29 Matthias Clasen <mclasen@redhat.com>
* glib/glib.symbols: Add g_assert_warning.
* glib/gmessages.h:
* glib/gmessages.c (g_assert_warning): Treat g_assert
in the same way as g_return_if_fail and move the string
constants into a helper function, which also takes
care of removing the "IA__" prefix from internal aliases.
2004-09-29 Matthias Clasen <mclasen@redhat.com>
* glib/gmessages.h: Move the declaration of
g_return_if_fail_warning() out of the ifdefs, so that
building with G_DISABLE_ASSERT works.
2004-09-27 Murray Cumming <murrayc@murrayc.com>
* glib/goptions.[h|c], glib/glib.symbols: Rename
g_context_option_error_quark() to g_option_error_quark(), because that
is consistent with normal naming conventions, and what bindings expect.
2004-09-26 Matthias Clasen <mclasen@redhat.com>
Fix#153649, Hidetaka Iwai:
* glib/goption.c (parse_long_option): Don't forget to set parsed
to TRUE when parsing a long ARG_NONE option.
(free_changes_list): Fix the memory management for string
and filename arrays.
2004-09-22 Tor Lillqvist <tml@iki.fi>
* Makefile.am (install-libtool-import-lib): [Win32] Add code to
remove the bug-compatibility entries (see #134813, and related
comments below) from the import library. The PRIVATE keyword in
the .def file is supposed to mean that, but it isn't implemented
yet by GNU ld.
* makegobjectalias.pl: In case the symbol is followed by some
stuff ("PRIVATE") that's intended for the .def file, use just the
actual symbol.
* gobject.symbols: For binary bug compatibility on Win32, add the
g_slist_remove_all and g_unichar_validate symbols inside #ifdef
INCLUDE_INTERNAL_SYMBOLS. (See #134813 and log entries from March
below.)
2004-09-22 Tor Lillqvist <tml@iki.fi>
* glib/gmessages.c: [Win32] Don't open a console window if
standard output or standard error are invalid (as they are for GUI
applications). These console windows that open up unexpectedly
have caused endless amounts of confusion among end-users.
Don't output the process id on Windows. Only output the program
name. If not set with g_set_prgname(), fetch the application
executable's name and use that.
2004-09-20 Matthias Clasen <mclasen@redhat.com>
* glib/tmpl/messages.sgml: Correct the docs for the default log
handler wrt to which messages go to stderr. (#153041, Philippe Blain)
Mon Sep 20 00:13:48 2004 Matthias Clasen <maclas@gmx.de>
Make GOption remove long options completely. (#153113, Robert Ögren)
* glib/goption.c (parse_long_option): Fix a wrong index.
* tests/option-test.c (ignore_test3): Test handling of unknown
options some more.