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