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