2006-12-03 Ryan Lortie <desrt@desrt.ca>
* tests/hash-test.c (second_hash_test): fix memory leak, add a few
extra sanity tests.
svn path=/trunk/; revision=6025
2007-12-03 Marco Barisione <marco@barisione.org>
* glib/gregex.c:
* glib/gregex.h: Add new error codes for when compilation fails and
make compilation error translatable. (#482313, Morten Welinder)
svn path=/trunk/; revision=6021
2007-12-03 Ryan Lortie <desrt@desrt.ca>
* glib/ghash.c: merge more common code into functions. Vastly
simplify loop logic in g_hash_table_foreach_remove_or_steal().
svn path=/trunk/; revision=6016
2007-11-28 Alexander Larsson <alexl@redhat.com>
* glib/gstring.c (g_string_append_uri_escaped):
Move this function before g_string_append_c so that
we avoid the plt call due to the undefinf of g_string_append_c
svn path=/trunk/; revision=5975
2007-11-28 Emmanuele Bassi <ebassi@gnome.org>
* gio/Makefile.am: Remove makegioalias.pl from the marshal files
and avoid it being cleaned up when running make clean.
svn path=/trunk/; revision=5974
2007-11-28 Alexander Larsson <alexl@redhat.com>
* glib/glib.symbols:
Add in the new symbols
* glib/gurifuncs.c:
Use the aliases framework
* glib/glibintl.h:
* glib/gutils.c:
Make the alias stuff work now that glib_gettext
is exported to libgio.
svn path=/trunk/; revision=5973
2007-11-27 Ryan Lortie <desrt@desrt.ca>
* glib/ghash.c (g_hash_table_insert, g_hash_table_replace,
g_hash_table_insert_internal): insert/replace were identical except
for a single line. Replace both with a common function.
svn path=/trunk/; revision=5964
2007-11-26 Ryan Lortie <desrt@desrt.ca>
Add new function g_markup_collect_attributes (bug #496847).
* glib/glib.symbols: add g_markup_collect_attributes
* docs/reference/glib/glib-sections.txt:
* glib/gmarkup.h:
* glib/gmarkup.c: add g_markup_collect_attributes and new enumerated
type GMarkupCollectType. Add new error code
G_MARKUP_ERROR_MISSING_ATTRIBUTE that is thrown by the attribute
collector.
svn path=/trunk/; revision=5947
2007-11-27 Tor Lillqvist <tml@novell.com>
* glib/win_iconv.c: Some improvements, being upstreamed.
(must_use_null_useddefaultchar): New function, checks for those
codepages for which one must pass a NULL lpUsedDefaultChar pointer
to WideCharToMultiByte().
(kernel_wctomb): Use it.
(kernel_wctomb): Return with E2BIG immediately if bufsize is zero.
svn path=/trunk/; revision=5945
2007-11-27 Tor Lillqvist <tml@novell.com>
* glib/gutils.c (_glib_get_locale_dir) [Win32]: Use either
lib/locale or share/locale depending on which one is in
GLIB_LOCALE_DIR. When the configury recognizes GNU gettext (based
on the _nl_msg_cat_cntr variable, eek), share/locale gets used.
* glib-zip.in: Likewise, look for message catalogs either in
lib/locale or share/locale.
svn path=/trunk/; revision=5944
2007-11-26 Alexander Larsson <alexl@redhat.com>
* Makefile.am:
* configure.in:
* gio-2.0-uninstalled.pc.in:
* gio-2.0.pc.in:
* gio-unix-2.0-uninstalled.pc.in:
* gio-unix-2.0.pc.in:
* gio/
* docs/reference/gio
Merged gio-standalone into glib.
* glib/glibintl.h:
* glib/gutils.c:
Export glib_gettext so that gio can use it
Add P_ (using same domain for now)
Add I_ as g_intern_static_string
svn path=/trunk/; revision=5941
2007-11-26 Tor Lillqvist <tml@novell.com>
Implement #491549: On Windows, always use the native API for
character set conversions instead of GNU libiconv. Almost all
codesets supported by GNU libiconv exist as Windows codepages.
One missing feature is the "C99" and "JAVA" pseudo codesets, but I
doubt that is worth worrying about.
* glib/win_iconv.c: New file. iconv() implementation for
Windows. Placed in the public domain by Yukihiro Nakadaira
<yukihiro.nakadaira@gmail.com>. From
http://yukihiro.nakadaira.googlepages.com/win_iconv.zip, his
2007-11-17 version.
* glib/gconvert.c: Include win_iconv.c on Windows.
* configure.in: Bypass iconv checks on Windows.
svn path=/trunk/; revision=5937
2007-11-25 Tor Lillqvist <tml@novell.com>
* glib/gtestutils.c: Add conditionals for non-Unix. Just g_error()
unless G_OS_UNIX for now.
svn path=/trunk/; revision=5936
2007-11-23 Matthias Clasen <mclasen@redhat.com>
* glib/gbase64.c (g_base64_encode): Don't refuse to encode
a single byte. (Milan Crha)
* tests/base64-test.c: Test encoding short strings.
svn path=/trunk/; revision=5919
2007-11-23 Matthias Clasen <mclasen@redhat.com>
* glib/goption.c: Use g_print to print out --help text in
locale encoding. (#469551, Takao Fujiwara)
svn path=/trunk/; revision=5916
2007-11-22 Matthias Clasen <mclasen@redhat.com>
* glib/gkeyfile.c: Set length out param in list-returning functions
to 0 when returning NULL. (#498728, Christian Persch)
svn path=/trunk/; revision=5915
2007-11-21 21:06:47 Tim Janik <timj@imendio.com>
* Makefile.decl: initialize automake variables EXTRA_DIST and
TEST_PROGS for unconditional appending via += in other makefiles.
define recursive test targets: test, test-report, perf-report,
full-report, as described here:
http://mail.gnome.org/archives/gtk-devel-list/2007-November/msg00000.html
* Makefile.am:
* build/win32/vs8/Makefile.am, build/win32/dirent/Makefile.am:
* build/win32/Makefile.am, build/Makefile.am:
* docs/Makefile.am, docs/reference/Makefile.am:
* docs/reference/glib/Makefile.am, docs/reference/gobject/Makefile.am:
* gmodule/Makefile.am, tests/Makefile.am:
* tests/refcount/Makefile.am, tests/gobject/Makefile.am:
* glib/update-pcre/Makefile.am, glib/libcharset/Makefile.am:
* glib/tests/Makefile.am, glib/pcre/Makefile.am:
* glib/gnulib/Makefile.am, gobject/Makefile.am, m4macros/Makefile.am:
* gthread/Makefile.am, glib/Makefile.am:
include $(top_srcdir)/Makefile.decl, adapted EXTRA_DIST assignments.
* glib/tests/Makefile.am: removed example testing rules.
* glib/tests/testing.c: conditionalized performance and slow tests.
* glib/gtestutils.h:
* glib/gtestutils.c: work around g_test_config_vars not changing its
exported value after value assignments, aparently due to symbol aliases.
* glib/gtester.c: fixed off-by-one error which produced junk in logs.
* configure.in: check for python >= 2.4 and provide $PYTHON for scripts.
svn path=/trunk/; revision=5914
2007-11-20 Sven Neumann <sven@gimp.org>
* glib/gerror.c (g_error_add_prefix): use g_strconcat() instead of
g_strjoin() to concatenate two strings.
svn path=/trunk/; revision=5873
2007-11-19 Marco Barisione <marco@barisione.org>
* glib/gregex.c: Pass an unsigned long instead of an int to
pcre_fullinfo() to avoid problems on 64-bit systems
svn path=/trunk/; revision=5869
2007-11-19 Marco Barisione <marco@barisione.org>
* glib/gregex.c: When the compilation of a pattern fails in the error
message use the character offset and not the byte offset.
svn path=/trunk/; revision=5867
2007-11-18 Matthias Clasen <mclasen@redhat.com>
* configure.in: Check whether assembler supports numerical local
labels.
* glib/gatomic.c: Fix powerpc implementation of atomic ops for
platforms where the assembler doesn't support numerical local
labels. (#445362)
svn path=/trunk/; revision=5861
006-11-15 Ryan Lortie <desrt@desrt.ca>
* docs/reference/glib/tmpl/markup.sgml:
* glib/gmarkup.h:
* glib/gmarkup.c: new flag G_MARKUP_PREFIX_ERROR_POSITION to cause the
parser to prepend location information (ie: "Error on line %d, char
%d:") to errors generated by the GMarkupParser callbacks.
Closes#496046.
svn path=/trunk/; revision=5860
2007-11-13 Cody Russell <bratsche@gnome.org>
* docs/reference/gobject/gobject-docs.sgml:
* docs/reference/gobject/tut_gsignal.xml:
* docs/reference/gobject/tut_gtype.xml:
* docs/reference/gobject/tut_intro.xml:
* docs/reference/gobject/tut_tools.xml:
* docs/reference/gobject/tut_howto.xml:
* docs/reference/gobject/tut_gobject.xml: Documentation fixes.
Recommend macro type names such as NAUTILUS_TYPE_WINDOW (not
NAUTILUS_WINDOW_TYPE). Fixed text which erroneously stated that
superclass initializers don't run when an object is
instantiated. Fixed numerous spelling mistakes. Minor grammar
edits. (#490637, Adam Dingle)
svn path=/trunk/; revision=5857
2007-11-08 Matthias Clasen <mclasen@redhat.com>
* mkinstalldirs: Temporarily add this script, to fix building
from svn.
svn path=/trunk/; revision=5830
2007-11-08 Matthias Clasen <mclasen@redhat.com>
* configure.in:
* m4macros/glib-2.0.m4: Require pkg-config 0.16 in configure
and in AM_PATH_GLIB_2_0 to be consistent with the use of
PKG_PROG_PKG_CONFIG which was introduced in 0.16. (#418778,
Loïc Minier)
svn path=/trunk/; revision=5820
2007-11-07 Matthias Clasen <mclasen@redhat.com>
* glib/glib.symbols:
* glib/gmarkup.[hc] (g_markup_parse_context_get_element_stack):
New function, to get the stack of open elements. (#452887,
Ryan Lortie)
svn path=/trunk/; revision=5816
2007-11-07 Matthias Clasen <mclasen@redhat.com>
* glib/gkeyfile.[hc]: Make some functions that take
a GError return boolean instead of void. (#375651, Matt Barnes)
svn path=/trunk/; revision=5815
2007-11-07 Matthias Clasen <mclasen@redhat.com>
* acinclude.m4:
* configure.in: Move some inter-*.m4 includes from
configure.in to acinclude.m4 to avoid warnings when
using automake 1.9. (#449937)
svn path=/trunk/; revision=5812
2007-10-22 Tor Lillqvist <tml@novell.com>
* glib/gutils.c (_glib_gettext): Plug small one-time leak on
Windows. (#488068, Daniel Atallah)
svn path=/trunk/; revision=5795
2007-10-16 Matthias Clasen <mclasen@redhat.com>
* configure.in: Check for sys/resource.h
* glib/gspawn.c: Improve the fdwalk implementation on Linux
to only walk over actually open file descriptors. (#469231,
Lennart Poettering)
svn path=/trunk/; revision=5783
2007-10-13 Sven Herzberg <herzi@gnome-de.org>
Reviewed by Tim Janik.
Created marshallers that don't throw gcc warnings when compiling with
-WUnused (fixes#359165).
* gobject/glib-genmarshal.c: decorate return_value and invocation_hint
with G_GNUC_UNUSED
svn path=/trunk/; revision=5781
2007-10-04 Tor Lillqvist <tml@novell.com>
* glibconfig.h.win32.in: Always define G_CAN_INLINE. Even MSVC6 is
capable of inlining. (#483337, Steve Lhomme)
svn path=/trunk/; revision=5780
2007-09-11 Marco Barisione <marco@barisione.org>
* configure.in: fix a typo in the previous commit. (#475854, comment
#4)
svn path=/trunk/; revision=5750
2007-09-11 Marco Barisione <marco@barisione.org>
* glib/Makefile.am:
* configure.in: propagate the pcre flags to libglib and not to all
parts of glib. (#475854, dmacks@netspace.org)
svn path=/trunk/; revision=5749
2007-09-10 Marco Barisione <marco@barisione.org>
* glib/gregex.c: change the type of ref_count from guint to gint, so
we can remove some ugly casts.
svn path=/trunk/; revision=5746
2007-09-10 Marco Barisione <marco@barisione.org>
* glib/gregex.c: use pcre_get_stringnumber() in
get_matched_substring_number() if G_REGEX_DUPNAMES was not set.
(#444765, Yevgen Muntyan)
svn path=/trunk/; revision=5745
2007-09-10 Marco Barisione <marco@barisione.org>
* glib/gregex.c: define PCRE_ERROR_NULLWSLIMIT if it's not defined by
PCRE, has PCRE 7.3 removed this definition. (#475474)
svn path=/trunk/; revision=5742
2007-08-24 Michael Natterer <mitch@imendio.com>
* glib/gslice.[ch]: make g_slice_copy() take a gconstpointer
instead of a gpointer.
svn path=/trunk/; revision=5720
2007-08-22 Cody Russell <bratsche@gnome.org>
* glib/gprintf.c: Document g_snprintf to return "bytes" rather
than "characters".
svn path=/trunk/; revision=5716
2007-08-20 Behdad Esfahbod <behdad@gnome.org>
* glib/tmpl/unicode.sgml: Document that GUnicodeScript is
interchangeable with PangoScript.
2007-08-20 Behdad Esfahbod <behdad@gnome.org>
* glib/guniprop.c: Document that g_unichar_get_script() is
equivalent to pango_script_for_unichar().
svn path=/trunk/; revision=5713
2007-08-14 Cody Russell <bratsche@gnome.org>
* gobject/gsignal.c: g_type_default_interface_ref() was not
ensuring working g_signal_list_ids. Added checks for
!G_TYPE_IS_INTERFACE (itype).
(#465625, by some guy who calls himself Yeti)
svn path=/trunk/; revision=5704
Tue Aug 14 02:06:10 2007 Tim Janik <timj@imendio.com>
* glib/gthread.c (g_once_init_enter_impl): prevent race covered
by g_once_init_enter(), by checking for previous initializations
before entering initialisation branch.
* tests/onceinit.c: added multi-thread/multi-initializer stress test
using unoptimized g_once_init_enter_impl().
svn path=/trunk/; revision=5701
Mon Aug 13 14:21:44 2007 Tim Janik <timj@imendio.com>
* tests/onceinit.c: test g_once_init_*() before and after
g_thread_init() and test concurrency resolution.
svn path=/trunk/; revision=5698
Mon Aug 13 14:18:22 2007 Tim Janik <timj@imendio.com>
* glib/gthread.c (g_thread_create_full): prevent linking a freed
GThread structure into global thread list in error cases.
svn path=/trunk/; revision=5697
2007-08-08 Matthias Clasen <mclasen@redhat.com>
* glib/gmarkup.c (append_escaped_text): Handle restricted
characters by converting them to numeric character
entities. (#464145, Andreas Monitzer)
* tests/markup-escape-test.c: Add tests for restricted
characters and numeric character entities.
svn path=/trunk/; revision=5684
2007-08-06 Tor Lillqvist <tml@novell.com>
* glib/gslice.c: Move the G_ENABLE_DEBUG ifdef inside
g_slice_debug_tree_statistics() so that the function exists (but
doesn't do anything) also in a non-debug build. (#440544)
svn path=/trunk/; revision=5679
Fri Jul 13 01:01:46 2007 Tim Janik <timj@imendio.com>
* glib/gthread.[hc]: more atomic ops pointer cast fixes. this time it'll
work with atomic op macros *and* atomic op functions.
svn path=/trunk/; revision=5638
Thu Jul 12 17:31:08 2007 Tim Janik <timj@imendio.com>
* tests/slice-concurrent.c: beautified output somewhat. fixed long
sleeps by reducing sleep accumulating and using randomized re-scheduling
(which works on UP and SMP). increased possible blocksizes.
svn path=/trunk/; revision=5631
Thu Jul 12 15:46:40 2007 Tim Janik <timj@imendio.com>
* glib/gslice.c: migrate per-thread magazine caches from single-thread
scenario to first thread using GSlice after g_thread_init(); based on
a patch by Tor Lillqvist, fixes#331853.
removed warning about g_thread_init() being called after other glib
functions (in particular g_slice* calls), because GSlice can cope
with this now and the rest of glib is believed to cope as well.
* tests/slice-threadinit.c: new test program which tests GSlice working
across g_thread_init() calls.
svn path=/trunk/; revision=5629
Tue Jul 10 12:24:35 2007 Tim Janik <timj@imendio.com>
* glib/gthread.[hc]: implemented g_once_init_enter(),
g_once_init_enter_impl() and g_once_init_leave(), based on a patch by
Antoine Tremblay, fixes#65041.
adapted exported inline function mechanism from gutils.[hc] for inlining
g_once_init_enter_impl() in gthread.[hc].
svn path=/trunk/; revision=5616
2007-07-09 Loïc Minier <lool@dooz.org>
* tests/refcount/closures.c: (main): Output newlines after thousand
iterations of the inner-loop of the closures test; this helps having
smaller lines and continuously outputting new lines. (#447048).
svn path=/trunk/; revision=5609
2007-07-09 Ryan Lortie <desrt@desrt.ca>
* glib/gfileutils.c (write_to_temp_file): save errno to prevent it
being clobbered by call to g_filename_display_name(). Bug #453796.
svn path=/trunk/; revision=5608
2007-07-06 Tor Lillqvist <tml@novell.com>
* glib/giowin32.c (g_io_win32_check): When WSAEnumNetworkEvents()
signals FD_CONNECT that means that the connection attempt
finished, either successfully or failed. Test explicitly whether
the connnection succeeded and set either G_IO_OUT if it did,
G_IO_ERR|G_IO_HUP if it failed.
Make sure we never set both G_IO_OUT and G_IO_HUP simultaneously
because in Unix poll(2) POLLOUT and POLLHUP are mutually
exclusive.
Ignore whether the caller wants to watch G_IO_HUP or not. Always
select for FD_CLOSE because Unix poll(2) also ignores whether
POLLHUP in set the requested events bitmask or not.
svn path=/trunk/; revision=5600
Mon Jun 25 16:43:13 2007 Tim Janik <timj@gtk.org>
* glib/ghash.c: g_hash_table_find(), g_hash_table_foreach():
document performance caveats for linear order searches.
svn path=/trunk/; revision=5587
2007-06-18 Mathias Hasselmann <mathias.hasselmann@gmx.de>
* glib/gstring.c: Restore old behaviour of
g_string_append_vprintf: g_vasprintf seems to be faster
than g_printf_string_upper_bound (#57693).
svn path=/trunk/; revision=5581
The g_timeout_add_seconds() API lacks a _full() counterpart, allowing the
setting of a destroy notification function to be invoked when the timeout
source is removed.
This patch adds g_timeout_add_seconds_full() to the public API and
reimplements g_timeout_add_seconds() as a call to g_timeout_add_seconds_full().
svn path=/trunk/; revision=5575
2007-06-15 Sebastian Wilhelmi <wilhelmi@google.com>
* docs/reference/glib/tmpl/threads.sgml: Extended the comments on
those functions, that are NOOPs, before g_thread_init() has been
called. (#447583)
* glib/gthread.c (g_static_mutex_free): Clarified comment to
remind myself, tha calling g_static_mutex_free() before
g_thread_init() is safe.
svn path=/trunk/; revision=5567
2007-06-15 Sebastian Wilhelmi <wilhelmi@google.com>
* glib/gregex.c: Replaced & by & in <programlisting> to make
gtk-doc happy.
svn path=/trunk/; revision=5565
2007-06-14 Ryan Lortie <desrt@desrt.ca>
* docs/reference/glib/glib-sections.txt:
* glib/glib/symbols:
* glib/gstring.[ch] (g_string_printf_internal): Improve
performance by removing the use of an intermediate g_malloc'd
buffer. Rename to g_string_append_vprintf, document, and expose
along with g_string_vprintf as new public API (#57693).
svn path=/trunk/; revision=5564
2007-06-13 Behdad Esfahbod <behdad@gnome.org>
* glib/pltcheck.sh: Whitelist g_atomic_{int,pointer}_[gs]et() as
we don't alias them intentionally.
svn path=/trunk/; revision=5556
2007-06-11 Emmanuele Bassi <ebassi@gnome.org>
* glib/gutils.c (maybe_expire_user_special_dirs),
(g_get_user_special_dir): Remove the cache expiration logic: it
makes g_get_user_special_dir() not thread-safe. Document the fact
that on some platform the value might be changed by the user and
that GLib won't be able to reflect the change.
svn path=/trunk/; revision=5550
2007-06-11 Tor Lillqvist <tml@novell.com>
* glib/gwin32.c (g_win32_get_package_installation_directory)
(g_win32_get_package_installation_subdirectory): Update doc
comments. Mention that it is not recommeded to use the Registry
features.
svn path=/trunk/; revision=5547
2007-06-06 Tor Lillqvist <tml@novell.com>
* glib/gutils.c: Add definitions for more CSIDL_* constants in
case missing from headers. Use CSIDL_PERSONAL instead of
CSIDL_MYDOCUMENTS as CSIDL_MYDOCUMENTS seems to be a new thing
that doesn't work in XP SP2 even.
svn path=/trunk/; revision=5544
2007-06-06 Matthias Clasen <mclasen@redhat.com>
* glib/gutils.c (g_get_user_special_dir): Fall back to
$HOME/Desktop for the DESKTOP directory, like
xdg_user_dir_lookup() does.
svn path=/trunk/; revision=5543
2007-06-05 Matthias Clasen <mclasen@redhat.com>
* glib/gkeyfile.c (g_key_file_is_key_name):
(g_key_file_is_group_name): Don't assume the string is
valid UTF-8, since it may be user data. (#444161, Ben Combee)
svn path=/trunk/; revision=5537
2007-06-05 Vincent Untz <vuntz@gnome.org>
* glib/goption.c: (g_option_context_get_help): don't replace the usage
line with the description for optional parameters, but append the
description. (#444130)
svn path=/trunk/; revision=5534
2007-06-04 Matthias Clasen <mclasen@redhat.com>
Add support for a number of special directories, as
defined by the xdg-user-dirs specification. (#432651,
Bastien Nocera, Emmanuele Bassi, Michael Natterer)
* glib/glib.symbols:
* glib/gutils.[hc]: Add the GUserDirectory enum and
g_get_user_special_dir(), with implementations based
on the xdg-user-dirs spec and on native interfaces
for Win32 and Carbon.
* configure.in: Add Carbon checks.
* tests/tetsglib.c: Test g_get_user_special_dir().
svn path=/trunk/; revision=5528
2007-06-03 Yevgen Muntyan <muntyan@tamu.edu>
* glib/gregex.c: fixed g_regex_fetch_named* for cases when (?J)
is used inside a pattern (#442265, comment #12).
* tests/regex-test.c: Test it.
svn path=/trunk/; revision=5526
2007-06-03 Yevgen Muntyan <muntyan@tamu.edu>
* glib/gregex.c:
* glib/gregex.h: New functions: g_regex_ref(), g_regex_unref() which
replaces g_regex_free(); g_match_info_get_regex(), g_match_info_get_string();
g_regex_check_replacement().
Made g_match_info_expand_references() accept NULL; changed GRegexEvalCallback
to take only arguments which are likely to be actualy used.
* docs/reference/glib/glib-sections.txt:
* glib/glib.symbols: Added new functions.
* tests/regex-test.c: Test them.
* docs/reference/glib/tmpl/gregex.sgml: Updated GRegexEvalCallback docs.
svn path=/trunk/; revision=5524
2007-05-29 Cody Russell <bratsche@gnome.org>
* configure.in: Fix a sed script that doesn't correctly detect
i586-mingw32-gcc-3.4 compiler, and was causing -Wno-pointer-sign
errors when building with that compiler. (#440896, Yevgen Muntyan)
svn path=/trunk/; revision=5520
2007-05-29 Marco Barisione <marco@barisione.org>
* glib/gregex.c: Fix g_regex_fetch_named() and
g_regex_fetch_named_pos() when G_REGEX_DUPNAMES is used (#434358,
Yevgen Muntyan and #419376, Marco Barisione, patch by Yevgen Muntyan)
svn path=/trunk/; revision=5518
2007-05-17 Matthias Clasen <mclasen@redhat.com>
* configure.in: Move the compiler-dependency in the G_GNUC_INTERNAL
definition from configure-time to runtime (of the compiler).
(#438869, Damien Carbery)
* glib/gdebug.h:
* glib/gmessages.h:
* glib/gunicodeprivate.h:
* glib/gthreadprivate.h: Move G_GNUC_INTERNAL before function
declarations to fix compilation with sun studio. (#438873,
Damien Carbery)
svn path=/trunk/; revision=5497
2007-05-13 Tor Lillqvist <tml@novell.com>
* glib/gwin32.h: Drop the pipe() macro. Defining macros outside of
its namespace that look like POSIX functions is not GLib's
business in my opinion. This means pipe()-using code that has
relied on this definition will need changing to call _pipe() on
Windows, and make the decision itself on what size pipe buffer to
use, and whether to use text or binary mode, and whether the pipe
handles should be inheritable or not.
* glib/gspawn-win32.c (make_pipe): Use _pipe() instead of pipe().
svn path=/trunk/; revision=5490
2007-05-11 Matthias Clasen <mclasen@redhat.com>
* glib/goption.c: Allow G_OPTION_ARG_CALLBACK for
G_OPTION_REMAINING. (#437297, Dave Benson)
* tests/option-test.c: Add a test for this.
svn path=/trunk/; revision=5487
2007-05-02 Marco Barisione <marco@barisione.org>
* glib/gregex.c: Made more clear that the string passed to the match
functions cannot be freed before using g_match_info_fetch() and
similar functions, and fixed a typo.
svn path=/trunk/; revision=5474
2007-04-30 Chris Wilson <chris@chris-wilson.co.uk>
* glib/gbookmarkfile.c (g_bookmark_file_get_app_info):
Include the gshell.h header file (to define g_shell_[un]quote)
and correct the order of the arguments to g_propagate_error(), as
spotted by gcc.
svn path=/trunk/; revision=5467
2007-04-29 Emmanuele Bassi <ebassi@gnome.org>
* glib/gbookmarkfile.c:
(g_bookmark_file_set_app_info): Quote the passed command line...
(g_bookmark_file_get_app_info): ... and unquote it when giving it
back. (#432274)
svn path=/trunk/; revision=5466
2007-04-27 Tor Lillqvist <tml@novell.com>
* glib/gstdio.c (g_mkdir): Document that the mode argument is
ignored on Windows
(g_stat): Document that st_mode is mostly useless on Windows.
svn path=/trunk/; revision=5463
2007-04-25 Michael Natterer <mitch@imendio.com>
* gparamspecs.c (param_string_validate): also clear the
NOCOPY_CONTENTS flag when replacing NULL with the empty string.
svn path=/trunk/; revision=5458
2007-04-24 Matthias Clasen <mclasen@redhat.com>
* glib/glib.symbols:
* glib/goption.h:
* glib/goption.c (g_option_context_get_help): New function to
get the formatted help string. (#336089, Dom Lachowicz)
svn path=/trunk/; revision=5456
2007-04-24 Michael Natterer <mitch@imendio.com>
* gobject/gparamspecs.c (param_string_validate): don't free or
modify static strings, dup them when needed and clear the
G_VALUE_NOCOPY_CONTENTS flag. Fixes bug #432895.
* tests/gobject/paramspec-test.c: test all GParamSpecString
validations with static and allocated strings.
svn path=/trunk/; revision=5454
2007-04-19 William Jon McCann <mccann@jhu.edu>
* glib/gkeyfile.[ch]: (find_file_in_data_dirs),
(g_key_file_load_from_dirs), (g_key_file_load_from_data_dirs):
Add g_key_file_load_from_dirs for looking through a search
path for a key-file. (#355334)
svn path=/trunk/; revision=5453
2007-04-11 Emmanuele Bassi <ebassi@gnome.org>
* glib/ghash.[ch]: Add g_hash_table_get_keys() and
g_hash_table_get_values(), API to retrieve the keys
and values inside an hash table in list form. (#413133)
* glib/glib.symbols: Update symbols.
* tests/hash-test.c: Exercise newly added functions.
svn path=/trunk/; revision=5444
2007-04-11 Matthias Clasen <mclasen@redhat.com>
* configure.in: Use CFLAGS/LDFLAGS in addition to
PCRE_CFLAGS/PCRE_LIBS when checking system PCRE. (#421607,
Paul Jarc)
svn path=/trunk/; revision=5443
2007-03-22 Chris Wilson <chris@chris-wilson.co.uk>
* glib/gkeyfile.c: Track whether the last key=value pair in a group
is a blank line and during to_data() only insert a new blank line
betweens group in its absence. This allows the beautification of the
GKeyFile and prevents newlines being inserted indefinitely. (#420686)
* tests/keyfile-test.c (test_reload_idempotency): Test that after a
single beautification pass, g_key_file_to_data() does not alter its
input data.
svn path=/trunk/; revision=5431
2007-03-17 Marco Barisione <marco@barisione.org>
* glib/update-pcre/table-reduction.patch:
* glib/update-pcre/make_utt.py:
* glib/update-pcre/utt.patch: Add forgotten files
* glib/update-pcre/update.sh: Call python directly instead of relying
on shebang. Also copy the changes from glib/pcre/makefile.msc to this
file
svn path=/trunk/; revision=5425
2007-03-17 Hans Breuer <hans@breuer.org>
* glib/makefile.msc.in glib/pcre/makefile.msc
glib/update-pcre/update.sh : define PCRE_STATIC to reflect the
inclusion of pcre as LIB, not stand-alone DLL. Also set NEWLINE=-1
to match any newline by default, use of ../../build/win32/make.msc
* glib/gregex.h : minimal includes of <glib/*.H> instead of <glib.h>
* glib/gnulib/makefile.msc : make use of ../../build/win32/make.msc
* tests/regex-test.c(verbose): don't pass a string containing '%'
as first parameter to g_print ()
(test_match) : for the unexpected case output pattern and string
escaped
* tests/child-test.c tests/slice-color.c : fix c99ism
* tests/slice-test.c : fix c99ism and gccism
* tests/mapping-test.c tests/base-64-tests.c : don't
#include <unistd.h> unconditionally
* tests/option-test.c : use G_GINT64_CONSTANT() instead of direct LL
* tests/makefile.msc.in : more tests build
svn path=/trunk/; revision=5423
2007-03-16 Matthias Clasen <mclasen@redhat.com>
* glib/gbase64.c (g_base64_decode): Warn if the input
is too short. (#418862, Halton Huo)
svn path=/trunk/; revision=5417
Fri Mar 16 11:24:51 2007 Tim Janik <timj@imendio.com>
* glib/gscanner.[hc]: reverted premature commit which broke
GScanner ABI and API, #415323.
svn path=/trunk/; revision=5415
2007-03-16 Chris Wilson <chris@chris-wilson.co.uk>
* glib/gkeyfile.c: Convert to GSlice and check for redundant
clears. (#418637)
svn path=/trunk/; revision=5413
2007-03-15 Matthias Clasen <mclasen@redhat.com>
* glib/gscanner.c (g_scanner_get_token_ll): Fix a typo
in the last commit. (#415323, Richard Hult)
svn path=/trunk/; revision=5412
2007-03-15 Tor Lillqvist <tml@novell.com>
* glib/gnulib/Makefile.am (INCLUDES): Add -I$(top_srcdir)/glib so
that gregex.h finds <glib.h>.
* glib/update-pcre/Makefille.am-1: Add -DGLIB_COMPILATION so that
we don't think g_ascii_table is dllimport.
* glib/pcre/Makefile.am: Corresponding change.
* glib/update-pcre/notdll.patch: New file. Drop
dllimport/dllexport magic for the pcre symbols.
* glib/update-pcre/Makefile.am: Dist it.
* glib/update-pcre/update.sh: Apply notdll.patch.
* glib/pcre/pcre.h: Corresponding change.
2007-03-15 Tor Lillqvist <tml@novell.com>
* glib/gtypes.h: Add comment to avoid misleading people with the
large number of digits in G_PI etc. (#404338)
svn path=/trunk/; revision=5410
2007-03-15 Chris Wilson <chris@chris-wilson.co.uk>
* glib/gmain.c (g_main_dispatch): Replace a
g_slist_prepend/g_slist_remove pair with an on-stack link
and open coding. (#416094)
svn path=/trunk/; revision=5407
2007-03-15 Matthias Clasen <mclasen@redhat.com>
* glib/gscanner.[hc]: Some optimizations, use a lookup
table for character classes, pre-allocate GStrings with
reasonable sizes. (#415323, Charlie Brej)
svn path=/trunk/; revision=5405
2007-03-06 Matthias Clasen <mclasen@redhat.com>
* glib/gkeyfile.c (g_key_file_parse_value_as_boolean):
Remove a NULL check that didn't do any good. (#360904,
Paolo Borelli)
svn path=/trunk/; revision=5375
2007-03-06 Matthias Clasen <mclasen@redhat.com>
* glib/gmarkup.c (g_markup_parse_context_parse): Report
more accurate position for invalid UTF-8. (#350802,
Simon Budig)
svn path=/trunk/; revision=5373
2007-03-06 Matthias Clasen <mclasen@redhat.com>
Work with Solaris gettext (#341988, Laszlo Peter)
* m4macros/glib-gettext.m4: Make GLIB_WITH_NLS define
MSGFMT_OPTS if msgfmt supports -c.
* po/Makefile.in.in: Use MSGFMT_OPTS when calling
msgfmt.
svn path=/trunk/; revision=5369
2007-03-06 Matthias Clasen <mclasen@Redhat.com>
* tests/Makefile.am: Apply a patch by Loïc Minier
to fix building with -Wl,-z,defs. (#149144)
svn path=/trunk/; revision=5367
2007-02-17 Tor Lillqvist <tml@novell.com>
* glib/gdate.c (win32_strftime_helper): New Win32-only
function. Use the wide character Win32 API to do the work of
strftime(): GetThreadLocale(), GetLocaleInfoW(), GetDateFormatW()
and GetTimeFormatW().
(g_date_strftime): On Windows use win32_strftime_helper()
instead of strftime() to avoid codepage issues with strftime().
Unfortunately using wcsftime() would not help either. (#404832)
svn path=/trunk/; revision=5339
2007-02-16 Soren Sandmann <sandmann@redhat.com>
* tests/sequence-test.c: For move, test moving between two
sequences. Add test for swap.
* glib/gsequence.c: Replace splay tree with a treap.
(check_node): Add checks for the treap invariants.
svn path=/trunk/; revision=5337
Fri Feb 9 17:46:18 2007 Søren Sandmann <sandmann@redhat.com>
* glib/gsequence.c (g_sequence_get_end_iter): Remove assertion.
* glib/gsequence.c (is_end): Return TRUE if the iter doesn't have
a parent.
* glib/gsequence.c: Fix grammar of comment.
* glib/gsequence.c (node_update_fields): Use a temporary variable
for the n_nodes.
svn path=/trunk/; revision=5331
2007-02-07 Soren Sandmann <sandmann@daimi.au.dk>
* tests/sequence-test.c (compare_items): Force an arbitrary order
on otherwise identical items.
* glib/gsequence.c: Add comment discussing splay trees vs. other trees.
* glib/gsequence.c (is_end): Add fast path for the common case
when the node is not actually the end node.
svn path=/trunk/; revision=5328
2007-02-03 Soren Sandmann <sandmann@daimi.au.dk>
* glib/gsequence.c (struct _GSequence): Add a new 'real_sequence'
field.
(g_sequence_new): Initialize real_sequence to the sequence
(g_sequence_sort_iter): Set real_sequence of the temporary
sequence to the real sequence.
(g_sequence_sort_changed_iter): Same
(g_sequence_insert_sorted_iter): Same
(g_sequence_search_iter): Same
(g_sequence_iter_get_sequence): Return real_sequence
* tests/sequence-test.c (compare_iters): Insert assertions that
the iters point to the sequence being manipulated.
svn path=/trunk/; revision=5323
2007-02-03 Soren Sandmann <sandmann@daimi.au.dk>
* glib/gsequence.[ch]: New files implementing GSequence, a list
implemented using a binary tree.
* glib/glib.h, glib/glib.symbols: Update for GSequence.
* docs/reference: Add documentation for GSequence
* tests: Add sequence-test.c, a thorough test of all of
the GSequence API.
svn path=/trunk/; revision=5322
2007-01-30 Matthias Clasen <mclasen@redhat.com>
* glib/glib.symbols:
* glib/gslice.h:
* glib/gslice.c: Don't make ABI depend on G_ENABLE_DEBUG,
just add an empty g_slice_debug_tree_statistics () implementation
in the !G_ENABLE_DEBUG case.
svn path=/trunk/; revision=5318
2007-01-26 Matthias Clasen <mclasen@redhat.com>
* configure.in: Define G_GNUC_INTERNAL for Sun Studio
as __hidden. (#342981, Brian Cameron)
* glib/gconvert.c:
* glib/gutf8.c: Move G_GNUC_INTERNAL uses to the right
spot.
2
svn path=/trunk/; revision=5317
2007-01-26 Matthias Clasen <mclasen@redhat.com>
* gmem.c:
* gslice.c:
* gmessages.c:
* gutils.c: Make some structs which are used only once
non-static.
svn path=/trunk/; revision=5316
2007-01-23 Matthias Clasen <mclasen@redhat.com>
* glib/gutf8.c (g_utf8_get_char_validated): Clarify
the behaviour is max_len is zero. (#400044,
Benjamin Dauvergne)
svn path=/trunk/; revision=5311
2007-01-23 Matthias Clasen <mclasen@redhat.com>
* glib/goption.c (print_help): Use bitwise &
when operating on flags. (#399971, Jon Oberheide)
svn path=/trunk/; revision=5308