Dutch translation updated by Wouter Bolsterlee.
[platform/upstream/glib.git] / ChangeLog
1 2009-02-02  Matthias Clasen  <mclasen@redhat.com>
2
3         * configure.in: Bump version
4
5 2009-02-02  Matthias Clasen  <mclasen@redhat.com>
6
7         * === Released 2.19.6 ===
8
9 2009-02-02  Matthias Clasen  <mclasen@redhat.com>
10
11         * configure.in: Bump version
12
13 2009-01-31  Matthias Clasen  <mclasen@redhat.com>
14
15         * NEWS: Updates
16
17 2009-01-31  Matthias Clasen  <mclasen@redhat.com>
18
19         Bug 569105 – g_time_val_to_iso8601() assumes time_t==long
20
21         * glib/gtimer.c (g_time_val_to_iso8601): Pass a time_t* to gmtime().
22         Pointed out by Matthias Drochner.
23
24 2009-01-27  Christian Persch  <chpe@gnome.org>
25
26         * configure.in:
27         * docs/reference/glib/glib-sections.txt:
28         * docs/reference/macros_misc.sgml:
29         * docs/reference/glib/tmpl/types.sgml: Add
30         G_GOFFSET_FORMAT and friends. Bug #563141.
31
32 2009-01-23  Stefan Kost  <ensonic@users.sf.net>
33
34         * docs/reference/glib/Makefile.am:
35           Add SCAN_OPTIONS=--ignore-decorators="GLIB_VAR" to Makefile.am to fix
36           on problem with the doc build.
37
38 2009-01-21  Tor Lillqvist  <tml@novell.com>
39
40         * glib/gwin32.c (g_win32_locale_filename_from_utf8): Drop the code
41         in the else branch of #if GLIB_CHECK_VERSION (2, 19, 0). Drop
42         unused variables.
43
44 2009-01-20  Matthias Clasen  <mclasen@redhat.com>
45
46         Bug 568294 – A wrong reference in the description of 
47         g_bookmark_file_add_application()
48
49         * glib/gbookmarkfile.c (g_bookmark_file_add_application):
50         Fix a typo in the docs. Pointed out by Takeshi Aihana
51
52 2009-01-19  Matthias Clasen  <mclasen@redhat.com>
53
54         * === Released 2.19.5 ===
55
56 2009-01-18  Matthias Clasen  <mclasen@redhat.com>
57
58         * glib/gstrfuncs.c (g_strdup_printf): Fix a doc typo.
59
60 2009-01-18  Matthias Clasen  <mclasen@redhat.com>
61
62         * NEWS: Updates
63
64 2009-01-18  Matthias Clasen  <mclasen@redhat.com>
65
66         Bug 512779 – --disable-regex breaks compilation
67         
68         * configure.in: Define an ENABLE_REGEX macro
69
70         * gobject/gboxed.c: Don't refer to g_regex_ref if ENABLE_REGEX
71         is not defined.
72
73 2009-01-18  Matthias Clasen  <mclasen@redhat.com>
74
75         * glib/gbsearcharray.h: Quell some compiler warnings.
76
77 2009-01-18  Matthias Clasen  <mclasen@redhat.com>
78
79         * glib/pcre: Update to PCRE 7.8
80
81 2009-01-17  Matthias Clasen  <mclasen@redhat.com>
82
83         Bug 567977 – textdomain() macro should not return NULL when 
84         ENABLE_NLS is not set
85
86         * glib/glibintl.h: If !ENABLE_NLS, make textomain() macro 
87         return "messages" in case of a NULL argument. Patch by
88         Peter Kjellerstedt.
89
90 2009-01-17  Matthias Clasen  <mclasen@redhat.com>
91
92         Bug 567838 – G_STRUCT_OFFSETOF fails to compile under icc 9.1
93
94         * glib/gmacros.h (G_STRUCT_OFFSETOF): Use offsetof instead of 
95         __builtin_offsetof, for icc's sake. Proposed by Hrvoje Niksic.
96
97 2009-01-13  Matthias Clasen  <mclasen@redhat.com>
98
99         Bug 564728 Add function to decode base64 encoded data in place
100
101         * glib/glib.symbols:
102         * glib/gbase64.[hc] (g_base64_decode_inplace): New convenience
103         API to decode in place, overwriting the input string. Patch by
104         Sebastian Dröge.
105
106 2009-01-12  Matthias Clasen  <mclasen@redhat.com>
107         
108         * glib/gtestutils.c (g_strcmp0): Be more explicit about the NULL
109         handling in the docs.
110
111 2009-01-12  Tor Lillqvist  <tml@novell.com>
112
113         * glib/goption.c (parse_arg): Guard against a mis-written
114         GOptionArgFunc that has returned FALSE but not set the GError.
115
116 2009-01-10  Matthias Clasen  <mclasen@redhat.com>
117
118         Bug 566573 – g_match_info_fetch_pos docs
119
120         * glib/gregex.c: Mention that positions are in bytes. 
121         Proposed by Christian Persch.
122
123 2009-01-10  Matthias Clasen  <mclasen@redhat.com>
124
125         Bug 566569 – gregex docs clarification
126
127         * glib/gregex.c: Copy the warning about @string to all
128         relevant docs. Proposed by Christian Persch
129
130 2009-01-09  Tor Lillqvist  <tml@iki.fi>
131
132         Bug 567138 - get_package_directory_from_module() does not free its
133         lock when failing
134
135         * glib/gwin32.c (get_package_directory_from_module): Obvious fix.
136
137 2009-01-05  Matthias Clasen  <mclasen@redhat.com>
138
139         * configure.in: Bump version
140
141 2009-01-05  Matthias Clasen  <mclasen@redhat.com>
142
143         * === Released 2.19.4 ===
144
145         * NEWS: Updates
146
147 2009-01-05  Dan Winship  <danw@gnome.org>
148
149         * glib/tests/.gitignore: update
150
151         * tests/.gitignore: update, sort
152
153         * tests/gobject/.gitignore: add
154
155 2009-01-05  Tor Lillqvist  <tml@iki.fi>
156
157         Bug 566348 - g_file_open_tmp uses the wrong g_mkstemp on win32
158
159         * glib/gfileutils.c: Move the binary compatibility versions of
160         g_file_test(), g_file_get_contents(), g_mkstemp() and
161         g_file_open_tmp() last in the file. Remove the restriction that
162         the XXXXXX is last in the template in the binary compatibility
163         version of g_mkstemp(). Thanks to Morten Welinder and Jody
164         Goldberg.
165
166 2009-01-03  Matthias Clasen  <mclasen@redhat.com>
167
168         * NEWS: Updates
169
170 2009-01-02  Matthias Clasen  <mclasen@redhat.com>
171
172         * glib/gregex.c: Add an example to the g_regex_replace_eval() docs.
173
174 2009-01-02  Matthias Clasen  <mclasen@redhat.com>
175
176         * glib/gstrfuncs.c: Move docs inline, adding references to g_free()
177         where appropriate.
178
179 2009-01-02  Matthias Clasen  <mclasen@redhat.com>
180
181         Bug 564210 – SUN Studio 12 has supported visibility attribute
182
183         * configure.in: Use visibility attribute for new enough sun cc.
184         Patch by Chris Wang
185
186 2008-12-30  Matthias Clasen  <mclasen@redhat.com>
187
188         Bug 565905 – There is no named g_context_group_set_translation_domain()
189         in GOption command line parser
190
191         * glib/goption.c: Fix a wrong reference in the docs, reported by
192         Takeshi Aihana.
193
194 2008-12-30  Matthias Clasen  <mclasen@redhat.com>
195
196         * glib/gspawn.c:
197         * glib/gthread.c:
198         * glib/goption.c:
199         * glib/gmain.c:
200         * glib/gkeyfile.c:
201         * glib/gfileutils.c:
202         * glib/gdate.c:
203         * glib/garray.c:
204         * glib/gbookmarkfile.c:
205         * glib/gbacktrace.c: Fix some compiler warnings.
206
207 2008-12-19  Tor Lillqvist  <tml@novell.com>
208
209         * glib/glib.symbols: Add g_thread_get_initialized here,
210         too. Surround g_test_config_vars with ifdef INCLUDE_VARIABLES.
211
212 2008-12-18  Mike Kestner <mkestner@novell.com>
213
214         Bug 560676 - function access for g_threads_supported
215
216         * glib/gthreads.c (g_thread_get_initialized): new accessor for
217         g_threads_supported macro.
218         * glib/gthreads.h: add g_thread_get_initialized
219
220 2008-12-15  Matthias Clasen <mclasen@redhat.com>
221
222         * configure.in: Bump version
223
224         * === Released 2.19.3 ===
225
226 2008-12-13  Matthias Clasen <mclasen@redhat.com>
227
228         * NEWS: Updates
229
230 2008-12-12  Dan Winship  <danw@gnome.org>
231
232         * glib/pltcheck.sh: make this work on x86_64
233
234 2008-12-12  Behdad Esfahbod  <behdad@gnome.org>
235
236         * glib/guniprop.c: Improve g_unichar_iswide_cjk() docs.
237
238 2008-12-07  Matthias Clasen  <mclasen@redhat.com>
239
240         Bug 508021 – Add support for the CRIS and CRISv32 architectures
241
242         * configure.in: 
243         * glib/gatomic.c: Add an implementation for the CRIS and CRISv32 
244         architectures, by Peter Kjellerstedt
245
246 2008-12-02  Matthias Clasen  <mclasen@redhat.com>
247
248         * glib/gkeyfile.c: Some more documentation additions.
249
250 2008-12-01  Matthias Clasen  <mclasen@redhat.com>
251
252         * configure.in: Bump version
253
254 2008-12-01  Matthias Clasen  <mclasen@redhat.com>
255
256         * === Released 2.19.2 ===
257
258 2008-12-01  Matthias Clasen  <mclasen@redhat.com>
259
260         * configure.in: Bump version
261
262 2008-12-01  Matthias Clasen  <mclasen@redhat.com>
263
264         * === Released 2.19.1 ===
265
266         * NEWS: Updates
267
268 2008-11-28  Behdad Esfahbod  <behdad@gnome.org>
269
270         Bug 562639 – g_parse_debug_flags() parsing "help"
271
272         * glib/gutils.c (g_parse_debug_string): Print available keys if
273         string is "help".
274
275 2008-11-28  Behdad Esfahbod  <behdad@gnome.org>
276
277         Bug 562638 – GDebugKey key member should be const
278
279         * glib/gutils.h: Change GDebugKey key member from gchar * to
280         const gchar *.
281
282 2008-11-28  Matthias Clasen  <mclasen@redhat.com>
283
284         Bug 547264 – Missing "no flags" flag
285
286         * glib/gregex.c: Mention 0 as value for 'no flags' in some places..
287         Pointed out by Bastien Nocera
288
289 2008-11-28  Matthias Clasen  <mclasen@redhat.com>
290
291         Bug 562544 – g_key_file_get_string and g_key_file_get_value
292         documentation does not explain the difference
293
294         * glib/gkeyfile.c (g_key_file_get_string): Explain the difference
295         to g_key_file_get_value(). Pointed out by Mart Raudsepp.
296
297 2008-11-28  Matthias Clasen  <mclasen@redhat.com>
298
299         * glib/gkeyfile.c: Refer to @locale parameters as locale identifier
300         in docs.
301
302 2008-11-28  Matthias Clasen  <mclasen@redhat.com>
303
304         Bug 557603 – carbon check output misplaced
305
306         * configure.in: Call AC_PROG_CPP early to avoid it messing up
307         carbon check output. Fix proposed by Christian Persch
308
309 2008-11-28  Matthias Clasen  <mclasen@redhat.com>
310
311         Bug 559110 – Do not include libintl.h after glibintl.h
312
313         * glib/glibintl.h: Define bind_textdomain_codeset in the DISABLE_NLS
314         branch. Patch by Peter Kjellerstedt.
315
316         * glib/gutil.c: Don't include libintl.h directly.
317
318 2008-11-28  Matthias Clasen  <mclasen@redhat.com>
319
320         Bug 562378 – callback return value not respected for callback option
321         with no arg
322
323         * glib/goption.c (parse_long_option): Return the parse_arg return
324         value even for no-arg callbacks. Patch by Christian Persch
325
326         * glib/tests/option-context.c: Add a test for a callback which
327         returns FALSE.
328
329 2008-11-23  Christian Persch  <chpe@gnome.org>
330
331         Bug 559413 – g_option_group_set_error_hook docs buglet
332
333         * glib/goption.c: Doc fix.
334
335 2008-11-23  Christian Persch  <chpe@gnome.org>
336
337         Bug 560568 – gkeyfile docs buglet
338
339         * glib/gkeyfile.c: Clarify the docs.
340
341 2008-11-23  Christian Persch  <chpe@gnome.org>
342
343         Bug 560569 – gkeyfile doesn't use the set list_separator in some cases
344
345         * glib/gkeyfile.c: (g_key_file_get_locale_string_list),
346         (g_key_file_set_locale_string_list), (g_key_file_set_integer_list),
347         (g_key_file_set_double_list): Use the key file's list separator character,
348         not the default one.
349
350         * glib/tests/keyfile.c: (test_lists), (test_reload_idempotency): Test
351         this.
352
353 2008-11-21  Christophe Fergeau <teuf@gnome.org>
354
355         Bug 561212 – GFileReadMoreCallback API doc refers to non-existant function
356
357         * gio/giotypes.h: fix name of function referred to in
358         GFileReadMoreCallback API documentation
359
360 2008-11-21  Matthias Clasen <mclasen@redhat.com>
361
362         * configure.in: Bump gtk-doc dependency to 1.11 for
363         nicer index-generation.
364
365 2008-11-14  Matthias Clasen <mclasen@redhat.com>
366
367         * NEWS: Updates
368
369 2008-11-04  Christian Dywan  <christian@imendio.com>
370
371         Bug 558672 – NULL key lookup using g_hash_table_lookup_extended()
372
373         * glib/ghash.c:
374         Clarify g_hash_table_lookup_extended
375
376 2008-11-02  Tor Lillqvist  <tml@novell.com>
377
378         * configure.in: Expand also build/win32/vs9/Makefile.
379
380 2008-10-31  Christian Dywan  <christian@imendio.com>
381
382         Bug 558513 – g_warn_if_fail FIXME in gtestutils
383
384         * glib/gtestutils.c (g_test_log_send):
385         Turn g_assert into g_warn_if_fail as advised
386
387 2008-10-31  Grahame Bowland  <grahame@angrygoats.net>
388
389         Bug 558185 – 'parent' variable in g_local_file_get_child_for_display_name() 
390         hits g_object_unref(NULL) assertion
391
392         * gio/glocalfile.c: 
393         - remove unused variable. Patch by Matt Johnston <matt@ucc.asn.au>
394
395 2008-10-29 16:11:14  Tim Janik  <timj@gtk.org>
396
397         * glib/gmacros.h: added G_PASTE() and G_STATIC_ASSERT(), based on
398         patches by Christian Persch and Christian Dywan. Fixes:
399         Bug 558381 - Add support for compile time assertions
400
401 2008-10-27  Joseph Pingenot  <gnomesvn@digitasaru.net>
402
403         * glib/ghash.c: changed "#GHashTableIterator" to "#GHashTableIter"
404         in the documentation-comments above g_hash_table_foreach_remove()
405         and g_hash_table_foreach_steal() to correctly name and link to
406         GHashTableIter.  This affects the GNOME documentation website
407         as well, so further steps are likely necessary beyond this subproject..
408
409 2008-10-23 Matthias Clasen <mclasen@redhat.com>
410
411         Bug 557210 – g_compute_checksum_for_* asserts with less than 2 bytes
412
413         * glib/gchecksum.c (g_compute_checksum_for_data): Accept 
414         lengths < 2. Patch by Tommi Komulainen
415
416         * tests/checksum-test.c: Add a test for this
417
418 2008-10-23 Matthias Clasen <mclasen@redhat.com>
419
420         Bug 556921 – gpoll.h breaks hal compilation
421
422         * glib/gpoll.h: Include gtypes.h. Pointed out by Anis Elleuch
423
424 2008-10-20 Christian Persch <chpe@gnome.org>
425
426         Bug 557087 – mem leak in g_content_types_get_registered
427                 
428         * gio/gcontenttype.c: Plug a mem leak.
429
430 2008-10-19  Michael Natterer  <mitch@imendio.com>
431
432         Bug 556186 – gpoll.h breaks gmain.h inclusion
433
434         * glib/gpoll.h: different fix: disallow direct inclusion
435         unconditionally again but make an exception if included from
436         gmain.h to maintain compatibility.
437
438 2008-10-16  Matthias Clasen <mclasen@redhat.com>
439
440         * configure.in: Bump version to 2.19.1
441
442         * === Released 2.19.0 ===
443
444         * NEWS: Updates
445
446 2008-10-14  Christian Persch <chpe@gnome.org>
447
448         Bug 556186 – gpoll.h breaks gmain.h inclusion
449
450         * glib/gpoll.h: Only disallow direct inclusion when
451         G_DISABLE_SINGLE_INCLUDES is defined.
452
453 2008-10-13  Sven Herzberg  <sven@imendio.com>
454
455         Bug 556101 – static mutex yields warnings with g++
456         Reviewed by Tim Janik
457
458         * configure.in: added an intermediate cast to gpointer
459
460 2008-10-13  Christian Persch <chpe@gnome.org>
461
462         Bug 555311 – format not a string literal and no format arguments
463
464         * glib/gmarkup.c:
465         * glib/gshell.c: Use literal errors where appropriate.
466
467 2008-10-10  Behdad Esfahbod  <behdad@gnome.org>
468
469         Bug 551355 – [PATCH] Make glib build with libtool 2.2
470
471         * autogen.sh: Accept libtool 2.2.   We are moving towards having
472         it working.
473
474 2008-10-10  Behdad Esfahbod  <behdad@gnome.org>
475
476         * configure.in: With libtool 2.x, regenerate libtool early.
477         Based on bug 552107, patch by Patryk Zawadzki
478
479 2008-10-10  Matthias Clasen  <mclasen@redhat.com>
480
481         Bug 554557 – Patch to fix gcc warnings about missing format 
482         specifiers
483
484         * glib/gmarkup.c:
485         * glib/gshell.c:
486         * glib/grel.c: Fix gcc warnings. Patch by Kjartan Maraas
487
488 2008-10-10  Matthias Clasen  <mclasen@redhat.com>
489
490         Bug 552861 – glib-2.0.m4 calls system(3) without storing its result
491
492         * m4macros/glib-2.0.m4: Cosmetic change to make -Werror happy.
493         Patch by Andreas Köhler
494
495 2008-10-08  Christian Persch  <chpe@gnome.org>
496
497         Bug 555313 – GFileAttribute boxed type get_type function should
498         use usual get_type pattern
499
500         * gio/gfileattribute.c (g_file_attribute_info_list_get_type): Use
501         g_once_init_enter/leave.
502
503 2008-10-08  Christian Persch  <chpe@gnome.org>
504
505         Bug 555314 – mem leak in gmarkup
506
507         * glib/gmarkup.c: (g_markup_parse_context_parse): Plug a mem leak.
508
509 2008-10-08  Tor Lillqvist  <tml@novell.com>
510
511         Bug 554790 - g_convert() misbehaves with winiconv versions
512
513         * glib/win_iconv.c (kernel_mbtowc): If converting from ASCII,
514         explicitly check for and reject 8bit chars. MultiByteToWideChar()
515         doesn't, at least not on XP.
516
517 2008-10-06  Matthias Clasen  <mclasen@redhat.com>
518
519         * glib/gtypes.h: Properly include gmacros.h
520
521 2008-10-06  Behdad Esfahbod  <behdad@gnome.org>
522
523         Bug 555309 – giochannel breaks on error
524         Patch from Christian Persch
525
526         * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
527         (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags):
528         Don't shadow err.  Oops!
529
530 2008-10-06  Christophe Fergeau  <teuf@gnome.org>
531
532         Bug 555224 – Improve g_format_size_for_display doc
533         
534         * glib/gfileutils.c: change g_format_size_for_display API doc to
535         explicitly say that the returned string has to be freed. Change
536         spelling of "newly allocated" to "newly-allocated" in g_file_read_link
537         API doc to be more consistent with what is done in that file.
538
539 2008-10-01  David Zeuthen  <davidz@redhat.com>
540
541         * README.in: Add "Notes about glib 2.20" section detailing the
542         ramifications of the patch from bug #528670.
543
544 2008-09-30  Behdad Esfahbod  <behdad@gnome.org>
545
546         Bug 554092 – glib doesn't return G_FILE_ERROR_NOENT et al on OS X
547
548         * glib/giounix.c (g_io_unix_read), (g_io_unix_write),
549         (g_io_unix_seek), (g_io_unix_close), (g_io_unix_set_flags),
550         (g_io_unix_get_flags), (g_io_channel_new_file):
551         Like mclasen says: "well, thats the way errno works...,
552         save it or loose it".  Save errno.
553
554 2008-09-30  Tor Lillqvist  <tml@novell.com>
555
556         * Makefile.decl
557         * glib/tests/Makefile.am: Bypass gtester related stuff on Windows.
558
559 2008-09-30  Tor Lillqvist  <tml@novell.com>
560
561         * glib/gprintf.c
562         * glib/gnulib/vasnprintf.c: Don't define _GNU_SOURCE on Windows,
563         as _GNU_SOURCE has unintended side effects when compiling against
564         newest mingw headers.
565
566 2008-09-26  Dan Winship  <danw@gnome.org>
567
568         Bug 553447 – g_assert_no_error()
569
570         * glib/gtestutils.h (g_assert_no_error, g_assert_error): Macros to
571         assert that a GError is not set, or else is set to a particular
572         error.
573
574         * glib/gtestutils.c (g_assertion_message_error): utility for
575         those macros
576
577         * glib/tests/keyfile.c:
578         * tests/asyncqueue-test.c:
579         * tests/bookmarkfile-test.c:
580         * tests/convert-test.c:
581         * tests/file-test.c: Use g_assert_error/g_assert_no_error
582
583 2008-09-26  Dan Winship  <danw@gnome.org>
584
585         * glib/gthreadpool.c (wakeup_thread_marker): make this a "const
586         gpointer" rather than a gconstpointer to avoid warnings later
587
588         * glib/pcre/pcre_ucp_searchfuncs.c:
589         * glib/pcre/pcre_valid_utf8.c: #include "config.h"
590
591         * glib/tests/printf.c (test_d): fool gcc into not warning about
592         some printf format strings that we know are dubious
593
594 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
595
596         Bug 553857 – gbacktrace.h requires signal.h
597
598         * glib/gbacktrace.h: Include signal.h for raise(). 
599         Pointed out by Sebastien Bacher
600
601 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
602
603         Bug 553724 – python interpretter path not patched in correctly
604
605         * glib/Makefile.am: Fix the sed magic to replace python.
606
607 2008-09-26  Matthias Clasen  <mclasen@redhat.com>
608
609         * glib/gmain.c: Add some more docs.
610
611         * glib/giochannel.c: Move more docs inline, and improve them
612         on the way.
613
614 2008-09-25  Tor Lillqvist  <tml@novell.com>
615
616         Bug 553820 - gpoll.c: undeclared identifier
617
618         * glib/gmain.c
619         * glib/gpoll.c: Make the g_poll() function non-static also on
620         Windows. Prefix an underscore to the g_main_poll_debug variable
621         and make it non-static in gmain.c so that it can be used in
622         gpoll.c. Add back missing variable declaration.
623
624 2008-09-25  Tor Lillqvist  <tml@novell.com>
625
626         * glib/gspawn-win32.c (do_spawn_with_pipes) (do_spawn_directly):
627         Just ignore the child_setup function, never call it. The is no
628         situation in which it could be useful on Windows. Do print a
629         warning, like before.
630
631         * glib/gspawn.c (g_spawn_async_with_pipes): Corresponding change
632         in documentation.
633
634 2008-09-24  Sven Herzberg  <sven@imendio.com>
635
636         Be a little more explcit in the docs. Includes Owen's requested
637         changes.
638
639         * glib/gmain.c: improved documentation for g_source_attach() and
640         g_source_destroy()
641
642 2008-09-23  Michael Natterer  <mitch@imendio.com>
643
644         * glib/glib.h: #include <glib/gpoll.h>
645
646         * glib/gpoll.h: #error out if gpoll.h is included directly.
647
648         * glib/gpoll.c: remove trailing whitespace.
649
650 2008-09-23  Dan Winship  <danw@gnome.org>
651
652         * glib/gpoll.[ch] (g_poll): Move this out of gmain.c and make it part
653         of the public API. (Part of Bug 505361 - gunixinputstream.c assumes
654         poll() available.)
655
656 2008-09-23  Tor Lillqvist  <tml@novell.com>
657
658         * glib/gmain.c (poll_rest) [Win32]: Fix embarrassing bug: I was
659         passing an incorrect third parameter to memmove(), had forgotten
660         to multiply by the size of the table entry. Just use a for loop
661         instead, clearer. Odd I didn't notice when testing this code.
662
663 2008-09-19  Hans Petter Jansson  <hpj@novell.com>
664
665         Rewrite most of GHashTable to use open addressing with quadratic
666         probing instead of chaining. This has the potential to reduce memory
667         fragmentation significantly, while being slightly faster due to
668         better locality and no need to call alloc/free functions for nodes.
669         Benchmarks suggest it also uses less memory overall.
670
671         * glib/ghash.c (prime_mod): Table of suitable primes for
672         initial-probe distribution.
673         (g_hash_table_set_shift): New function.
674         (g_hash_table_find_closest_shift): New function.
675         (g_hash_table_set_shift_from_size): New function.
676         (g_hash_table_lookup_node_for_insertion): New function.
677         (g_hash_table_lookup_node): Rewritten to return node index instead of
678         pointer, use quadratic probe on flat table, and not return insertion
679         data. The latter saves some computation for read-only lookups.
680         (g_hash_table_remove_node): Rewrite to take a pointer directly to the
681         node structure to remove, and clear that. Remove unlinking code.
682         (g_hash_table_remove_all_nodes): Rewrite to not clear nodes
683         individually, but en masse using memset () after potentially calling
684         notify functions.
685         (iter_remove_or_steal): Use new data structure and algorithm. Vastly
686         simplified - now just a call to g_hash_table_remove_node ().
687         (g_hash_table_resize): New resize code, re-indexing with new prime
688         and cleaning up tombstones.
689         (g_hash_table_maybe_resize): Table may hold 8 buckets minimum, no less
690         than 1/4 load excluding tombstones, and no more than 15/16 load
691         including tombstones. These numbers are the results of a lot of
692         benchmarking with multiple complex applications, and should not be
693         changed lightly.
694         (g_hash_table_iter_next)
695         (g_hash_table_lookup)
696         (g_hash_table_lookup_extended)
697         (g_hash_table_insert_internal)
698         (g_hash_table_remove_internal)
699         (g_hash_table_foreach_remove_or_steal)
700         (g_hash_table_foreach)
701         (g_hash_table_find)
702         (g_hash_table_get_keys)
703         (g_hash_table_get_values): Use new data structure and algorithm,
704         fairly trivial changes.
705
706 2008-09-19  Tor Lillqvist  <tml@novell.com>
707
708         * glib-zip.in: Look for man pages in share/man.
709
710         * glib/gutils.c (_glib_get_dll_directory)
711         * glib/gspawn-win32.c (do_spawn_with_pipes): Be a bit less
712         restrictive, look for the helper programs in the same folder where
713         the GLib DLL is, not necessarily in a "bin" subfolder of the top
714         GLib installation folder.
715
716 2008-09-18  Matthias Clasen <mclasen@redhat.com>
717
718         * configure.in: Bump version to 2.19.0
719
720         * ChangeLog.pre-2-18: rotate ChangeLog
721         
722         * === branch for 2.18 ===