1 2009-02-23 Paolo Borelli <pborelli@katamail.com>
3 * glib/gutf8.c (_g_utf8_make_valid):
4 sanity check the input paramter.
6 2009-02-23 Tor Lillqvist <tml@novell.com>
8 Bug 570501 - g_win32_get_system_data_dirs uses invalid conversion
9 of function pointer to object pointer
11 * glib/gutils.c (g_win32_get_system_data_dirs_for_module): Change
12 the type of the function's parameter to be explicitly a function
15 * glib/gutils.h (_g_win32_get_system_data_dirs): Modify
16 declaration and the only caller, the inline
17 _g_win32_get_system_data_dirs(), accordingly. Add comments
18 pointing out these are internal GLib functions.
20 2009-02-22 Matthias Clasen <mclasen@redhat.com>
22 Bug 572151 – “it's” and “its” confused in docs and comments
24 * Fix "it's" vs "its" confusion throughout the source. Patch
27 2009-02-22 Matthias Clasen <mclasen@redhat.com>
29 Bug 572464 – Doc for g_file_get_contents
31 * glib/gfileutils.c (g_file_get_contents): Improve docs. Pointed
32 out by Øystein Johansen.
34 2009-02-22 Matthias Clasen <mclasen@redhat.com>
36 Bug 572672 – glib/gthread.c: argument is different type
38 * glib/gthread.c (g_once_init_leave): Add a necessary cast back.
39 Pointed out by Kazuki Iwamoto.
41 2009-02-17 Matthias Clasen <mclasen@redhat.com>
43 * configure.in: Bump version
45 2009-02-17 Matthias Clasen <mclasen@redhat.com>
47 * === Released 2.19.8 ===
49 2009-02-17 Matthias Clasen <mclasen@redhat.com>
51 Fix strict aliasing warnings and viiolations to make GLib and
52 GLib users buildable with gcc 4.4. Patch by Jakub Jelinek.
54 * glib/gatomic.[hc]: Add G_GNUC_MAY_ALIAS to pointer arguments,
55 fix macro versions to only operate on objects of the same size.
59 * glib/gdatasetprivate.h: Remove unnecessary casts in
60 g_atomic_pointer_get calls.
62 2009-02-16 Matthias Clasen <mclasen@redhat.com>
64 * configure.in: Bump version
66 2009-02-16 Matthias Clasen <mclasen@redhat.com>
68 * === Released 2.19.7 ===
70 2009-02-16 Matthias Clasen <mclasen@redhat.com>
74 2009-02-13 Mathias Hasselmann <hasselmm@gnome.org>
76 Add note about g_utf8_offset_to_pointer() not checking string
79 * glib/gutf8.c (g_utf8_offset_to_pointer()): See summary.
81 2999-02-11 Matthias Clasen <mclasen@redhat.com>
83 Bug 523742 – Use noinst for non-installable libraries
85 * tests/Makefile.am: use noninst_LTLIBRARIES for noninstalled
86 libraries.Patch by Björn Lindqvist
88 2009-02-06 Murray Cumming <murrayc@murrayc.com>
90 * gio/gfilterinputstream.c:
91 * gio/gfilteroutputstream.c: Correct the grammar in some property
93 * gio/gdatainputstream.c:
94 * glib/gregex.c: Correct the spelling of
95 occurrence in documentation.
97 2009-02-02 Matthias Clasen <mclasen@redhat.com>
99 * configure.in: Bump version
101 2009-02-02 Matthias Clasen <mclasen@redhat.com>
103 * === Released 2.19.6 ===
105 2009-02-02 Matthias Clasen <mclasen@redhat.com>
107 * configure.in: Bump version
109 2009-01-31 Matthias Clasen <mclasen@redhat.com>
113 2009-01-31 Matthias Clasen <mclasen@redhat.com>
115 Bug 569105 – g_time_val_to_iso8601() assumes time_t==long
117 * glib/gtimer.c (g_time_val_to_iso8601): Pass a time_t* to gmtime().
118 Pointed out by Matthias Drochner.
120 2009-01-27 Christian Persch <chpe@gnome.org>
123 * docs/reference/glib/glib-sections.txt:
124 * docs/reference/macros_misc.sgml:
125 * docs/reference/glib/tmpl/types.sgml: Add
126 G_GOFFSET_FORMAT and friends. Bug #563141.
128 2009-01-23 Stefan Kost <ensonic@users.sf.net>
130 * docs/reference/glib/Makefile.am:
131 Add SCAN_OPTIONS=--ignore-decorators="GLIB_VAR" to Makefile.am to fix
132 on problem with the doc build.
134 2009-01-21 Tor Lillqvist <tml@novell.com>
136 * glib/gwin32.c (g_win32_locale_filename_from_utf8): Drop the code
137 in the else branch of #if GLIB_CHECK_VERSION (2, 19, 0). Drop
140 2009-01-20 Matthias Clasen <mclasen@redhat.com>
142 Bug 568294 – A wrong reference in the description of
143 g_bookmark_file_add_application()
145 * glib/gbookmarkfile.c (g_bookmark_file_add_application):
146 Fix a typo in the docs. Pointed out by Takeshi Aihana
148 2009-01-19 Matthias Clasen <mclasen@redhat.com>
150 * === Released 2.19.5 ===
152 2009-01-18 Matthias Clasen <mclasen@redhat.com>
154 * glib/gstrfuncs.c (g_strdup_printf): Fix a doc typo.
156 2009-01-18 Matthias Clasen <mclasen@redhat.com>
160 2009-01-18 Matthias Clasen <mclasen@redhat.com>
162 Bug 512779 – --disable-regex breaks compilation
164 * configure.in: Define an ENABLE_REGEX macro
166 * gobject/gboxed.c: Don't refer to g_regex_ref if ENABLE_REGEX
169 2009-01-18 Matthias Clasen <mclasen@redhat.com>
171 * glib/gbsearcharray.h: Quell some compiler warnings.
173 2009-01-18 Matthias Clasen <mclasen@redhat.com>
175 * glib/pcre: Update to PCRE 7.8
177 2009-01-17 Matthias Clasen <mclasen@redhat.com>
179 Bug 567977 – textdomain() macro should not return NULL when
180 ENABLE_NLS is not set
182 * glib/glibintl.h: If !ENABLE_NLS, make textomain() macro
183 return "messages" in case of a NULL argument. Patch by
186 2009-01-17 Matthias Clasen <mclasen@redhat.com>
188 Bug 567838 – G_STRUCT_OFFSETOF fails to compile under icc 9.1
190 * glib/gmacros.h (G_STRUCT_OFFSETOF): Use offsetof instead of
191 __builtin_offsetof, for icc's sake. Proposed by Hrvoje Niksic.
193 2009-01-13 Matthias Clasen <mclasen@redhat.com>
195 Bug 564728 Add function to decode base64 encoded data in place
198 * glib/gbase64.[hc] (g_base64_decode_inplace): New convenience
199 API to decode in place, overwriting the input string. Patch by
202 2009-01-12 Matthias Clasen <mclasen@redhat.com>
204 * glib/gtestutils.c (g_strcmp0): Be more explicit about the NULL
205 handling in the docs.
207 2009-01-12 Tor Lillqvist <tml@novell.com>
209 * glib/goption.c (parse_arg): Guard against a mis-written
210 GOptionArgFunc that has returned FALSE but not set the GError.
212 2009-01-10 Matthias Clasen <mclasen@redhat.com>
214 Bug 566573 – g_match_info_fetch_pos docs
216 * glib/gregex.c: Mention that positions are in bytes.
217 Proposed by Christian Persch.
219 2009-01-10 Matthias Clasen <mclasen@redhat.com>
221 Bug 566569 – gregex docs clarification
223 * glib/gregex.c: Copy the warning about @string to all
224 relevant docs. Proposed by Christian Persch
226 2009-01-09 Tor Lillqvist <tml@iki.fi>
228 Bug 567138 - get_package_directory_from_module() does not free its
231 * glib/gwin32.c (get_package_directory_from_module): Obvious fix.
233 2009-01-05 Matthias Clasen <mclasen@redhat.com>
235 * configure.in: Bump version
237 2009-01-05 Matthias Clasen <mclasen@redhat.com>
239 * === Released 2.19.4 ===
243 2009-01-05 Dan Winship <danw@gnome.org>
245 * glib/tests/.gitignore: update
247 * tests/.gitignore: update, sort
249 * tests/gobject/.gitignore: add
251 2009-01-05 Tor Lillqvist <tml@iki.fi>
253 Bug 566348 - g_file_open_tmp uses the wrong g_mkstemp on win32
255 * glib/gfileutils.c: Move the binary compatibility versions of
256 g_file_test(), g_file_get_contents(), g_mkstemp() and
257 g_file_open_tmp() last in the file. Remove the restriction that
258 the XXXXXX is last in the template in the binary compatibility
259 version of g_mkstemp(). Thanks to Morten Welinder and Jody
262 2009-01-03 Matthias Clasen <mclasen@redhat.com>
266 2009-01-02 Matthias Clasen <mclasen@redhat.com>
268 * glib/gregex.c: Add an example to the g_regex_replace_eval() docs.
270 2009-01-02 Matthias Clasen <mclasen@redhat.com>
272 * glib/gstrfuncs.c: Move docs inline, adding references to g_free()
275 2009-01-02 Matthias Clasen <mclasen@redhat.com>
277 Bug 564210 – SUN Studio 12 has supported visibility attribute
279 * configure.in: Use visibility attribute for new enough sun cc.
282 2008-12-30 Matthias Clasen <mclasen@redhat.com>
284 Bug 565905 – There is no named g_context_group_set_translation_domain()
285 in GOption command line parser
287 * glib/goption.c: Fix a wrong reference in the docs, reported by
290 2008-12-30 Matthias Clasen <mclasen@redhat.com>
300 * glib/gbookmarkfile.c:
301 * glib/gbacktrace.c: Fix some compiler warnings.
303 2008-12-19 Tor Lillqvist <tml@novell.com>
305 * glib/glib.symbols: Add g_thread_get_initialized here,
306 too. Surround g_test_config_vars with ifdef INCLUDE_VARIABLES.
308 2008-12-18 Mike Kestner <mkestner@novell.com>
310 Bug 560676 - function access for g_threads_supported
312 * glib/gthreads.c (g_thread_get_initialized): new accessor for
313 g_threads_supported macro.
314 * glib/gthreads.h: add g_thread_get_initialized
316 2008-12-15 Matthias Clasen <mclasen@redhat.com>
318 * configure.in: Bump version
320 * === Released 2.19.3 ===
322 2008-12-13 Matthias Clasen <mclasen@redhat.com>
326 2008-12-12 Dan Winship <danw@gnome.org>
328 * glib/pltcheck.sh: make this work on x86_64
330 2008-12-12 Behdad Esfahbod <behdad@gnome.org>
332 * glib/guniprop.c: Improve g_unichar_iswide_cjk() docs.
334 2008-12-07 Matthias Clasen <mclasen@redhat.com>
336 Bug 508021 – Add support for the CRIS and CRISv32 architectures
339 * glib/gatomic.c: Add an implementation for the CRIS and CRISv32
340 architectures, by Peter Kjellerstedt
342 2008-12-02 Matthias Clasen <mclasen@redhat.com>
344 * glib/gkeyfile.c: Some more documentation additions.
346 2008-12-01 Matthias Clasen <mclasen@redhat.com>
348 * configure.in: Bump version
350 2008-12-01 Matthias Clasen <mclasen@redhat.com>
352 * === Released 2.19.2 ===
354 2008-12-01 Matthias Clasen <mclasen@redhat.com>
356 * configure.in: Bump version
358 2008-12-01 Matthias Clasen <mclasen@redhat.com>
360 * === Released 2.19.1 ===
364 2008-11-28 Behdad Esfahbod <behdad@gnome.org>
366 Bug 562639 – g_parse_debug_flags() parsing "help"
368 * glib/gutils.c (g_parse_debug_string): Print available keys if
371 2008-11-28 Behdad Esfahbod <behdad@gnome.org>
373 Bug 562638 – GDebugKey key member should be const
375 * glib/gutils.h: Change GDebugKey key member from gchar * to
378 2008-11-28 Matthias Clasen <mclasen@redhat.com>
380 Bug 547264 – Missing "no flags" flag
382 * glib/gregex.c: Mention 0 as value for 'no flags' in some places..
383 Pointed out by Bastien Nocera
385 2008-11-28 Matthias Clasen <mclasen@redhat.com>
387 Bug 562544 – g_key_file_get_string and g_key_file_get_value
388 documentation does not explain the difference
390 * glib/gkeyfile.c (g_key_file_get_string): Explain the difference
391 to g_key_file_get_value(). Pointed out by Mart Raudsepp.
393 2008-11-28 Matthias Clasen <mclasen@redhat.com>
395 * glib/gkeyfile.c: Refer to @locale parameters as locale identifier
398 2008-11-28 Matthias Clasen <mclasen@redhat.com>
400 Bug 557603 – carbon check output misplaced
402 * configure.in: Call AC_PROG_CPP early to avoid it messing up
403 carbon check output. Fix proposed by Christian Persch
405 2008-11-28 Matthias Clasen <mclasen@redhat.com>
407 Bug 559110 – Do not include libintl.h after glibintl.h
409 * glib/glibintl.h: Define bind_textdomain_codeset in the DISABLE_NLS
410 branch. Patch by Peter Kjellerstedt.
412 * glib/gutil.c: Don't include libintl.h directly.
414 2008-11-28 Matthias Clasen <mclasen@redhat.com>
416 Bug 562378 – callback return value not respected for callback option
419 * glib/goption.c (parse_long_option): Return the parse_arg return
420 value even for no-arg callbacks. Patch by Christian Persch
422 * glib/tests/option-context.c: Add a test for a callback which
425 2008-11-23 Christian Persch <chpe@gnome.org>
427 Bug 559413 – g_option_group_set_error_hook docs buglet
429 * glib/goption.c: Doc fix.
431 2008-11-23 Christian Persch <chpe@gnome.org>
433 Bug 560568 – gkeyfile docs buglet
435 * glib/gkeyfile.c: Clarify the docs.
437 2008-11-23 Christian Persch <chpe@gnome.org>
439 Bug 560569 – gkeyfile doesn't use the set list_separator in some cases
441 * glib/gkeyfile.c: (g_key_file_get_locale_string_list),
442 (g_key_file_set_locale_string_list), (g_key_file_set_integer_list),
443 (g_key_file_set_double_list): Use the key file's list separator character,
446 * glib/tests/keyfile.c: (test_lists), (test_reload_idempotency): Test
449 2008-11-21 Christophe Fergeau <teuf@gnome.org>
451 Bug 561212 – GFileReadMoreCallback API doc refers to non-existant function
453 * gio/giotypes.h: fix name of function referred to in
454 GFileReadMoreCallback API documentation
456 2008-11-21 Matthias Clasen <mclasen@redhat.com>
458 * configure.in: Bump gtk-doc dependency to 1.11 for
459 nicer index-generation.
461 2008-11-14 Matthias Clasen <mclasen@redhat.com>
465 2008-11-04 Christian Dywan <christian@imendio.com>
467 Bug 558672 – NULL key lookup using g_hash_table_lookup_extended()
470 Clarify g_hash_table_lookup_extended
472 2008-11-02 Tor Lillqvist <tml@novell.com>
474 * configure.in: Expand also build/win32/vs9/Makefile.
476 2008-10-31 Christian Dywan <christian@imendio.com>
478 Bug 558513 – g_warn_if_fail FIXME in gtestutils
480 * glib/gtestutils.c (g_test_log_send):
481 Turn g_assert into g_warn_if_fail as advised
483 2008-10-31 Grahame Bowland <grahame@angrygoats.net>
485 Bug 558185 – 'parent' variable in g_local_file_get_child_for_display_name()
486 hits g_object_unref(NULL) assertion
489 - remove unused variable. Patch by Matt Johnston <matt@ucc.asn.au>
491 2008-10-29 16:11:14 Tim Janik <timj@gtk.org>
493 * glib/gmacros.h: added G_PASTE() and G_STATIC_ASSERT(), based on
494 patches by Christian Persch and Christian Dywan. Fixes:
495 Bug 558381 - Add support for compile time assertions
497 2008-10-27 Joseph Pingenot <gnomesvn@digitasaru.net>
499 * glib/ghash.c: changed "#GHashTableIterator" to "#GHashTableIter"
500 in the documentation-comments above g_hash_table_foreach_remove()
501 and g_hash_table_foreach_steal() to correctly name and link to
502 GHashTableIter. This affects the GNOME documentation website
503 as well, so further steps are likely necessary beyond this subproject..
505 2008-10-23 Matthias Clasen <mclasen@redhat.com>
507 Bug 557210 – g_compute_checksum_for_* asserts with less than 2 bytes
509 * glib/gchecksum.c (g_compute_checksum_for_data): Accept
510 lengths < 2. Patch by Tommi Komulainen
512 * tests/checksum-test.c: Add a test for this
514 2008-10-23 Matthias Clasen <mclasen@redhat.com>
516 Bug 556921 – gpoll.h breaks hal compilation
518 * glib/gpoll.h: Include gtypes.h. Pointed out by Anis Elleuch
520 2008-10-20 Christian Persch <chpe@gnome.org>
522 Bug 557087 – mem leak in g_content_types_get_registered
524 * gio/gcontenttype.c: Plug a mem leak.
526 2008-10-19 Michael Natterer <mitch@imendio.com>
528 Bug 556186 – gpoll.h breaks gmain.h inclusion
530 * glib/gpoll.h: different fix: disallow direct inclusion
531 unconditionally again but make an exception if included from
532 gmain.h to maintain compatibility.
534 2008-10-16 Matthias Clasen <mclasen@redhat.com>
536 * configure.in: Bump version to 2.19.1
538 * === Released 2.19.0 ===
542 2008-10-14 Christian Persch <chpe@gnome.org>
544 Bug 556186 – gpoll.h breaks gmain.h inclusion
546 * glib/gpoll.h: Only disallow direct inclusion when
547 G_DISABLE_SINGLE_INCLUDES is defined.
549 2008-10-13 Sven Herzberg <sven@imendio.com>
551 Bug 556101 – static mutex yields warnings with g++
552 Reviewed by Tim Janik
554 * configure.in: added an intermediate cast to gpointer
556 2008-10-13 Christian Persch <chpe@gnome.org>
558 Bug 555311 – format not a string literal and no format arguments
561 * glib/gshell.c: Use literal errors where appropriate.
563 2008-10-10 Behdad Esfahbod <behdad@gnome.org>
565 Bug 551355 – [PATCH] Make glib build with libtool 2.2
567 * autogen.sh: Accept libtool 2.2. We are moving towards having
570 2008-10-10 Behdad Esfahbod <behdad@gnome.org>
572 * configure.in: With libtool 2.x, regenerate libtool early.
573 Based on bug 552107, patch by Patryk Zawadzki
575 2008-10-10 Matthias Clasen <mclasen@redhat.com>
577 Bug 554557 – Patch to fix gcc warnings about missing format
582 * glib/grel.c: Fix gcc warnings. Patch by Kjartan Maraas
584 2008-10-10 Matthias Clasen <mclasen@redhat.com>
586 Bug 552861 – glib-2.0.m4 calls system(3) without storing its result
588 * m4macros/glib-2.0.m4: Cosmetic change to make -Werror happy.
589 Patch by Andreas Köhler
591 2008-10-08 Christian Persch <chpe@gnome.org>
593 Bug 555313 – GFileAttribute boxed type get_type function should
594 use usual get_type pattern
596 * gio/gfileattribute.c (g_file_attribute_info_list_get_type): Use
597 g_once_init_enter/leave.
599 2008-10-08 Christian Persch <chpe@gnome.org>
601 Bug 555314 – mem leak in gmarkup
603 * glib/gmarkup.c: (g_markup_parse_context_parse): Plug a mem leak.
605 2008-10-08 Tor Lillqvist <tml@novell.com>
607 Bug 554790 - g_convert() misbehaves with winiconv versions
609 * glib/win_iconv.c (kernel_mbtowc): If converting from ASCII,
610 explicitly check for and reject 8bit chars. MultiByteToWideChar()
611 doesn't, at least not on XP.
613 2008-10-06 Matthias Clasen <mclasen@redhat.com>
615 * glib/gtypes.h: Properly include gmacros.h
617 2008-10-06 Behdad Esfahbod <behdad@gnome.org>
619 Bug 555309 – giochannel breaks on error
620 Patch from Christian Persch
622 * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
623 (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags):
624 Don't shadow err. Oops!
626 2008-10-06 Christophe Fergeau <teuf@gnome.org>
628 Bug 555224 – Improve g_format_size_for_display doc
630 * glib/gfileutils.c: change g_format_size_for_display API doc to
631 explicitly say that the returned string has to be freed. Change
632 spelling of "newly allocated" to "newly-allocated" in g_file_read_link
633 API doc to be more consistent with what is done in that file.
635 2008-10-01 David Zeuthen <davidz@redhat.com>
637 * README.in: Add "Notes about glib 2.20" section detailing the
638 ramifications of the patch from bug #528670.
640 2008-09-30 Behdad Esfahbod <behdad@gnome.org>
642 Bug 554092 – glib doesn't return G_FILE_ERROR_NOENT et al on OS X
644 * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
645 (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags),
646 (g_io_unix_get_flags), (g_io_channel_new_file):
647 Like mclasen says: "well, thats the way errno works...,
648 save it or loose it". Save errno.
650 2008-09-30 Tor Lillqvist <tml@novell.com>
653 * glib/tests/Makefile.am: Bypass gtester related stuff on Windows.
655 2008-09-30 Tor Lillqvist <tml@novell.com>
658 * glib/gnulib/vasnprintf.c: Don't define _GNU_SOURCE on Windows,
659 as _GNU_SOURCE has unintended side effects when compiling against
660 newest mingw headers.
662 2008-09-26 Dan Winship <danw@gnome.org>
664 Bug 553447 – g_assert_no_error()
666 * glib/gtestutils.h (g_assert_no_error, g_assert_error): Macros to
667 assert that a GError is not set, or else is set to a particular
670 * glib/gtestutils.c (g_assertion_message_error): utility for
673 * glib/tests/keyfile.c:
674 * tests/asyncqueue-test.c:
675 * tests/bookmarkfile-test.c:
676 * tests/convert-test.c:
677 * tests/file-test.c: Use g_assert_error/g_assert_no_error
679 2008-09-26 Dan Winship <danw@gnome.org>
681 * glib/gthreadpool.c (wakeup_thread_marker): make this a "const
682 gpointer" rather than a gconstpointer to avoid warnings later
684 * glib/pcre/pcre_ucp_searchfuncs.c:
685 * glib/pcre/pcre_valid_utf8.c: #include "config.h"
687 * glib/tests/printf.c (test_d): fool gcc into not warning about
688 some printf format strings that we know are dubious
690 2008-09-26 Matthias Clasen <mclasen@redhat.com>
692 Bug 553857 – gbacktrace.h requires signal.h
694 * glib/gbacktrace.h: Include signal.h for raise().
695 Pointed out by Sebastien Bacher
697 2008-09-26 Matthias Clasen <mclasen@redhat.com>
699 Bug 553724 – python interpretter path not patched in correctly
701 * glib/Makefile.am: Fix the sed magic to replace python.
703 2008-09-26 Matthias Clasen <mclasen@redhat.com>
705 * glib/gmain.c: Add some more docs.
707 * glib/giochannel.c: Move more docs inline, and improve them
710 2008-09-25 Tor Lillqvist <tml@novell.com>
712 Bug 553820 - gpoll.c: undeclared identifier
715 * glib/gpoll.c: Make the g_poll() function non-static also on
716 Windows. Prefix an underscore to the g_main_poll_debug variable
717 and make it non-static in gmain.c so that it can be used in
718 gpoll.c. Add back missing variable declaration.
720 2008-09-25 Tor Lillqvist <tml@novell.com>
722 * glib/gspawn-win32.c (do_spawn_with_pipes) (do_spawn_directly):
723 Just ignore the child_setup function, never call it. The is no
724 situation in which it could be useful on Windows. Do print a
725 warning, like before.
727 * glib/gspawn.c (g_spawn_async_with_pipes): Corresponding change
730 2008-09-24 Sven Herzberg <sven@imendio.com>
732 Be a little more explcit in the docs. Includes Owen's requested
735 * glib/gmain.c: improved documentation for g_source_attach() and
738 2008-09-23 Michael Natterer <mitch@imendio.com>
740 * glib/glib.h: #include <glib/gpoll.h>
742 * glib/gpoll.h: #error out if gpoll.h is included directly.
744 * glib/gpoll.c: remove trailing whitespace.
746 2008-09-23 Dan Winship <danw@gnome.org>
748 * glib/gpoll.[ch] (g_poll): Move this out of gmain.c and make it part
749 of the public API. (Part of Bug 505361 - gunixinputstream.c assumes
752 2008-09-23 Tor Lillqvist <tml@novell.com>
754 * glib/gmain.c (poll_rest) [Win32]: Fix embarrassing bug: I was
755 passing an incorrect third parameter to memmove(), had forgotten
756 to multiply by the size of the table entry. Just use a for loop
757 instead, clearer. Odd I didn't notice when testing this code.
759 2008-09-19 Hans Petter Jansson <hpj@novell.com>
761 Rewrite most of GHashTable to use open addressing with quadratic
762 probing instead of chaining. This has the potential to reduce memory
763 fragmentation significantly, while being slightly faster due to
764 better locality and no need to call alloc/free functions for nodes.
765 Benchmarks suggest it also uses less memory overall.
767 * glib/ghash.c (prime_mod): Table of suitable primes for
768 initial-probe distribution.
769 (g_hash_table_set_shift): New function.
770 (g_hash_table_find_closest_shift): New function.
771 (g_hash_table_set_shift_from_size): New function.
772 (g_hash_table_lookup_node_for_insertion): New function.
773 (g_hash_table_lookup_node): Rewritten to return node index instead of
774 pointer, use quadratic probe on flat table, and not return insertion
775 data. The latter saves some computation for read-only lookups.
776 (g_hash_table_remove_node): Rewrite to take a pointer directly to the
777 node structure to remove, and clear that. Remove unlinking code.
778 (g_hash_table_remove_all_nodes): Rewrite to not clear nodes
779 individually, but en masse using memset () after potentially calling
781 (iter_remove_or_steal): Use new data structure and algorithm. Vastly
782 simplified - now just a call to g_hash_table_remove_node ().
783 (g_hash_table_resize): New resize code, re-indexing with new prime
784 and cleaning up tombstones.
785 (g_hash_table_maybe_resize): Table may hold 8 buckets minimum, no less
786 than 1/4 load excluding tombstones, and no more than 15/16 load
787 including tombstones. These numbers are the results of a lot of
788 benchmarking with multiple complex applications, and should not be
790 (g_hash_table_iter_next)
791 (g_hash_table_lookup)
792 (g_hash_table_lookup_extended)
793 (g_hash_table_insert_internal)
794 (g_hash_table_remove_internal)
795 (g_hash_table_foreach_remove_or_steal)
796 (g_hash_table_foreach)
798 (g_hash_table_get_keys)
799 (g_hash_table_get_values): Use new data structure and algorithm,
800 fairly trivial changes.
802 2008-09-19 Tor Lillqvist <tml@novell.com>
804 * glib-zip.in: Look for man pages in share/man.
806 * glib/gutils.c (_glib_get_dll_directory)
807 * glib/gspawn-win32.c (do_spawn_with_pipes): Be a bit less
808 restrictive, look for the helper programs in the same folder where
809 the GLib DLL is, not necessarily in a "bin" subfolder of the top
810 GLib installation folder.
812 2008-09-18 Matthias Clasen <mclasen@redhat.com>
814 * configure.in: Bump version to 2.19.0
816 * ChangeLog.pre-2-18: rotate ChangeLog
818 * === branch for 2.18 ===