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