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