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