MSDN says: "Do not cast a pointer to a FILETIME structure to either a
[platform/upstream/glib.git] / ChangeLog
1 2008-08-04  Tor Lillqvist  <tml@novell.com>
2
3         * glib/gmain.c (g_get_current_time): MSDN says: "Do not cast a
4         pointer to a FILETIME structure to either a LARGE_INTEGER* or
5         __int64* value because it can cause alignment faults on 64-bit
6         Windows." So don't do that then. Indeed the code did work randomly
7         on Win64 when compiled with optimisation.
8
9 2008-08-04  Tor Lillqvist  <tml@novell.com>
10
11         * glib/giowin32.c
12         * glib/gmain.c
13         * glib/gspawn-win32.c
14         * glib/gspawn-win32-helper.c: Change gssize casts introduced on
15         2008-07-28 to gintptr casts now that we have that. gssize is as
16         such the same as gintptr on both 32- and 64-bit Windows, but the
17         gintptr name indicates that it is used to hold pointers, i.e. also
18         HANDLEs.
19
20         * tests/testglib.c: Avoid warning on Win64 by using gintptr cast
21         instead if long cast.
22
23 2008-08-04  Matthias Clasen  <mclasen@redhat.com>
24
25         * configure.in: Bump version
26
27 2008-08-04  Matthias Clasen  <mclasen@redhat.com>
28
29         * === Released 2.17.6 ===
30
31 2008-08-04  Matthias Clasen  <mclasen@redhat.com>
32
33         * configure.in: Bump version
34
35         * === Released 2.17.5 ===
36
37         * NEWS: Updates
38
39 2008-08-02  Tor Lillqvist  <tml@novell.com>
40
41         * glibconfig.h.win32.in: Add gintptr and guintptr typedefs here,
42         too, appropriately ifdeffed for 32/64 bit, gcc/MSVC. Add 64-bit
43         versions of GPOINTER_TO_INT(), GPOINTER_TO_UINT() and vice versa,
44         too.
45         
46 2008-08-01  Matthias Clasen  <mclasen@redhat.com>
47
48         * NEWS: Updates
49         
50 2008-08-01  Matthias Clasen  <mclasen@redhat.com>
51
52         Bug 545798 – "Since: 2.18" mark is missing in g_set_error_literal
53         documentation
54
55         * glib/gerror.c (g_set_error_literal): Add a Since: marker.
56         Pointed out by Kouhei Sutou
57
58 2008-07-30  Tor Lillqvist  <tml@novell.com>
59
60         Bug 545485 - Implicit declaration of utime()
61
62         * glib/gstdio.c: Include <utime.h> on POSIX.
63
64 2008-07-28  Tor Lillqvist  <tml@novell.com>
65
66         * configure.in: Output to glibconfig.h typedefs for gintptr as the
67         signed integer type that can hold a pointer, and guintptr as the
68         corresponding unsigned type. These types are portable equivalents
69         to intptr_t and uintptr_t which are not available in all
70         compilers.
71
72         For all current platforms, they will presumably end up as the same
73         types as gssize and gsize, but in theory size_t can be smaller
74         than intptr_t. Also, the intended use case for gintptr and
75         guintptr is different from that of gssize and gsize. As the name
76         indicates, gintptr is for when one wants an integer type that can
77         hold a pointer, and gsize is for when one wants an integer type
78         that can hold the value of the sizeof operator.
79
80 2008-07-28  Matthias Clasen  <mclasen@redhat.com>
81
82         Bug 544465 – gmarkup makes it hard to use pre-rolled parsers
83
84         * glib/glib.symbols:
85         * glib/gmarkup.[hc]: Add g_markup_context_get_user_data.
86         Patch by Ryan Lortie
87
88 2008-07-28  Tor Lillqvist  <tml@novell.com>
89
90         * glib-zip.in: Message catalogs should always get installed into
91         share/locale nowadays, don't bother with the convoluted logic
92         checking if they are in lib/locale instead. Put the correct helper
93         programs in the zipfile.
94
95 2008-07-28  Tor Lillqvist  <tml@novell.com>
96
97         Fix problems on 64-bit Windows. Avoid warnings, some of which
98         indicated actual problems, some which were just annoyances. 
99
100         Where casts to an integer type are needed for pointers, use
101         gssize. Technically intptr_t would be the more proper type, but we
102         still want to be compilable with MSVS6 and 7 which don't have
103         intptr_t. MSVS8 and 9 do have intptr_t, but in <crtdefs.h>, not
104         <stdint.h>.
105
106         Use %p to print out handles. Use gssize casts when assigning
107         GPollFD::fd fields.
108
109         Use G_GSIZE_FORMAT when printing size_t values.
110         
111         * configure.in: Define automake conditional G_OS_WIN32_X64 which
112         is true on Win64.
113
114         * glib/giochannel.h: Use slightly different prototype for
115         g_io_channel_win32_new_messages() on Win64 with gsize instead of
116         guint.
117
118         * glib/giowin32.c
119         * glib/gmain.c
120         * glib/gspawn-win32.c
121         * tests/testglib.c: Generic changes as described above.
122
123         * glib/gmain.h: Don't bother mentioning GIMP in comment.
124
125         * glib/grel.c (tuple_hash_2): Use all bits of pointer.
126
127         * glib/gspawn-win32.c
128         * glib/gspawn-win32-helper.c: Use gssize types in the
129         communication between parent and helper process, so that we can
130         pass process handles, which are pointers, also on Win64.
131
132         * glib/gtimer.c (g_time_val_to_iso8601): time_t is 64 bits on
133         Win64 so we can't pass the address of a GTimeVal::tv_sec which is
134         a long directly to gmtime(). On the other hand, changing
135         GTimeVal::tv_sec to be a gint64 on Win64 is not really feasible
136         either, as that would then require changes in much code that uses
137         GTimeVals.
138
139         * glib/gspawn-win32.c
140         * glib/Makefile.am: Call the helper programs
141         gspawn-win64-helper.exe and gspawn-win64-helper-console.exe on
142         Win64, to avoid potential risk of running a 32-bit version of the
143         helper.
144
145 2008-07-27  Tor Lillqvist  <tml@novell.com>
146
147         * glib/glib.symbols
148         * glib/gconvert.c
149         * glib/gdir.c
150         * glib/gfileutils.c
151         * glib/giowin32.c
152         * glib/gspawn-win32.c
153         * glib/gutils.c
154         * glib/gwin32.c: Bypass the Windows "ABI compatibility" symbols on
155         _WIN64. As there hasn't been any widely deployed 64-bit Windows
156         builds of the really old GLib (pre-2.8.1) versions those refer to,
157         there is no need to have the "ABI compatibility" versions in the
158         DLL.
159
160         * glib/makegalias.pl: Handle #ifndef _WIN64: Just output it, too.
161
162 2008-07-27  Tor Lillqvist  <tml@novell.com>
163
164         * configure.in: Set LIB_EXE_MACHINE_FLAG to either X86 or X64 on
165         Windows. AC_SUBST it.
166
167         * glib/Makefile.am (glib-2.0.lib): Pass appropriate -machine flag
168         to lib.exe.
169
170 2008-07-25 15:47:08  Tim Janik  <timj@imendio.com>
171
172         * glib/tests/testing.c (test_random_conversions): added new sample
173         test to prepare for extended range random tests.
174
175 2008-07-24  Tor Lillqvist  <tml@novell.com>
176
177         * glib/gdir.c: Include <stdio.h> for FILENAME_MAX on newer mingw
178         installations.
179
180 2008-07-24  Tor Lillqvist  <tml@novell.com>
181
182         * glib/gslice.c (smc_notify_free): Use G_GSIZE_FORMAT instead of
183         the C99 "zu".
184
185 2008-07-24  Tor Lillqvist  <tml@novell.com>
186
187         * configure.in: Must output the GLIB_USING_SYSTEM_PRINTF to
188         glibconfig.h using the same two phase code as for the other
189         defines in it. Can't check enable_included_printf directly in the
190         shell code that is the first argument to AC_CONFIG_COMMANDS().
191
192         Preset glib_cv_stack_grows=no on Windows to help
193         cross-compilation.
194
195         * configure.in: Enhancements for 64-bit Windows: 
196
197         Handle also size_t being larger than long. It is long long
198         a.k.a. __int64 on the LLP64 Win64.
199
200         Set glib_void_p and glib_long correctly. Their assignments were
201         crossed. It hasn't mattered on LP64 platforms like all (?) 64-bit
202         UNIXes, but on the LLP Win64 it was wrong.
203
204         * glibconfig.h.win32.in: Check also _WIN64.
205
206 2008-07-24  Tor Lillqvist  <tml@novell.com>
207
208         * glibconfig.h.win32.in: Patch for 64-bit Windows from Richard
209         Hult.
210
211 2008-07-23  Matthias Clasen  <mclasen@redhat.com>
212
213         544088 – option_test_LDADD is left in tests/Makefile.am
214
215         * tests/Makefile.am: Remove leftovers. 
216         Noticed by Hiroyuki Ikezoe
217
218 2008-07-22  Mathias Hasselmann  <mathias@openismus.com>
219
220         Set LANG variable for group caption tests to get reproducable results.
221
222         * glib/tests/option-context.c (group_captions()):
223           Set LANG variable to C in the forked process to get reproducable.
224           Don't silence the forked process in --verbose mode to support
225           debugging.
226
227 2008-07-21  Matthias Clasen  <mclasen@redhat.com>
228
229         * configure.in: Fix detection of struct statfs fields.
230
231 2008-07-21  Matthias Clasen  <mclasen@redhat.com>
232
233         * configure.in: Bump version
234
235 2008-07-21  Matthias Clasen  <mclasen@redhat.com>
236
237         * === Released 2.17.4 ===
238
239         * configure.in: Bump version
240
241         * NEWS: Updates
242
243 2008-07-21  Emmanuele Bassi  <ebassi@gnome.org>
244
245         * glib/gtimer.c (g_time_val_to_iso8601): Use the right format
246         string to get leading zeros when converting to ISO 8601. (Sven
247         Herzberg)
248
249 2008-07-21  Emmanuele Bassi  <ebassi@gnome.org>
250
251         * glib/gbookmarkfile.c:
252         (bookmark_app_info_new): Do not set the timestamp value
253         using time(), as it will be overwritten anyway. (#535223,
254         Michael Meeks)
255
256         (parse_application_element),
257         (bookmark_app_info_dump): Support the "modified" attribute,
258         which takes an ISO-formatted string instead of a Unix time
259         stamp, to keep the number of g_strdup_printf() calls to a
260         minimum.
261
262         * glib/gtimer.c:
263         (g_time_val_to_iso8601): Do not use strftime(): we know
264         the format and contents of the ISO 8601 date format we
265         use.
266
267         * tests/bookmarks/valid-03.xbel: Add a test file for the
268         modified attribute.
269
270 2008-07-19  Matthias Clasen  <mclasen@redhat.com>
271
272         * glib/tests/Makefile.am:
273         * glib/tests/array-test.c: Move array tests here.
274
275         * tests/Makefile.am:
276         * tests/array-test.c: Removed.
277
278 2008-07-20  Tor Lillqvist  <tml@novell.com>
279
280         * glib/giowin32.c (g_io_win32_prepare): Patch from Yu Kuan that
281         makes watched sockets behave much better. See gtk-devel-list
282         archives from May for the (unfortunately rather meager)
283         discussion. This patch fixes the presented simple test program,
284         which reasonably could be expected to work.
285
286 2008-07-18  Matthias Clasen  <mclasen@redhat.com>
287
288         * NEWS: Updates
289
290 2008-07-18  Matthias Clasen  <mclasen@redhat.com>
291
292         Bug 536996 – Missing noop i18n macro equivalent to C_
293
294         * glib/glib.symbols:
295         * glib/gstrfuncs.[hc]: Add g_dpgettext2() which is a 
296         variant of g_dpgettext() taking context and id as separate
297         arguments.
298
299         * glib/gi18n-lib.h:
300         * glib/gi18n.h: Add an NC_() macro that is to C_() as N_()
301         is to _().
302
303 2008-07-18  Matthias Clasen  <mclasen@redhat.com>
304
305         * tests/Makefile.am:
306         * tests/keyfile-test.c:
307         * tests/option-test.c: Remove
308         * glib/tests/option-context.c: Add all GOptionContext tests here.
309         * glib/tests/keyfile.c: Add all GKeyFile tests here.
310
311 2008-07-16  Matthias Clasen  <mclasen@redhat.com>
312
313         Bug 334234 – "printf" format error
314
315         * glib/gslice.c (mem_error): Avoid a warning when printing a pid_t.
316         Pointed out by Morten Welinder. 
317
318 2008-07-16  Matthias Clasen  <mclasen@redhat.com>
319
320         Bug 406120 – g_ascii_strtod
321
322         * glib/gstrfuncs.c (g_ascii_strtod): Document that this
323         function does accept localized infinities and nans. Reported
324         by Morten Welinder.
325
326 2008-07-16  Matthias Clasen  <mclasen@redhat.com>
327
328         Bug 482413 - get_contents_stdio -- overflow and memory corruption
329
330         * glib/gfileutils.c (get_contents_stdio): Detect overflow and
331         error out. Reported by Morten Welinder. 
332
333 2008-07-16  Matthias Clasen  <mclasen@redhat.com>
334
335         Bug 542332 – small fix for error message in GMarkup
336         
337         * glib/gmarkup.c: Improve an error message. 
338         Patch by Ryan Lortie
339
340 2008-07-14  Matthias Clasen  <mclasen@redhat.com>
341
342         Bug 428048 – 2 of 51 tests fail on Solaris
343
344         * tests/iochannel-test.c: Ignore the error if iconv doesn't
345         support EUC-JP.
346
347 2008-07-14  Matthias Clasen  <mclasen@redhat.com>
348
349         * tests/option-test.c: Print error messages when something fails.
350
351 2008-07-14  Matthias Clasen  <mclasen@redhat.com>
352
353         Bug 467707 – test_iconv_state() in tests/convert-test.c fails on AIX 5.3
354
355         * tests/convert-test.c (test_iconv_state): Skip this test if
356         CP1255 is not supported.  
357
358 2008-07-10  Ryan Lortie  <desrt@desrt.ca>
359
360         * docs/reference/glib/glib-sections.txt:
361         * glib/glib.symbols:
362         * glib/gmarkup.c:
363         * glib/gmarkup.h: add functions g_markup_parse_context_{push,pop} in
364         order to provide some small hooks on which to build easy-to-use
365         subparsers.
366  
367         * glib/tests/Makefile: add new test
368         * glib/tests/markup-subparser.c: new test for subparsers
369  
370         Fixes bug #337518.
371
372 2008-07-05  Matthias Clasen  <mclasen@redhat.com>
373
374         Bug 528317 – GRegex does not allow recursion limit
375
376         * glib/pcre/Makefile.am: Set a sane default recursion limit
377         of 8192 instead of 1000000. 
378         Patch by Mart Raudsepp.
379
380 2008-07-04  Behdad Esfahbod  <behdad@gnome.org>
381
382         Bug 541507 – Ambiguous description of assigned characters in the Glib
383         Unicode Manipulation reference
384
385         * glib/guniprop.c
386         (g_unichar_isgraph): Return true for PrivateUse too.
387         (g_unichar_isprint): Return true for PrivateUse too.
388         (g_unichar_isdefined): Return false for Surrogate.
389
390 2008-07-04  Michael Natterer  <mitch@imendio.com>
391
392         Bug 541208 – Functions to easily install and use signals without
393         class struct slot
394
395         * tests/gobject/override.c: added tests for the new gsignal
396         overriding and chaining APIs.
397
398 2008-07-02  Matthias Clasen  <mclasen@redhat.com>
399
400         * === Released 2.17.3 ===
401
402 2008-07-02  Matthias Clasen  <mclasen@redhat.com>
403
404         * configure.in: Better endianness fix. From Tomas Mraz.
405
406 2008-07-02  Matthias Clasen  <mclasen@redhat.com>
407
408         * NEWS: Updates
409
410 2008-07-02  Colin Walters  <walters@redhat.com>
411
412         * gio/gcontenttype.c: Use UNLOCK to unlock, not LOCK.
413
414 2008-07-02  Matthias Clasen  <mclasen@redhat.com>
415
416         * configure.in: Add a check for structfs.f_bavail
417
418 2008-07-02  Matthias Clasen  <mclasen@redhat.com>
419
420         * glib/gmain.c (g_get_current_time): Add a g_return_val_if_fail
421         check in both versions. Proposed by Patrik Olsson in bug 540545.
422
423 2008-07-02  Matthias Clasen  <mclasen@redhat.com>
424
425         * configure.in: Workaround AC_C_BIGENDIAN breakage in autoconf 2.61.
426         Add a _cv_ to some variable names, since autoconf wants it.
427
428 2008-06-30  Matthias Clasen  <mclasen@redhat.com>
429
430         * glib/pcre/pcre_compile.c: Apply fix for CVE-2008-2371 to
431         fix a heap-based buffer overflow.
432
433 2008-06-29  Björn Lindqvist  <bjourne@gmail.com>
434
435         Bug 539626 – Update docstrings for g_object_freeze_notify and
436         g_object_thaw_notify
437
438         * gobject/gobject.c: Explain how the freeze count works.
439
440 2008-06-26  Cody Russell  <bratsche@gnome.org>
441
442         * configure.in: Add #define GLIB_USING_SYSTEM_PRINTF
443         to glibconfig.h, which specifies if GLib is using
444         the system printf functions for g_print*().
445         (#539999, by Tim-Philipp Müller)
446
447 2008-06-24  Paolo Borelli  <pborelli@katamail.com>
448
449         Bug 539770 - migrate gstrfunc unit tests to gtest
450
451         * tests/strfunc-test.c:
452         * tests/testglib.c:
453         * tests/strtoll-test.c:
454         * tests/strtod-test.c:
455         * tests/string-test.c:
456         * tests/Makefile.am:
457         Removed old tests.
458
459         * glib/tests/fileutils.c:
460         * glib/tests/strfuncs.c:
461         * glib/tests/Makefile.am:
462         Added all the old tests migrated to the new unit test framework
463         and add new unit tests for some of the functions.
464
465 2008-06-23  Kristian Rietveld  <kris@imendio.com>
466
467         * gobject/glib-mkenums.in: introduce an ENUMPREFIX substitution.
468
469         * gio/gioenumtypes.h.template: use @ENUMPREFIX@ instead of
470         hard coding "G" as prefix.
471
472 2008-06-22  Stefan Kost  <ensonic@users.sf.net>
473
474         * glib/gurifuncs.c:
475           Fix markup in comment.
476
477 2008-06-21  Johan Dahlin  <jdahlin@async.com.br>
478
479     * *.[ch]: Include "config.h" instead of <config.h>
480     Command used:
481     find -name \*.[ch]|xargs perl -p -i -e 's/^#include <config.h>/#include "config.h"/g'
482     Rubberstamped by Mitch
483
484 2008-06-20  Sebastian Dröge  <slomo@circular-chaos.org>
485
486         Bug 316221 - G_LOCK warns about breaking strict-aliasing rules
487
488         * configure.in:
489         * glib/gthread.h: Revert previous patch as it doesn't improve the
490         situation and results in other warnings.
491
492 2008-06-16  Christian Persch  <chpe@gnome.org>
493
494         Bug 539123 – annotate g_d[n]gettext with G_GNUC_FORMAT
495
496         * glib/gstrfuncs.h:
497         * glib/glib.symbols: Annotate some functions with G_GNUC_FORMAT. 
498
499 2008-06-19  Tor Lillqvist  <tml@novell.com>
500
501         Bug 539074 - Cannot get exit status with g_spawn_command_line_sync()
502
503         * glib/gspawn-win32-helper.c (main): Write also the exit status of
504         the spawned process to the error report pipe. Patch by Hiroyuki
505         Ikezoe.
506
507 2008-06-19  Matthias Clasen  <mclasen@redhat.com>
508
509         Bug 535949 – annotate g_strip_context and g_dpgettext with
510         G_GNUC_FORMAT
511
512         * glib/gstrfuncs.h:
513         * glib/glib.symbols: Annotate some functions with G_GNUC_FORMAT.
514         Patch by Christian Persch
515
516 2008-06-19  Matthias Clasen  <mclasen@redhat.com>
517
518         Bug 539067 – The document g_io_channel_win32_new_fd() says that "Your
519         code should call only g_io_channel_read()." but gio_channel_read() is
520         deprecated
521
522         * glib/giochannel.h: Fix a reference in a comment
523         Patch by Hiroyuki Ikezoe 
524
525 2008-06-18  Matthias Clasen  <mclasen@redhat.com>
526
527         Bug 537635 – Corrections and improvements to
528         g_time_val_from_iso8601()/g_time_val_to_iso8601()
529
530         * glib/gtimer.c (g_time_val_from_iso8601): set tv_usec to 0 rather 
531         than 1 when a fraction of a second is not specified
532         (g_time_val_from_iso8601): calculate a fraction of a second
533         correctly even in case it does not happen to consist of exactly 
534         six digits; do not allow random data after the ISO 8601 string,
535         only whitespace
536         (make g_time_val_to_iso8601): support fractions of a second
537         Patch by Peter Kjellerstedt
538
539         * tests/testglib.c: Update to match
540
541 2008-06-16  Christian Persch  <chpe@gnome.org>
542
543         * glib/gbookmarkfile.c
544         * glib/gconvert.c
545         * glib/gfileutils.c
546         * glib/giochannel.c
547         * glib/giounix.c
548         * glib/giowin32.c
549         * glib/gkeyfile.c
550         * glib/gregex.c
551         * glib/gshell.c
552         * glib/gspawn-win32.c
553         * glib/gutf8.c: Use g_set_error_literal where appropriate. Patch from 
554         bug #535947.
555
556 2008-06-16  Christian Persch  <chpe@gnome.org>
557
558         * docs/reference/glib/glib-sections.txt:
559         * glib/gerror.c:
560         * glib/gerror.h:
561         * glib/glib.symbols: Add g_set_error_literal. Bug #535947.
562
563 2008-06-16  Michael Natterer  <mitch@imendio.com>
564
565         * glib/goption.c (dgettext_swapped): changed return value to
566         const gchar* to fix warning.
567
568 2008-06-14  Matthias Clasen  <mclasen@redhat.com>
569
570         * glib/gtestutils.c: Move docs around
571
572         * glib/gchecksum.h: Add docs.
573
574 2008-06-13  Matthias Clasen  <mclasen@redhat.com>
575
576         Bug 538119 – glib's mainloop leaks a pipe to sub-processes
577
578         * glib/gmain.c (g_main_context_init_pipe): Don't leak the
579         pipes to child processes. Patch by Thiago Macieira.
580
581 2008-06-13  Hans Breuer  <hans@breuer.org>
582
583         * glib/gstrfuncs.c : to get the default translation target on
584         win32 use g_win32_get_locale() instead of setlocale(LS_MESSAGES,NULL)
585         Fixes bug #538044
586
587         * glib/makefile.msc.in gio/makefile.msc : updated
588
589 2008-06-12  Matthias Clasen  <mclasen@redhat.com>
590
591         * configure.in: Bump version
592         
593         * === Released 2.17.2 ===
594
595         * configure.in: Fix LINGUAS conversion
596
597 2008-06-12  Matthias Clasen  <mclasen@redhat.com>
598
599         * configure.in: Bump version
600
601         * === Released 2.17.1 ===
602
603 2008-06-12  Matthias Clasen  <mclasen@redhat.com>
604
605         * glib/gtestutils.c: Documentation fixups
606
607 2008-06-11  Matthias Clasen  <mclasen@redhat.com>
608
609         * glib/glist.c: Tiny doc fix
610
611 2008-06-11  Matthias Clasen  <mclasen@redhat.com>
612
613         * NEWS: Updates
614
615 2008-06-11  Behdad Esfahbod  <behdad@gnome.org>
616
617         Bug 503071 – Application direction changes to right to left even if
618         theres no translation
619
620         * glib/gi18n-lib.h:
621         * glib/glib.symbols:
622         * glib/gstrfuncs.h:
623         * glib/gstrfuncs.c:
624         Add new functions g_dgettext() and g_dngettext().
625
626         * glib/gutils.c (glib_gettext):
627         * glib/gfileutils.c (g_format_size_for_display):
628         * glib/goption.c (dgettext_swapped):
629         Use the new functions.
630
631 2008-06-11  Matthias Clasen  <mclasen@redhat.com>
632
633         Bug 502511 – g_assert_cmphex prints invalid message
634
635         * glib/gtestutils.c (g_assertion_message_cmpnum): Actually print
636         hex numbers in hex. 
637         Pointed out by Tor Lillqvist
638
639 2008-06-11  Matthias Clasen  <mclasen@redhat.com>
640
641         Bug 338162 – [PATCH] Use po/LINGUAS
642
643         * po/LINGUAS: New file
644         * po/Makefile.in.in: Dist LINGUAS
645         * configure.in: Use po/LINUAS
646         Patch by Thomas Andersen
647
648 2008-06-11  Matthias Clasen  <mclasen@redhat.com>
649
650         Bug 314453 – Nautilus crashes in Solaris when browsing the attached
651         file
652
653         * glib/gunicollate.c (g_utf8_collate_key): Handle strfxrm returning
654         -1 a little better. Problem pointed out by Takao Fujiwara
655
656 2008-06-11  Matthias Clasen  <mclasen@redhat.com>
657
658         Bug 529321 – make check fails in glib/pcre
659
660         * glib/pcre/Makefile.am: include Makefile.decl to fix 'make check'.
661         Patch by Hiroyuki Ikezoe
662
663 2008-06-11  Tor Lillqvist  <tml@novell.com>
664
665         * glib/giowin32.c: g_win32_error_message() works fine for the
666         Winsock WSA* error codes, too, so drop the winsock_error_message()
667         function.
668
669 2008-06-11  Matthias Clasen  <mclasen@redhat.com>
670
671         Bug 455215 – g_get_user_special_dir: no reference about
672         G_USER_DIRECTORY_DOWNLOAD fallback to $HOME/Desktop if 
673         xdg-user-dirs is not in use
674
675         * glib/gutils.c (g_get_user_special_dir): Improve the docs.
676         Proposed by Luca Ferretti
677
678 2008-06-11  Matthias Clasen  <mclasen@redhat.com>
679
680         Bug 498732 – g_key_file_to_data cannot fail
681
682         * glib/gkeyfile.c (g_key_file_to_data): Improve the docs.
683         Proposed by Christian Persch
684
685 2008-06-11  Ross Burton  <ross@burtonini.com>
686
687         Bug 511367 - add g_file_make_directory_with_parents.
688         
689         * gio/gfile.c:
690         * gio/gfile.h:
691         * gio/gio.symbols: Add g_file_make_directory_with_parents.
692         
693 2008-06-11  Sebastian Dröge  <slomo@circular-chaos.org>
694
695         Bug 531900 – Use __builtin_offsetof for G_STRUCT_OFFSET if building
696         with gcc 4.0 or newer
697
698         * glib/gmacros.h: Use __builtin_offsetof for G_STRUCT_OFFSET if
699         building with gcc 4.0 or newer.
700
701 2008-06-11  Tor Lillqvist  <tml@novell.com>
702
703         * glib/gmain.c
704         * glib/gspawn.c: Clarify what a "child pid" is in the doc
705         comments.
706
707 2008-06-10  Matthias Clasen  <mclasen@redhat.com>
708
709         Bug 536158 – also bump GHashTable version when a node is removed via
710         g_hash_table_iter_remove()/g_hash_table_iter_steal()
711
712         * glib/ghash.c (iter_remove_or_steal): Bump the hash table 
713         version. Patch by Jean-Yves Lefort
714
715 2008-06-07  Tor Lillqvist  <tml@novell.com>
716
717         * glib/gstdio.c (g_access): Define X_OK if necessary (MSVC).
718
719 2008-06-02  Yevgen Muntyan  <muntyan@tamu.edu>
720
721         Bug 531403 – g_utf8_collate broken on Mac.
722
723         * glib/gunicollate.c:  (g_utf8_collate): use UCCompareTextDefault;
724         (collate_key_to_string), (carbon_collate_key_with_collator),
725         (carbon_collate_key), (carbon_collate_key_for_filename): new
726         functions using Carbon API to get collate key for g_utf8_collate_key()
727         and g_utf8_collate_key_for_filename();
728         (g_utf8_collate_key), (g_utf8_collate_key_for_filename): use those.
729
730 2008-05-30  Michael Natterer  <mitch@imendio.com>
731
732         Bug 535628 - test/patterntest.c still includes gpattern.h
733         directly.
734
735         * tests/patterntest.c: don't include "glib/gpattern.h" directly.
736         Patch from Hiroyuki Ikezoe.
737
738 2008-05-30  Tor Lillqvist  <tml@novell.com>
739
740         Bug 535625 - alias.h:2648: error: 'utime' undeclared here (not in
741         a function)
742
743         * glib/glib.symbols: Move g_utime inside #if !defined(G_OS_UNIX)
744         || defined(G_STDIO_NO_WRAP_ON_UNIX).
745
746 2008-05-30  Tor Lillqvist  <tml@novell.com>
747
748         * glib/gstdio.c (g_access) [Win32]: Mask out X_OK to avoid problem
749         on Vista. X_OK was just ignored by access() in earlier Microsoft C
750         libraries. (Which is fine as executability has little meaning on
751         Windows.) The one on Vista returns an error if X_OK is passed.
752
753 2008-05-29  Tor Lillqvist  <tml@novell.com>
754
755         * glib/gstdio.h
756         * glib/gstdio.c: Add g_utime(). No need to include <sys/utime.h>
757         in gstdio.h, just use a forward struct declaration.
758
759         * glib/glib.symbols: Add it.
760
761 2008-05-29  Tor Lillqvist  <tml@novell.com>
762
763         * glib/gnulib/printf-args.c (printf_fetchargs): wint_t is short on
764         Windows, and gcc warns: "wint_t is promoted to int when passed
765         through ... (so you should pass int not wint_t to va_arg)." And
766         indeed g_print("%C", L'a') crashes. So do as gcc says then.
767
768 2008-05-28  Michael Natterer  <mitch@imendio.com>
769
770         * configure.in: add G_DISABLE_SINGLE_INCLUDES to CPPFLAGS
771         globally.
772
773         * glib/tests/option-context.c
774         * glib/tests/testing.c
775         * tests/testingbase64.c: don't include <glib/gtestutils.h>
776
777 2008-05-27  Matthias Clasen  <mclasen@redhat.com>
778
779         * configure.in: Bump version
780
781         * === Released 2.17.0 ===
782
783 2008-05-27  Matthias Clasen  <mclasen@redhat.com>
784
785         * README.in: Add a note about G_DISABLE_SINGLE_HEADERS.
786
787         * NEWS: Updates
788
789 2008-05-27  Matthias Clasen  <mclasen@redhat.com>
790
791         * tests/casemap.txt:
792         * tests/casefold.txt: Update for Unicode 5.1
793
794 2008-05-27  Matthias Clasen  <mclasen@redhat.com>
795
796         * Revert the patch for bug 527214 and related changes. GTimer
797         is supposed to work without threads.
798
799 2008-05-27  simon.zheng  <simon.zheng@sun.com>
800
801         * configure.in: Fix #533369. Check whether memeber statvfs.f_basetype 
802         available or not.
803
804 2008-05-27  Matthias Clasen  <mclasen@redhat.com>
805
806         * glib/pcre/*: Update to PCRE 7.7
807
808 2008-05-26  Matthias Clasen  <mclasen@redhat.com>
809
810         * glib/gchecksum.c: Add Since: tag to g_checksum_reset
811
812         * glib/glib.symbols: Add g_checksum_reset
813
814 2008-05-25  Matthias Clasen  <mclasen@redhat.com>
815
816         Bug 534137 – Typo in g_spawn_async_with_pipes doc
817
818         * glib/gspawn.c: Fix a typo in the docs, pointed out by Ted Percival.
819
820 2008-05-25  Tor Lillqvist  <tml@novell.com>
821
822         Bug 534319 - GLib's .pc files could use Libs.private
823
824         * glib-2.0-uninstalled.pc.in
825         * glib-2.0.pc.in
826         * gmodule-2.0-uninstalled.pc.in
827         * gmodule-2.0.pc.in
828         * gmodule-export-2.0.pc.in
829         * gmodule-no-export-2.0.pc.in: Move ICONV_LIBS and G_MODULE_LIBS
830         to Libs.private.
831
832 2008-05-24  Matthias Clasen  <mclasen@redhat.com>
833
834         * glib/gfileutils.c (g_file_open_tmp): Small documention addition.
835
836 2008-05-22 10:49:37  Tim Janik  <timj@imendio.com>
837
838         * glib/gmacros.h: implement G_STMT_START and G_STMT_END with
839         do{}while(0), which is believed to be widely portable, fixes:
840         Bug 519026 - G_STMT_START/G_STMT_END test a non-existent preprocessor symbol
841
842 2008-05-20  Behdad Esfahbod  <behdad@gnome.org>
843
844         Bug 501651 – Update glib/libcharset
845
846         * configure.in:
847         * glib/libcharset/Makefile.am:
848         * glib/libcharset/README:
849         * glib/libcharset/codeset.m4:
850         * glib/libcharset/config.charset:
851         * glib/libcharset/glibc21.m4:
852         * glib/libcharset/libcharset-glib.patch:
853         * glib/libcharset/libcharset.h:
854         * glib/libcharset/localcharset.c (_g_locale_get_charset_aliases),
855         (_g_locale_charset_raw):
856         * glib/libcharset/localcharset.h:
857         * glib/libcharset/make-patch.sh:
858         * glib/libcharset/ref-add.sin:
859         * glib/libcharset/ref-del.sin:
860         * glib/libcharset/update.sh:
861         Update libcharset to the one shipped with libiconv-0.12.
862
863 2008-05-20  Behdad Esfahbod  <behdad@gnome.org>
864
865         Bug 459905 – Bug in wcwidth data
866         Bug 534085 – g_unichar_iswide_cjk() has a totally wrong table
867         * glib/guniprop.c (g_unichar_iswide), (g_unichar_iswide_cjk):
868         Regenrate wide and wide_cjk tables from Unicode 5.1.0 data directly.
869         Not using Markus Kuhn's tables anymore.
870
871 2008-05-20 14:31:18  Tim Janik  <timj@imendio.com>
872
873         * reverted recent unapproved changes by Yair Hershkovitz, regarding:
874         Bug 503071 – Application direction changes to right to left even if theres no translation.
875
876 2008-05-20  Tor Lillqvist  <tml@novell.com>
877
878         * configure.in: Don't need memory barriers when using a non-gcc
879         compiler on Windows either.
880
881 2008-05-19  Tor Lillqvist  <tml@novell.com>
882
883         * glib/gdir.c: Include the dirent.h and wdirent.c from
884         ../build/win32/dirent directly here when compiling with MSVC and
885         without HAVE_DIRENT_H.
886
887 2008-05-19  Hans Breuer  <hans@breuer.org>
888
889         * glib/makefile.msc : added gi18n.c
890
891 2008-05-19  Tor Lillqvist  <tml@novell.com>
892
893         * glib/Makefile.am: #define HELPER_CONSOLE in
894         gspawn-win32-helper-console.c
895
896         * glib/gspawn-win32-helper.c: Compile a main() instead of
897         WinMain() if HELPER_CONSOLE is defined. MSVC insists on a console
898         application having a main().
899
900 2008-05-18  Matthias Clasen  <mclasen@redhat.com>
901
902         Bug 527214 – g_timer_elapsed() returns random values.
903
904         * glib/gtimer.c (g_timer_new()):
905         Print warning if g_thread_init() has not been called yet. 
906         Patch by Mathias Hasselmann
907
908 2008-05-12  Jeffrey Stedfast  <fejj@novell.com>
909
910         * glib/gchecksum.c (g_checksum_reset): New function to reset the
911         state of a GChecksum.
912         (g_checksum_new): Call g_checksum_reset() instead of duplicating
913         code.
914
915 2008-05-17  Matthias Clasen  <mclasen@redhat.com>
916
917         Bug 528667 – Typos in testing module documentation
918
919         * glib/gtestutils.c: Fix typos in the documentation.
920
921 2008-05-17  Tor Lillqvist  <tml@novell.com>
922
923         * glib/giowin32.c: Make debugging printout more compact and add
924         more information to it. No changes to actual functionality.
925
926         * glib/gmain.c: Improve debugging printouts. When
927         G_MAIN_POLL_DEBUG is defined, we check for an environment variable
928         of the same name to decide whether to print out debugging
929         information or not. G_MAIN_POLL_DEBUG is always defined on Windows
930         as there is more often a need to debug this stuff there. On Unix
931         the definition has to be uncommented (or done on the compile
932         command line).
933
934 2008-05-17  Tor Lillqvist  <tml@novell.com>
935
936         * build: Don't include the "build" module with svn:externals any
937         longer. Instead add the still relevant directories and files from
938         it for real here in GLib.
939
940 2008-05-17  Yair Hershkovitz  <yairhr@gmail.com>
941
942         * glib/glib.symbols:
943         * glib/gi18n.h: Added g_disable_setlocale().
944
945         * glib/gi18n.c: Added g_disable_setlocale() API to disable setting
946         the locale in g_i18n_init(). Dont disable translations if textdomain
947         was not set before calling g_i18n_init(). Dont disable translations if
948         the locale is "C".
949
950 2008-05-16  Tor Lillqvist  <tml@novell.com>
951
952         * config.h.win32.in: Update to match the configure-produced one.
953
954 2008-05-14  Michael Natterer  <mitch@imendio.com>
955
956         * glib/gatomic.c: #include "config.h" before using G_ATOMIC_ARM.
957
958 2008-05-13  Kjartan Maraas  <kmaraas@gnome.org>
959
960         * glib/gi18n.c: #include <locale.h> to fix the build.
961
962 2008-05-12  Yair Hershkovitz  <yairhr@gmail.com>
963
964         * glib/gi18n.c (g_i18n_init): Coding convention fix. Space between
965         a function name and its opening parenthesis.
966
967 2008-05-12  Tor Lillqvist  <tml@novell.com>
968
969         * glib/glib.symbols: Add g_i18n_init.
970
971 2008-05-12  Tor Lillqvist  <tml@novell.com>
972
973         Bug 530457 - G_USER_DIRECTORY_DOWNLOAD folder improperly mapped
974
975         * glib/gutils.c (load_user_special_dirs): When running on Vista or
976         later, use SHGetKnownFolderPath() to get the FOLDERID_Downloads
977         folder for G_USER_DIRECTORY_DOWNLOAD, and FOLDERID_Public for
978         G_USER_DIRECTORY_PUBLIC_SHARE.
979
980 2008-05-11  Yair Hershkovitz  <yairhr@gmail.com>
981
982         Bug 503071 - Application direction changes to right to left even if
983         theres no translation. 
984
985         * glib/gi18n.c: g_i18n_init() for initializing the glib i18n,
986         checking if a translation is available for the calling app. wrappers for
987         gettext, dgettext and dpgettext to check first if the application
988         should be translated.
989
990         * glib/gi18n.h: symbol declaration for gettext wrappers.
991
992         * glib/gi18n-lib.h: include gi18n.h instead of libintl.h.
993
994         * glib/gstrfuncs.c: moved g_dpgettext() to glib/gi18n.c.
995
996         * glib/gutils.c: use g_dgettext() instead of dgettext().
997
998         * glib/glibintl.h: include gi18n.h.
999
1000         * glib.symbols: added gettext wrappers.
1001
1002         * glib/Makefile.am: added gi18n.c.
1003
1004 2008-05-05  Michael Natterer  <mitch@imendio.com>
1005
1006         * glib/glib.h: #define __GLIB_H_INSIDE__ around including
1007         everything.
1008
1009         * glib/*.h: check for that define instead of __G_LIB_H__ if
1010         G_DISABLE_SINGLE_INCLUDES is defined.
1011
1012         * glib/gdatasetprivate.h: #include <glib.h> instead of
1013         <glib/gdataset.h>
1014
1015 2008-05-02 13:24:13  Tim Janik  <timj@imendio.com>
1016
1017         * glib/gmain.c: renamed GMainDispatch.dispatching_sources to be more
1018         descriptive and distinguishable within the source file.
1019
1020 2008-04-21  Tor Lillqvist  <tml@novell.com>
1021
1022         Bug 528752 - Win32 build and SSL not working
1023
1024         This bug report against libsoup points out an issue with the use
1025         of bitfields in the GIOChannel struct that should really be taken
1026         care of here in GLib.
1027
1028         * configure.in: Add Autoconf variable GLIB_EXTRA_CFLAGS which will
1029         contain the -mms-bitfields flag on Windows.
1030         
1031         * glib-2.0.pc.in: Add it to Cflags.
1032
1033 2008-04-21  Tor Lillqvist  <tml@novell.com>
1034
1035         * configure.in
1036         * */Makefile.am: More work on enabling static building on
1037         Windows. When building statically: Also define
1038         GOBJECT_STATIC_COMPILATION in glibconfig.h so that also the
1039         variables in gparamspecs.h get declared without any
1040         dllimport/dllexport decorations. Don't install .def files which
1041         obviously have no meaning for static libraries. Don't create MS
1042         import libraries. Don't do any resource object files.
1043
1044 2008-04-18 17:40:58  Tim Janik  <timj@imendio.com>
1045
1046         * tests/testglib.c: fixed gstdio.h include.
1047
1048         * tests/Makefile.am: properly list testglib.c SOURCES.
1049
1050 2008-04-17  Emmanuele Bassi  <ebassi@gnome.org>
1051
1052         * glib/gchecksum.c:
1053         (sha_byte_reverse): Use the macro GLib provides for byte-swapping
1054         as it can be optimized.
1055         
1056         (g_checksum_update): Fix a compiler warning.
1057
1058 2008-04-15  Mukund Sivaraman  <muks@mukund.org>
1059
1060         * gio/gfile.c: Fixed typos in gtk-doc comments.
1061
1062 2008-04-10  Mathias Hasselmann  <mathias@openismus.com>
1063
1064         Bug 519137 – g_slice_dup macro needs cast for 64-bit platform
1065
1066         * glib/gslice.h (g_slice_copy): Apply type casts needed
1067           for proper compilation on 64-bit platforms.
1068
1069 2008-04-09  Federico Mena Quintero  <federico@novell.com>
1070
1071         * glib/gbookmarkfile.c (bookmark_metadata_free): Don't leak
1072         the apps_by_name hash table if the applications list is empty.
1073
1074 2008-04-08  Behdad Esfahbod  <behdad@gnome.org>
1075
1076         * glib/gunicode.h: Add ISO 15924 code comments for new scripts.
1077
1078 2008-04-07  Matthias Clasen  <mclasen@redhat.com>
1079
1080         Bug 491554 – Update to Unicode 5.1.0
1081
1082         * glib/gunichartables.h:
1083         * glib/gunicode.h:
1084         * glib/gunibreak.h:
1085         * glib/gmirroringtable.h:
1086         * glib/gscripttable.h:
1087         * glib/gen-script-table.pl: Update to Unicode 5.1.0. Patch by
1088         Behdad Esfahbod
1089
1090 2008-04-07  Matthias Clasen  <mclasen@redhat.com>
1091
1092         Bug 526619 – make test-report crash
1093
1094         * glib/gtester.c: Allocate enough space for argv. Patch by
1095          Hiroyuki Ikezoe
1096
1097 2008-04-04  Matthias Clasen  <mclasen@redhat.com>
1098
1099         * glib/gmain.c: Make the fix for bug 448943 work.
1100
1101 2008-04-04  Tor Lillqvist  <tml@novell.com>
1102
1103         * configure.in: Make sure we don't build both shared and static at
1104         the same time on Windows. Put a #define for
1105         GLIB_STATIC_COMPILATION into glibconfig.h in the static case, so
1106         that the use of variables from libglib gets the GLIB_VAR macro in
1107         gtypes.h automatically correct. This means that a shared and
1108         static build of GLib can't be installed in the same prefix on
1109         Windows, which sucks a bit. But with variables in the GLib API,
1110         there isn't much we can do otherwise. The alternative would be to
1111         force the developer who compiles against a statically built GLib
1112         to use -DGLIB_STATIC_COMPILATION.
1113
1114         * glibconfig.h.win32.in: Define GLIB_STATIC_COMPILATION here also,
1115         if needed.
1116
1117 2008-04-03  Tor Lillqvist  <tml@novell.com>
1118
1119         * configure.in: Don't enforce shared library build only on
1120         Windows. It might well make sense to build static libraries in
1121         some use cases.
1122
1123         * glib/gutils.c: Don't compile the DllMain if building libglib
1124         statically. Also in that case don't return NULL from
1125         _glib_get_installation_directory(), but return the installation
1126         directory of the program's .exe file.
1127
1128 2008-04-03  Tor Lillqvist  <tml@novell.com>
1129
1130         Bug 525972 - UCS-4 not in the new win_iconv implementation
1131
1132         * glib/win_iconv.c: Add UCS-4. Also add spelling of UCS-2 without
1133         the hyphen.
1134
1135 2008-04-03  Matthias Clasen  <mclasen@redhat.com>
1136
1137         Bug 448943 – g_timeout_add_seconds() problems
1138
1139         * glib/gmain.c (g_timeout_set_expiration): Prevent expiration
1140         time going negative. Reported by Cody Russell, analyzed by
1141         Olivier Crete, patch by Sjoerd Simons.
1142
1143 2008-04-03  Matthias Clasen  <mclasen@redhat.com>
1144
1145         Bug 525674 – A typo in gmarkup.c
1146
1147         * glib/gmarkup.c (g_markup_parse_context_get_element_stack): Fix
1148         the docs, reported by Hiroyuki Ikezoe
1149
1150 2008-04-03  Matthias Clasen  <mclasen@redhat.com>
1151
1152         Bug 525732 – Error in documentation for g_list_first
1153
1154         * glib/glist.c (g_list_first): Fix the docs, reported by 
1155         Salvatore Iovene
1156
1157 2008-04-02  Tor Lillqvist  <tml@novell.com>
1158
1159         Bug 524314 - g_convert() on Win32 implicitly converts full width
1160         alphanumerics into half width
1161         
1162         * glib/win_iconv.c: Update from Yukihiro Nakadaira. Use
1163         WC_NO_BEST_FIT_CHARS flag for WideCharToMultiByte() unless the
1164         //translit flag was suffixed to the codeset name.
1165
1166         * glib/gconvert.c: Include win_iconv.c earlier so that its
1167         definition of WINVER before it includes <windows.h> is used.
1168
1169 2008-03-31  Tor Lillqvist  <tml@novell.com>
1170
1171         * glib/gmain.c (g_poll): Improve fix for #525192 below: Use
1172         SleepEx() so that the sleep is alertable. Thanks to John
1173         Ehresman.
1174
1175 2008-03-31  Tor Lillqvist  <tml@novell.com>
1176
1177         * glib/gwin32.c
1178         (g_win32_get_package_installation_directory_of_module): Fix Cygwin
1179         breakage. Patch by Lieven van der Heide.
1180
1181 2008-03-31 10:39:17  Tim Janik  <timj@imendio.com>
1182
1183         * glib/gutils.h: reapply inlining fix from r6333 to fix:
1184         Bug 522292 – Gives warnings in glib/gutils.h with GCC in C99 mode
1185         and again:
1186         Bug 315437 – extern inline -> static inline
1187
1188 2008-03-31  Tor Lillqvist  <tml@novell.com>
1189
1190         Bug 525192 - 100% CPU if run main loop with no IO sources
1191
1192         * glib/gmain.c (g_poll) [Win32]: Patch by Neil Roberts.
1193
1194 2008-03-30  Matthias Clasen  <mclasen@redhat.com>
1195
1196         * glib/gtester.c: Don't use ARG_MAX.  (#522335, patch by 
1197         Samuel Thibault, adapted by Sebastian Dröge)
1198
1199 2008-03-30  Matthias Clasen  <mclasen@redhat.com>
1200
1201         * glib/gmacros.h: Add macros wrapping the gcc alloc_size 
1202         function attribute.  (#523019, Rodrigo Moya)
1203
1204         * glib/gmem.h: 
1205         * glib/gslice.h:
1206         * glib/gstrfuncs.h: Use the new attribute where appropriate.
1207
1208 2008-03-30  Matthias Clasen  <mclasen@redhat.com>
1209
1210         * glib/glibintl.h:
1211         * glib/gstrfuncs.c:
1212         * glib/gutils.c: Simple fixes to help building GLib on 
1213         embedded systems without NLS.  (#524350, Peter Kjellerstedt)
1214
1215 2008-03-30  Matthias Clasen  <mclasen@redhat.com>
1216
1217         * glib/ghash.c: Fix the build with -DG_DISABLE_ASSERT.
1218         (#525060, Arfrever Frehtes Taifersar Arahesis)
1219
1220 2008-03-30  Matthias Clasen  <mclasen@redhat.com>
1221         
1222         * glib/gthread.h: Replace occurrances of G_GNUC_PRETTY_FUNCTION
1223         by G_STRFUNC.  (#524344, Peter Kjellerstedt)
1224
1225 2008-03-30  Matthias Clasen  <mclasen@redhat.com>
1226
1227         * glib/gtestutils.c: Fix a doc typo. (#524742, Hiroyuki Ikezoe)
1228
1229 2008-03-22  Claudio Saavedra  <csaavedra@gnome.org>
1230
1231         Bug 523877 – gbookmarkfile: avoid using g_string_append_printf() and
1232         other optimizations
1233
1234         * glib/gbookmarkfile.c: (bookmark_metadata_dump),
1235         (bookmark_item_dump), (g_bookmark_file_dump), (expand_exec_line):
1236         Replace all calls to g_string_append_printf with g_strconcat () or
1237         g_string_append () where appropriate, to reduce the file creation time.
1238         Also, use g_string_sized_new () with an appropriate buffer size instead
1239         of g_string_new (NULL), to reduce time spent in memory reallocation.
1240         (#523877, Claudio Saavedra, Emmanuele Bassi)
1241
1242 2008-03-22  Emmanuele Bassi  <ebassi@gnome.org>
1243
1244         Bug 518160 - replace two g_strdup_printf calls in GBookmarkFile
1245
1246         * glib/gbookmarkfile.c (is_element_full): Compare the fragments
1247         instead of building two strings; this avoids two g_strdup_printf()
1248         per namespaced element enountered. (#518160, Felix Riemann)
1249
1250 2008-03-20  Alexander Larsson  <alexl@redhat.com>
1251
1252         * configure.in:
1253         Final fixes for struct statfs.f_fstypename checks (OpenBSD). (#521045)
1254         Patch from ephraim_owns@hotmail.com
1255
1256 2008-03-19  Tor Lillqvist  <tml@novell.com>
1257
1258         Bug 523298 - win_iconv can't convert from UTF-8 to GB18030 (or vice versa)
1259
1260         * glib/win_iconv.c: Fixes for code page 54936 (GB18030)
1261         (mbtowc_flags): New function. Check if a code page is one of those
1262         for which the dwFlags parameter to MultiByteToWideChar() must be
1263         zero. Return 0 or MB_ERR_INVALID_CHARS.
1264         (mbcs_mblen): New function for multi-byte (more than two bytes for
1265         some characters) code pages. Only handles 54936 for now.
1266         (make_csconv): Use it for 54936.
1267         (kernel_mbtowc): Use mbtowc_flags().
1268
1269 2008-03-18  Sebastian Dröge  <slomo@circular-chaos.org>
1270
1271         Bug 522292 - Gives warnings in glib/gutils.h with GCC in C99 mode
1272
1273         * glib/gutils.h: Use "__attribute__ ((__gnu_inline__))" for inlining
1274         if either __GNUC_STDC_INLINE__ or __GNUC_GNU_INLINE__ are defined. In
1275         gcc version prior to 4.3 no correct C99-inline was implemented which
1276         has semantic differences to GNU inline.
1277
1278 2008-03-16  Tor Lillqvist  <tml@novell.com>
1279
1280         * configure.in: Don't bother defining Autoconf variables for
1281         glib.def, gmodule.def, gobject.def and gthread.def when this can
1282         be handled easily in */Makefile.am which are the only files that
1283         use them. Remove also TESTGMODULE_EXP which isn't used at all.
1284
1285         * glib/Makefile.am: Corrsponding change.
1286         
1287 2008-03-14  Michael Natterer  <mitch@imendio.com>
1288
1289         * glib/*.h: make it possible to disable single-file includes by
1290         defining G_DISABLE_SINGLE_INCLUDES when building against GLib.
1291         Approved by Tim Janik.
1292
1293         * glib/glib.h: include <glib/gslice.h>.
1294
1295         * glib/gi18n.h
1296         * glib/gi18n-lib.h
1297         * glib/gprintf.h: include <glib.h> so the above works when these
1298         files are included without including <glib.h> first.
1299
1300 2008-03-14  Alexander Larsson  <alexl@redhat.com>
1301
1302         * configure.in:
1303         Add required includes for f_fstypename member check.
1304
1305 2008-03-14  Alexander Larsson  <alexl@redhat.com>
1306
1307         * configure.in:
1308         Added checks for FEN (Solaris  File Event Notification)
1309
1310 2008-03-13  Tor Lillqvist  <tml@novell.com>
1311
1312         * glib-zip.in: Add lib/gio-2.0.lib and lib/gio-2.0.def.
1313
1314 2008-03-12  Tor Lillqvist  <tml@novell.com>
1315
1316         * configure.in: Expand gio/win32/Makefile.
1317
1318 2008-03-12  Matthias Clasen <mclasen@redhat.com>
1319
1320         * configure.in: Bump version to 2.17.0
1321
1322         * ChangeLog.pre-2-16: rotate ChangeLog
1323         
1324         * === branch for 2.16 ===