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