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