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