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