1 2009-02-23 Tor Lillqvist <tml@novell.com>
3 Bug 570501 - g_win32_get_system_data_dirs uses invalid conversion
4 of function pointer to object pointer
6 * glib/gutils.c (g_win32_get_system_data_dirs_for_module): Change
7 the type of the function's parameter to be explicitly a function
10 * glib/gutils.h (_g_win32_get_system_data_dirs): Modify
11 declaration and the only caller, the inline
12 _g_win32_get_system_data_dirs(), accordingly. Add comments
13 pointing out these are internal GLib functions.
15 2009-02-22 Matthias Clasen <mclasen@redhat.com>
17 Bug 572151 – “it's” and “its” confused in docs and comments
19 * Fix "it's" vs "its" confusion throughout the source. Patch
22 2009-02-22 Matthias Clasen <mclasen@redhat.com>
24 Bug 572464 – Doc for g_file_get_contents
26 * glib/gfileutils.c (g_file_get_contents): Improve docs. Pointed
27 out by Øystein Johansen.
29 2009-02-22 Matthias Clasen <mclasen@redhat.com>
31 Bug 572672 – glib/gthread.c: argument is different type
33 * glib/gthread.c (g_once_init_leave): Add a necessary cast back.
34 Pointed out by Kazuki Iwamoto.
36 2009-02-17 Matthias Clasen <mclasen@redhat.com>
38 * configure.in: Bump version
40 2009-02-17 Matthias Clasen <mclasen@redhat.com>
42 * === Released 2.19.8 ===
44 2009-02-17 Matthias Clasen <mclasen@redhat.com>
46 Fix strict aliasing warnings and viiolations to make GLib and
47 GLib users buildable with gcc 4.4. Patch by Jakub Jelinek.
49 * glib/gatomic.[hc]: Add G_GNUC_MAY_ALIAS to pointer arguments,
50 fix macro versions to only operate on objects of the same size.
54 * glib/gdatasetprivate.h: Remove unnecessary casts in
55 g_atomic_pointer_get calls.
57 2009-02-16 Matthias Clasen <mclasen@redhat.com>
59 * configure.in: Bump version
61 2009-02-16 Matthias Clasen <mclasen@redhat.com>
63 * === Released 2.19.7 ===
65 2009-02-16 Matthias Clasen <mclasen@redhat.com>
69 2009-02-13 Mathias Hasselmann <hasselmm@gnome.org>
71 Add note about g_utf8_offset_to_pointer() not checking string
74 * glib/gutf8.c (g_utf8_offset_to_pointer()): See summary.
76 2999-02-11 Matthias Clasen <mclasen@redhat.com>
78 Bug 523742 – Use noinst for non-installable libraries
80 * tests/Makefile.am: use noninst_LTLIBRARIES for noninstalled
81 libraries.Patch by Björn Lindqvist
83 2009-02-06 Murray Cumming <murrayc@murrayc.com>
85 * gio/gfilterinputstream.c:
86 * gio/gfilteroutputstream.c: Correct the grammar in some property
88 * gio/gdatainputstream.c:
89 * glib/gregex.c: Correct the spelling of
90 occurrence in documentation.
92 2009-02-02 Matthias Clasen <mclasen@redhat.com>
94 * configure.in: Bump version
96 2009-02-02 Matthias Clasen <mclasen@redhat.com>
98 * === Released 2.19.6 ===
100 2009-02-02 Matthias Clasen <mclasen@redhat.com>
102 * configure.in: Bump version
104 2009-01-31 Matthias Clasen <mclasen@redhat.com>
108 2009-01-31 Matthias Clasen <mclasen@redhat.com>
110 Bug 569105 – g_time_val_to_iso8601() assumes time_t==long
112 * glib/gtimer.c (g_time_val_to_iso8601): Pass a time_t* to gmtime().
113 Pointed out by Matthias Drochner.
115 2009-01-27 Christian Persch <chpe@gnome.org>
118 * docs/reference/glib/glib-sections.txt:
119 * docs/reference/macros_misc.sgml:
120 * docs/reference/glib/tmpl/types.sgml: Add
121 G_GOFFSET_FORMAT and friends. Bug #563141.
123 2009-01-23 Stefan Kost <ensonic@users.sf.net>
125 * docs/reference/glib/Makefile.am:
126 Add SCAN_OPTIONS=--ignore-decorators="GLIB_VAR" to Makefile.am to fix
127 on problem with the doc build.
129 2009-01-21 Tor Lillqvist <tml@novell.com>
131 * glib/gwin32.c (g_win32_locale_filename_from_utf8): Drop the code
132 in the else branch of #if GLIB_CHECK_VERSION (2, 19, 0). Drop
135 2009-01-20 Matthias Clasen <mclasen@redhat.com>
137 Bug 568294 – A wrong reference in the description of
138 g_bookmark_file_add_application()
140 * glib/gbookmarkfile.c (g_bookmark_file_add_application):
141 Fix a typo in the docs. Pointed out by Takeshi Aihana
143 2009-01-19 Matthias Clasen <mclasen@redhat.com>
145 * === Released 2.19.5 ===
147 2009-01-18 Matthias Clasen <mclasen@redhat.com>
149 * glib/gstrfuncs.c (g_strdup_printf): Fix a doc typo.
151 2009-01-18 Matthias Clasen <mclasen@redhat.com>
155 2009-01-18 Matthias Clasen <mclasen@redhat.com>
157 Bug 512779 – --disable-regex breaks compilation
159 * configure.in: Define an ENABLE_REGEX macro
161 * gobject/gboxed.c: Don't refer to g_regex_ref if ENABLE_REGEX
164 2009-01-18 Matthias Clasen <mclasen@redhat.com>
166 * glib/gbsearcharray.h: Quell some compiler warnings.
168 2009-01-18 Matthias Clasen <mclasen@redhat.com>
170 * glib/pcre: Update to PCRE 7.8
172 2009-01-17 Matthias Clasen <mclasen@redhat.com>
174 Bug 567977 – textdomain() macro should not return NULL when
175 ENABLE_NLS is not set
177 * glib/glibintl.h: If !ENABLE_NLS, make textomain() macro
178 return "messages" in case of a NULL argument. Patch by
181 2009-01-17 Matthias Clasen <mclasen@redhat.com>
183 Bug 567838 – G_STRUCT_OFFSETOF fails to compile under icc 9.1
185 * glib/gmacros.h (G_STRUCT_OFFSETOF): Use offsetof instead of
186 __builtin_offsetof, for icc's sake. Proposed by Hrvoje Niksic.
188 2009-01-13 Matthias Clasen <mclasen@redhat.com>
190 Bug 564728 Add function to decode base64 encoded data in place
193 * glib/gbase64.[hc] (g_base64_decode_inplace): New convenience
194 API to decode in place, overwriting the input string. Patch by
197 2009-01-12 Matthias Clasen <mclasen@redhat.com>
199 * glib/gtestutils.c (g_strcmp0): Be more explicit about the NULL
200 handling in the docs.
202 2009-01-12 Tor Lillqvist <tml@novell.com>
204 * glib/goption.c (parse_arg): Guard against a mis-written
205 GOptionArgFunc that has returned FALSE but not set the GError.
207 2009-01-10 Matthias Clasen <mclasen@redhat.com>
209 Bug 566573 – g_match_info_fetch_pos docs
211 * glib/gregex.c: Mention that positions are in bytes.
212 Proposed by Christian Persch.
214 2009-01-10 Matthias Clasen <mclasen@redhat.com>
216 Bug 566569 – gregex docs clarification
218 * glib/gregex.c: Copy the warning about @string to all
219 relevant docs. Proposed by Christian Persch
221 2009-01-09 Tor Lillqvist <tml@iki.fi>
223 Bug 567138 - get_package_directory_from_module() does not free its
226 * glib/gwin32.c (get_package_directory_from_module): Obvious fix.
228 2009-01-05 Matthias Clasen <mclasen@redhat.com>
230 * configure.in: Bump version
232 2009-01-05 Matthias Clasen <mclasen@redhat.com>
234 * === Released 2.19.4 ===
238 2009-01-05 Dan Winship <danw@gnome.org>
240 * glib/tests/.gitignore: update
242 * tests/.gitignore: update, sort
244 * tests/gobject/.gitignore: add
246 2009-01-05 Tor Lillqvist <tml@iki.fi>
248 Bug 566348 - g_file_open_tmp uses the wrong g_mkstemp on win32
250 * glib/gfileutils.c: Move the binary compatibility versions of
251 g_file_test(), g_file_get_contents(), g_mkstemp() and
252 g_file_open_tmp() last in the file. Remove the restriction that
253 the XXXXXX is last in the template in the binary compatibility
254 version of g_mkstemp(). Thanks to Morten Welinder and Jody
257 2009-01-03 Matthias Clasen <mclasen@redhat.com>
261 2009-01-02 Matthias Clasen <mclasen@redhat.com>
263 * glib/gregex.c: Add an example to the g_regex_replace_eval() docs.
265 2009-01-02 Matthias Clasen <mclasen@redhat.com>
267 * glib/gstrfuncs.c: Move docs inline, adding references to g_free()
270 2009-01-02 Matthias Clasen <mclasen@redhat.com>
272 Bug 564210 – SUN Studio 12 has supported visibility attribute
274 * configure.in: Use visibility attribute for new enough sun cc.
277 2008-12-30 Matthias Clasen <mclasen@redhat.com>
279 Bug 565905 – There is no named g_context_group_set_translation_domain()
280 in GOption command line parser
282 * glib/goption.c: Fix a wrong reference in the docs, reported by
285 2008-12-30 Matthias Clasen <mclasen@redhat.com>
295 * glib/gbookmarkfile.c:
296 * glib/gbacktrace.c: Fix some compiler warnings.
298 2008-12-19 Tor Lillqvist <tml@novell.com>
300 * glib/glib.symbols: Add g_thread_get_initialized here,
301 too. Surround g_test_config_vars with ifdef INCLUDE_VARIABLES.
303 2008-12-18 Mike Kestner <mkestner@novell.com>
305 Bug 560676 - function access for g_threads_supported
307 * glib/gthreads.c (g_thread_get_initialized): new accessor for
308 g_threads_supported macro.
309 * glib/gthreads.h: add g_thread_get_initialized
311 2008-12-15 Matthias Clasen <mclasen@redhat.com>
313 * configure.in: Bump version
315 * === Released 2.19.3 ===
317 2008-12-13 Matthias Clasen <mclasen@redhat.com>
321 2008-12-12 Dan Winship <danw@gnome.org>
323 * glib/pltcheck.sh: make this work on x86_64
325 2008-12-12 Behdad Esfahbod <behdad@gnome.org>
327 * glib/guniprop.c: Improve g_unichar_iswide_cjk() docs.
329 2008-12-07 Matthias Clasen <mclasen@redhat.com>
331 Bug 508021 – Add support for the CRIS and CRISv32 architectures
334 * glib/gatomic.c: Add an implementation for the CRIS and CRISv32
335 architectures, by Peter Kjellerstedt
337 2008-12-02 Matthias Clasen <mclasen@redhat.com>
339 * glib/gkeyfile.c: Some more documentation additions.
341 2008-12-01 Matthias Clasen <mclasen@redhat.com>
343 * configure.in: Bump version
345 2008-12-01 Matthias Clasen <mclasen@redhat.com>
347 * === Released 2.19.2 ===
349 2008-12-01 Matthias Clasen <mclasen@redhat.com>
351 * configure.in: Bump version
353 2008-12-01 Matthias Clasen <mclasen@redhat.com>
355 * === Released 2.19.1 ===
359 2008-11-28 Behdad Esfahbod <behdad@gnome.org>
361 Bug 562639 – g_parse_debug_flags() parsing "help"
363 * glib/gutils.c (g_parse_debug_string): Print available keys if
366 2008-11-28 Behdad Esfahbod <behdad@gnome.org>
368 Bug 562638 – GDebugKey key member should be const
370 * glib/gutils.h: Change GDebugKey key member from gchar * to
373 2008-11-28 Matthias Clasen <mclasen@redhat.com>
375 Bug 547264 – Missing "no flags" flag
377 * glib/gregex.c: Mention 0 as value for 'no flags' in some places..
378 Pointed out by Bastien Nocera
380 2008-11-28 Matthias Clasen <mclasen@redhat.com>
382 Bug 562544 – g_key_file_get_string and g_key_file_get_value
383 documentation does not explain the difference
385 * glib/gkeyfile.c (g_key_file_get_string): Explain the difference
386 to g_key_file_get_value(). Pointed out by Mart Raudsepp.
388 2008-11-28 Matthias Clasen <mclasen@redhat.com>
390 * glib/gkeyfile.c: Refer to @locale parameters as locale identifier
393 2008-11-28 Matthias Clasen <mclasen@redhat.com>
395 Bug 557603 – carbon check output misplaced
397 * configure.in: Call AC_PROG_CPP early to avoid it messing up
398 carbon check output. Fix proposed by Christian Persch
400 2008-11-28 Matthias Clasen <mclasen@redhat.com>
402 Bug 559110 – Do not include libintl.h after glibintl.h
404 * glib/glibintl.h: Define bind_textdomain_codeset in the DISABLE_NLS
405 branch. Patch by Peter Kjellerstedt.
407 * glib/gutil.c: Don't include libintl.h directly.
409 2008-11-28 Matthias Clasen <mclasen@redhat.com>
411 Bug 562378 – callback return value not respected for callback option
414 * glib/goption.c (parse_long_option): Return the parse_arg return
415 value even for no-arg callbacks. Patch by Christian Persch
417 * glib/tests/option-context.c: Add a test for a callback which
420 2008-11-23 Christian Persch <chpe@gnome.org>
422 Bug 559413 – g_option_group_set_error_hook docs buglet
424 * glib/goption.c: Doc fix.
426 2008-11-23 Christian Persch <chpe@gnome.org>
428 Bug 560568 – gkeyfile docs buglet
430 * glib/gkeyfile.c: Clarify the docs.
432 2008-11-23 Christian Persch <chpe@gnome.org>
434 Bug 560569 – gkeyfile doesn't use the set list_separator in some cases
436 * glib/gkeyfile.c: (g_key_file_get_locale_string_list),
437 (g_key_file_set_locale_string_list), (g_key_file_set_integer_list),
438 (g_key_file_set_double_list): Use the key file's list separator character,
441 * glib/tests/keyfile.c: (test_lists), (test_reload_idempotency): Test
444 2008-11-21 Christophe Fergeau <teuf@gnome.org>
446 Bug 561212 – GFileReadMoreCallback API doc refers to non-existant function
448 * gio/giotypes.h: fix name of function referred to in
449 GFileReadMoreCallback API documentation
451 2008-11-21 Matthias Clasen <mclasen@redhat.com>
453 * configure.in: Bump gtk-doc dependency to 1.11 for
454 nicer index-generation.
456 2008-11-14 Matthias Clasen <mclasen@redhat.com>
460 2008-11-04 Christian Dywan <christian@imendio.com>
462 Bug 558672 – NULL key lookup using g_hash_table_lookup_extended()
465 Clarify g_hash_table_lookup_extended
467 2008-11-02 Tor Lillqvist <tml@novell.com>
469 * configure.in: Expand also build/win32/vs9/Makefile.
471 2008-10-31 Christian Dywan <christian@imendio.com>
473 Bug 558513 – g_warn_if_fail FIXME in gtestutils
475 * glib/gtestutils.c (g_test_log_send):
476 Turn g_assert into g_warn_if_fail as advised
478 2008-10-31 Grahame Bowland <grahame@angrygoats.net>
480 Bug 558185 – 'parent' variable in g_local_file_get_child_for_display_name()
481 hits g_object_unref(NULL) assertion
484 - remove unused variable. Patch by Matt Johnston <matt@ucc.asn.au>
486 2008-10-29 16:11:14 Tim Janik <timj@gtk.org>
488 * glib/gmacros.h: added G_PASTE() and G_STATIC_ASSERT(), based on
489 patches by Christian Persch and Christian Dywan. Fixes:
490 Bug 558381 - Add support for compile time assertions
492 2008-10-27 Joseph Pingenot <gnomesvn@digitasaru.net>
494 * glib/ghash.c: changed "#GHashTableIterator" to "#GHashTableIter"
495 in the documentation-comments above g_hash_table_foreach_remove()
496 and g_hash_table_foreach_steal() to correctly name and link to
497 GHashTableIter. This affects the GNOME documentation website
498 as well, so further steps are likely necessary beyond this subproject..
500 2008-10-23 Matthias Clasen <mclasen@redhat.com>
502 Bug 557210 – g_compute_checksum_for_* asserts with less than 2 bytes
504 * glib/gchecksum.c (g_compute_checksum_for_data): Accept
505 lengths < 2. Patch by Tommi Komulainen
507 * tests/checksum-test.c: Add a test for this
509 2008-10-23 Matthias Clasen <mclasen@redhat.com>
511 Bug 556921 – gpoll.h breaks hal compilation
513 * glib/gpoll.h: Include gtypes.h. Pointed out by Anis Elleuch
515 2008-10-20 Christian Persch <chpe@gnome.org>
517 Bug 557087 – mem leak in g_content_types_get_registered
519 * gio/gcontenttype.c: Plug a mem leak.
521 2008-10-19 Michael Natterer <mitch@imendio.com>
523 Bug 556186 – gpoll.h breaks gmain.h inclusion
525 * glib/gpoll.h: different fix: disallow direct inclusion
526 unconditionally again but make an exception if included from
527 gmain.h to maintain compatibility.
529 2008-10-16 Matthias Clasen <mclasen@redhat.com>
531 * configure.in: Bump version to 2.19.1
533 * === Released 2.19.0 ===
537 2008-10-14 Christian Persch <chpe@gnome.org>
539 Bug 556186 – gpoll.h breaks gmain.h inclusion
541 * glib/gpoll.h: Only disallow direct inclusion when
542 G_DISABLE_SINGLE_INCLUDES is defined.
544 2008-10-13 Sven Herzberg <sven@imendio.com>
546 Bug 556101 – static mutex yields warnings with g++
547 Reviewed by Tim Janik
549 * configure.in: added an intermediate cast to gpointer
551 2008-10-13 Christian Persch <chpe@gnome.org>
553 Bug 555311 – format not a string literal and no format arguments
556 * glib/gshell.c: Use literal errors where appropriate.
558 2008-10-10 Behdad Esfahbod <behdad@gnome.org>
560 Bug 551355 – [PATCH] Make glib build with libtool 2.2
562 * autogen.sh: Accept libtool 2.2. We are moving towards having
565 2008-10-10 Behdad Esfahbod <behdad@gnome.org>
567 * configure.in: With libtool 2.x, regenerate libtool early.
568 Based on bug 552107, patch by Patryk Zawadzki
570 2008-10-10 Matthias Clasen <mclasen@redhat.com>
572 Bug 554557 – Patch to fix gcc warnings about missing format
577 * glib/grel.c: Fix gcc warnings. Patch by Kjartan Maraas
579 2008-10-10 Matthias Clasen <mclasen@redhat.com>
581 Bug 552861 – glib-2.0.m4 calls system(3) without storing its result
583 * m4macros/glib-2.0.m4: Cosmetic change to make -Werror happy.
584 Patch by Andreas Köhler
586 2008-10-08 Christian Persch <chpe@gnome.org>
588 Bug 555313 – GFileAttribute boxed type get_type function should
589 use usual get_type pattern
591 * gio/gfileattribute.c (g_file_attribute_info_list_get_type): Use
592 g_once_init_enter/leave.
594 2008-10-08 Christian Persch <chpe@gnome.org>
596 Bug 555314 – mem leak in gmarkup
598 * glib/gmarkup.c: (g_markup_parse_context_parse): Plug a mem leak.
600 2008-10-08 Tor Lillqvist <tml@novell.com>
602 Bug 554790 - g_convert() misbehaves with winiconv versions
604 * glib/win_iconv.c (kernel_mbtowc): If converting from ASCII,
605 explicitly check for and reject 8bit chars. MultiByteToWideChar()
606 doesn't, at least not on XP.
608 2008-10-06 Matthias Clasen <mclasen@redhat.com>
610 * glib/gtypes.h: Properly include gmacros.h
612 2008-10-06 Behdad Esfahbod <behdad@gnome.org>
614 Bug 555309 – giochannel breaks on error
615 Patch from Christian Persch
617 * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
618 (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags):
619 Don't shadow err. Oops!
621 2008-10-06 Christophe Fergeau <teuf@gnome.org>
623 Bug 555224 – Improve g_format_size_for_display doc
625 * glib/gfileutils.c: change g_format_size_for_display API doc to
626 explicitly say that the returned string has to be freed. Change
627 spelling of "newly allocated" to "newly-allocated" in g_file_read_link
628 API doc to be more consistent with what is done in that file.
630 2008-10-01 David Zeuthen <davidz@redhat.com>
632 * README.in: Add "Notes about glib 2.20" section detailing the
633 ramifications of the patch from bug #528670.
635 2008-09-30 Behdad Esfahbod <behdad@gnome.org>
637 Bug 554092 – glib doesn't return G_FILE_ERROR_NOENT et al on OS X
639 * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
640 (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags),
641 (g_io_unix_get_flags), (g_io_channel_new_file):
642 Like mclasen says: "well, thats the way errno works...,
643 save it or loose it". Save errno.
645 2008-09-30 Tor Lillqvist <tml@novell.com>
648 * glib/tests/Makefile.am: Bypass gtester related stuff on Windows.
650 2008-09-30 Tor Lillqvist <tml@novell.com>
653 * glib/gnulib/vasnprintf.c: Don't define _GNU_SOURCE on Windows,
654 as _GNU_SOURCE has unintended side effects when compiling against
655 newest mingw headers.
657 2008-09-26 Dan Winship <danw@gnome.org>
659 Bug 553447 – g_assert_no_error()
661 * glib/gtestutils.h (g_assert_no_error, g_assert_error): Macros to
662 assert that a GError is not set, or else is set to a particular
665 * glib/gtestutils.c (g_assertion_message_error): utility for
668 * glib/tests/keyfile.c:
669 * tests/asyncqueue-test.c:
670 * tests/bookmarkfile-test.c:
671 * tests/convert-test.c:
672 * tests/file-test.c: Use g_assert_error/g_assert_no_error
674 2008-09-26 Dan Winship <danw@gnome.org>
676 * glib/gthreadpool.c (wakeup_thread_marker): make this a "const
677 gpointer" rather than a gconstpointer to avoid warnings later
679 * glib/pcre/pcre_ucp_searchfuncs.c:
680 * glib/pcre/pcre_valid_utf8.c: #include "config.h"
682 * glib/tests/printf.c (test_d): fool gcc into not warning about
683 some printf format strings that we know are dubious
685 2008-09-26 Matthias Clasen <mclasen@redhat.com>
687 Bug 553857 – gbacktrace.h requires signal.h
689 * glib/gbacktrace.h: Include signal.h for raise().
690 Pointed out by Sebastien Bacher
692 2008-09-26 Matthias Clasen <mclasen@redhat.com>
694 Bug 553724 – python interpretter path not patched in correctly
696 * glib/Makefile.am: Fix the sed magic to replace python.
698 2008-09-26 Matthias Clasen <mclasen@redhat.com>
700 * glib/gmain.c: Add some more docs.
702 * glib/giochannel.c: Move more docs inline, and improve them
705 2008-09-25 Tor Lillqvist <tml@novell.com>
707 Bug 553820 - gpoll.c: undeclared identifier
710 * glib/gpoll.c: Make the g_poll() function non-static also on
711 Windows. Prefix an underscore to the g_main_poll_debug variable
712 and make it non-static in gmain.c so that it can be used in
713 gpoll.c. Add back missing variable declaration.
715 2008-09-25 Tor Lillqvist <tml@novell.com>
717 * glib/gspawn-win32.c (do_spawn_with_pipes) (do_spawn_directly):
718 Just ignore the child_setup function, never call it. The is no
719 situation in which it could be useful on Windows. Do print a
720 warning, like before.
722 * glib/gspawn.c (g_spawn_async_with_pipes): Corresponding change
725 2008-09-24 Sven Herzberg <sven@imendio.com>
727 Be a little more explcit in the docs. Includes Owen's requested
730 * glib/gmain.c: improved documentation for g_source_attach() and
733 2008-09-23 Michael Natterer <mitch@imendio.com>
735 * glib/glib.h: #include <glib/gpoll.h>
737 * glib/gpoll.h: #error out if gpoll.h is included directly.
739 * glib/gpoll.c: remove trailing whitespace.
741 2008-09-23 Dan Winship <danw@gnome.org>
743 * glib/gpoll.[ch] (g_poll): Move this out of gmain.c and make it part
744 of the public API. (Part of Bug 505361 - gunixinputstream.c assumes
747 2008-09-23 Tor Lillqvist <tml@novell.com>
749 * glib/gmain.c (poll_rest) [Win32]: Fix embarrassing bug: I was
750 passing an incorrect third parameter to memmove(), had forgotten
751 to multiply by the size of the table entry. Just use a for loop
752 instead, clearer. Odd I didn't notice when testing this code.
754 2008-09-19 Hans Petter Jansson <hpj@novell.com>
756 Rewrite most of GHashTable to use open addressing with quadratic
757 probing instead of chaining. This has the potential to reduce memory
758 fragmentation significantly, while being slightly faster due to
759 better locality and no need to call alloc/free functions for nodes.
760 Benchmarks suggest it also uses less memory overall.
762 * glib/ghash.c (prime_mod): Table of suitable primes for
763 initial-probe distribution.
764 (g_hash_table_set_shift): New function.
765 (g_hash_table_find_closest_shift): New function.
766 (g_hash_table_set_shift_from_size): New function.
767 (g_hash_table_lookup_node_for_insertion): New function.
768 (g_hash_table_lookup_node): Rewritten to return node index instead of
769 pointer, use quadratic probe on flat table, and not return insertion
770 data. The latter saves some computation for read-only lookups.
771 (g_hash_table_remove_node): Rewrite to take a pointer directly to the
772 node structure to remove, and clear that. Remove unlinking code.
773 (g_hash_table_remove_all_nodes): Rewrite to not clear nodes
774 individually, but en masse using memset () after potentially calling
776 (iter_remove_or_steal): Use new data structure and algorithm. Vastly
777 simplified - now just a call to g_hash_table_remove_node ().
778 (g_hash_table_resize): New resize code, re-indexing with new prime
779 and cleaning up tombstones.
780 (g_hash_table_maybe_resize): Table may hold 8 buckets minimum, no less
781 than 1/4 load excluding tombstones, and no more than 15/16 load
782 including tombstones. These numbers are the results of a lot of
783 benchmarking with multiple complex applications, and should not be
785 (g_hash_table_iter_next)
786 (g_hash_table_lookup)
787 (g_hash_table_lookup_extended)
788 (g_hash_table_insert_internal)
789 (g_hash_table_remove_internal)
790 (g_hash_table_foreach_remove_or_steal)
791 (g_hash_table_foreach)
793 (g_hash_table_get_keys)
794 (g_hash_table_get_values): Use new data structure and algorithm,
795 fairly trivial changes.
797 2008-09-19 Tor Lillqvist <tml@novell.com>
799 * glib-zip.in: Look for man pages in share/man.
801 * glib/gutils.c (_glib_get_dll_directory)
802 * glib/gspawn-win32.c (do_spawn_with_pipes): Be a bit less
803 restrictive, look for the helper programs in the same folder where
804 the GLib DLL is, not necessarily in a "bin" subfolder of the top
805 GLib installation folder.
807 2008-09-18 Matthias Clasen <mclasen@redhat.com>
809 * configure.in: Bump version to 2.19.0
811 * ChangeLog.pre-2-18: rotate ChangeLog
813 * === branch for 2.18 ===