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