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