1 2008-11-21 Matthias Clasen <mclasen@redhat.com>
3 * configure.in: Bump gtk-doc dependency to 1.11 for
4 nicer index-generation.
6 2008-11-14 Matthias Clasen <mclasen@redhat.com>
10 2008-11-04 Christian Dywan <christian@imendio.com>
12 Bug 558672 – NULL key lookup using g_hash_table_lookup_extended()
15 Clarify g_hash_table_lookup_extended
17 2008-11-02 Tor Lillqvist <tml@novell.com>
19 * configure.in: Expand also build/win32/vs9/Makefile.
21 2008-10-31 Christian Dywan <christian@imendio.com>
23 Bug 558513 – g_warn_if_fail FIXME in gtestutils
25 * glib/gtestutils.c (g_test_log_send):
26 Turn g_assert into g_warn_if_fail as advised
28 2008-10-31 Grahame Bowland <grahame@angrygoats.net>
30 Bug 558185 – 'parent' variable in g_local_file_get_child_for_display_name()
31 hits g_object_unref(NULL) assertion
34 - remove unused variable. Patch by Matt Johnston <matt@ucc.asn.au>
36 2008-10-29 16:11:14 Tim Janik <timj@gtk.org>
38 * glib/gmacros.h: added G_PASTE() and G_STATIC_ASSERT(), based on
39 patches by Christian Persch and Christian Dywan. Fixes:
40 Bug 558381 - Add support for compile time assertions
42 2008-10-27 Joseph Pingenot <gnomesvn@digitasaru.net>
44 * glib/ghash.c: changed "#GHashTableIterator" to "#GHashTableIter"
45 in the documentation-comments above g_hash_table_foreach_remove()
46 and g_hash_table_foreach_steal() to correctly name and link to
47 GHashTableIter. This affects the GNOME documentation website
48 as well, so further steps are likely necessary beyond this subproject..
50 2008-10-23 Matthias Clasen <mclasen@redhat.com>
52 Bug 557210 – g_compute_checksum_for_* asserts with less than 2 bytes
54 * glib/gchecksum.c (g_compute_checksum_for_data): Accept
55 lengths < 2. Patch by Tommi Komulainen
57 * tests/checksum-test.c: Add a test for this
59 2008-10-23 Matthias Clasen <mclasen@redhat.com>
61 Bug 556921 – gpoll.h breaks hal compilation
63 * glib/gpoll.h: Include gtypes.h. Pointed out by Anis Elleuch
65 2008-10-20 Christian Persch <chpe@gnome.org>
67 Bug 557087 – mem leak in g_content_types_get_registered
69 * gio/gcontenttype.c: Plug a mem leak.
71 2008-10-19 Michael Natterer <mitch@imendio.com>
73 Bug 556186 – gpoll.h breaks gmain.h inclusion
75 * glib/gpoll.h: different fix: disallow direct inclusion
76 unconditionally again but make an exception if included from
77 gmain.h to maintain compatibility.
79 2008-10-16 Matthias Clasen <mclasen@redhat.com>
81 * configure.in: Bump version to 2.19.1
83 * === Released 2.19.0 ===
87 2008-10-14 Christian Persch <chpe@gnome.org>
89 Bug 556186 – gpoll.h breaks gmain.h inclusion
91 * glib/gpoll.h: Only disallow direct inclusion when
92 G_DISABLE_SINGLE_INCLUDES is defined.
94 2008-10-13 Sven Herzberg <sven@imendio.com>
96 Bug 556101 – static mutex yields warnings with g++
99 * configure.in: added an intermediate cast to gpointer
101 2008-10-13 Christian Persch <chpe@gnome.org>
103 Bug 555311 – format not a string literal and no format arguments
106 * glib/gshell.c: Use literal errors where appropriate.
108 2008-10-10 Behdad Esfahbod <behdad@gnome.org>
110 Bug 551355 – [PATCH] Make glib build with libtool 2.2
112 * autogen.sh: Accept libtool 2.2. We are moving towards having
115 2008-10-10 Behdad Esfahbod <behdad@gnome.org>
117 * configure.in: With libtool 2.x, regenerate libtool early.
118 Based on bug 552107, patch by Patryk Zawadzki
120 2008-10-10 Matthias Clasen <mclasen@redhat.com>
122 Bug 554557 – Patch to fix gcc warnings about missing format
127 * glib/grel.c: Fix gcc warnings. Patch by Kjartan Maraas
129 2008-10-10 Matthias Clasen <mclasen@redhat.com>
131 Bug 552861 – glib-2.0.m4 calls system(3) without storing its result
133 * m4macros/glib-2.0.m4: Cosmetic change to make -Werror happy.
134 Patch by Andreas Köhler
136 2008-10-08 Christian Persch <chpe@gnome.org>
138 Bug 555313 – GFileAttribute boxed type get_type function should
139 use usual get_type pattern
141 * gio/gfileattribute.c (g_file_attribute_info_list_get_type): Use
142 g_once_init_enter/leave.
144 2008-10-08 Christian Persch <chpe@gnome.org>
146 Bug 555314 – mem leak in gmarkup
148 * glib/gmarkup.c: (g_markup_parse_context_parse): Plug a mem leak.
150 2008-10-08 Tor Lillqvist <tml@novell.com>
152 Bug 554790 - g_convert() misbehaves with winiconv versions
154 * glib/win_iconv.c (kernel_mbtowc): If converting from ASCII,
155 explicitly check for and reject 8bit chars. MultiByteToWideChar()
156 doesn't, at least not on XP.
158 2008-10-06 Matthias Clasen <mclasen@redhat.com>
160 * glib/gtypes.h: Properly include gmacros.h
162 2008-10-06 Behdad Esfahbod <behdad@gnome.org>
164 Bug 555309 – giochannel breaks on error
165 Patch from Christian Persch
167 * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
168 (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags):
169 Don't shadow err. Oops!
171 2008-10-06 Christophe Fergeau <teuf@gnome.org>
173 Bug 555224 – Improve g_format_size_for_display doc
175 * glib/gfileutils.c: change g_format_size_for_display API doc to
176 explicitly say that the returned string has to be freed. Change
177 spelling of "newly allocated" to "newly-allocated" in g_file_read_link
178 API doc to be more consistent with what is done in that file.
180 2008-10-01 David Zeuthen <davidz@redhat.com>
182 * README.in: Add "Notes about glib 2.20" section detailing the
183 ramifications of the patch from bug #528670.
185 2008-09-30 Behdad Esfahbod <behdad@gnome.org>
187 Bug 554092 – glib doesn't return G_FILE_ERROR_NOENT et al on OS X
189 * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
190 (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags),
191 (g_io_unix_get_flags), (g_io_channel_new_file):
192 Like mclasen says: "well, thats the way errno works...,
193 save it or loose it". Save errno.
195 2008-09-30 Tor Lillqvist <tml@novell.com>
198 * glib/tests/Makefile.am: Bypass gtester related stuff on Windows.
200 2008-09-30 Tor Lillqvist <tml@novell.com>
203 * glib/gnulib/vasnprintf.c: Don't define _GNU_SOURCE on Windows,
204 as _GNU_SOURCE has unintended side effects when compiling against
205 newest mingw headers.
207 2008-09-26 Dan Winship <danw@gnome.org>
209 Bug 553447 – g_assert_no_error()
211 * glib/gtestutils.h (g_assert_no_error, g_assert_error): Macros to
212 assert that a GError is not set, or else is set to a particular
215 * glib/gtestutils.c (g_assertion_message_error): utility for
218 * glib/tests/keyfile.c:
219 * tests/asyncqueue-test.c:
220 * tests/bookmarkfile-test.c:
221 * tests/convert-test.c:
222 * tests/file-test.c: Use g_assert_error/g_assert_no_error
224 2008-09-26 Dan Winship <danw@gnome.org>
226 * glib/gthreadpool.c (wakeup_thread_marker): make this a "const
227 gpointer" rather than a gconstpointer to avoid warnings later
229 * glib/pcre/pcre_ucp_searchfuncs.c:
230 * glib/pcre/pcre_valid_utf8.c: #include "config.h"
232 * glib/tests/printf.c (test_d): fool gcc into not warning about
233 some printf format strings that we know are dubious
235 2008-09-26 Matthias Clasen <mclasen@redhat.com>
237 Bug 553857 – gbacktrace.h requires signal.h
239 * glib/gbacktrace.h: Include signal.h for raise().
240 Pointed out by Sebastien Bacher
242 2008-09-26 Matthias Clasen <mclasen@redhat.com>
244 Bug 553724 – python interpretter path not patched in correctly
246 * glib/Makefile.am: Fix the sed magic to replace python.
248 2008-09-26 Matthias Clasen <mclasen@redhat.com>
250 * glib/gmain.c: Add some more docs.
252 * glib/giochannel.c: Move more docs inline, and improve them
255 2008-09-25 Tor Lillqvist <tml@novell.com>
257 Bug 553820 - gpoll.c: undeclared identifier
260 * glib/gpoll.c: Make the g_poll() function non-static also on
261 Windows. Prefix an underscore to the g_main_poll_debug variable
262 and make it non-static in gmain.c so that it can be used in
263 gpoll.c. Add back missing variable declaration.
265 2008-09-25 Tor Lillqvist <tml@novell.com>
267 * glib/gspawn-win32.c (do_spawn_with_pipes) (do_spawn_directly):
268 Just ignore the child_setup function, never call it. The is no
269 situation in which it could be useful on Windows. Do print a
270 warning, like before.
272 * glib/gspawn.c (g_spawn_async_with_pipes): Corresponding change
275 2008-09-24 Sven Herzberg <sven@imendio.com>
277 Be a little more explcit in the docs. Includes Owen's requested
280 * glib/gmain.c: improved documentation for g_source_attach() and
283 2008-09-23 Michael Natterer <mitch@imendio.com>
285 * glib/glib.h: #include <glib/gpoll.h>
287 * glib/gpoll.h: #error out if gpoll.h is included directly.
289 * glib/gpoll.c: remove trailing whitespace.
291 2008-09-23 Dan Winship <danw@gnome.org>
293 * glib/gpoll.[ch] (g_poll): Move this out of gmain.c and make it part
294 of the public API. (Part of Bug 505361 - gunixinputstream.c assumes
297 2008-09-23 Tor Lillqvist <tml@novell.com>
299 * glib/gmain.c (poll_rest) [Win32]: Fix embarrassing bug: I was
300 passing an incorrect third parameter to memmove(), had forgotten
301 to multiply by the size of the table entry. Just use a for loop
302 instead, clearer. Odd I didn't notice when testing this code.
304 2008-09-19 Hans Petter Jansson <hpj@novell.com>
306 Rewrite most of GHashTable to use open addressing with quadratic
307 probing instead of chaining. This has the potential to reduce memory
308 fragmentation significantly, while being slightly faster due to
309 better locality and no need to call alloc/free functions for nodes.
310 Benchmarks suggest it also uses less memory overall.
312 * glib/ghash.c (prime_mod): Table of suitable primes for
313 initial-probe distribution.
314 (g_hash_table_set_shift): New function.
315 (g_hash_table_find_closest_shift): New function.
316 (g_hash_table_set_shift_from_size): New function.
317 (g_hash_table_lookup_node_for_insertion): New function.
318 (g_hash_table_lookup_node): Rewritten to return node index instead of
319 pointer, use quadratic probe on flat table, and not return insertion
320 data. The latter saves some computation for read-only lookups.
321 (g_hash_table_remove_node): Rewrite to take a pointer directly to the
322 node structure to remove, and clear that. Remove unlinking code.
323 (g_hash_table_remove_all_nodes): Rewrite to not clear nodes
324 individually, but en masse using memset () after potentially calling
326 (iter_remove_or_steal): Use new data structure and algorithm. Vastly
327 simplified - now just a call to g_hash_table_remove_node ().
328 (g_hash_table_resize): New resize code, re-indexing with new prime
329 and cleaning up tombstones.
330 (g_hash_table_maybe_resize): Table may hold 8 buckets minimum, no less
331 than 1/4 load excluding tombstones, and no more than 15/16 load
332 including tombstones. These numbers are the results of a lot of
333 benchmarking with multiple complex applications, and should not be
335 (g_hash_table_iter_next)
336 (g_hash_table_lookup)
337 (g_hash_table_lookup_extended)
338 (g_hash_table_insert_internal)
339 (g_hash_table_remove_internal)
340 (g_hash_table_foreach_remove_or_steal)
341 (g_hash_table_foreach)
343 (g_hash_table_get_keys)
344 (g_hash_table_get_values): Use new data structure and algorithm,
345 fairly trivial changes.
347 2008-09-19 Tor Lillqvist <tml@novell.com>
349 * glib-zip.in: Look for man pages in share/man.
351 * glib/gutils.c (_glib_get_dll_directory)
352 * glib/gspawn-win32.c (do_spawn_with_pipes): Be a bit less
353 restrictive, look for the helper programs in the same folder where
354 the GLib DLL is, not necessarily in a "bin" subfolder of the top
355 GLib installation folder.
357 2008-09-18 Matthias Clasen <mclasen@redhat.com>
359 * configure.in: Bump version to 2.19.0
361 * ChangeLog.pre-2-18: rotate ChangeLog
363 * === branch for 2.18 ===