On Win32, if we get a fatal error message while being debugged we break
[platform/upstream/glib.git] / ChangeLog
1 2006-12-28  Tor Lillqvist  <tml@novell.com>
2
3         * glib/gmessages.c (g_logv): On Win32, if we get a fatal error
4         message while being debugged we break into the debugger with
5         G_BREAKPOINT(). Don't call abort() if the user is foolhardy enough
6         to continue after the breakpoint. The user presumably knows what
7         he is doing and deserves what he gets. (#376645, Andreas Köhler)
8
9 Thu Dec 28 12:50:31 2006  Tim Janik  <timj@imendio.com>
10
11         * glib/gslice.h, glib/gslice.c: implemented static debugging
12         hash-tree to validate slice adresses and sizes with G_SLICE=debug-blocks.
13         use abort() to exit in mem_error() to allow catching of these in gdb.
14         abort programs with a descriptive error message if g_thread_init() is
15         called after GSlice was in use. previously this just silently corrupted
16         the magazines.
17
18         * glib/ghash.c (struct _GHashNode): reordered fields to keep 8-byte 
19         pointer alignment on 64bit systems and request smaller slice sizes
20         on 32bit systems.
21
22         * tests/slice-test.c: support '~' option flag to introduce slice 
23         allocation/release corruption with a significant probability. this
24         allowes testing of G_SLICE=debug-blocks.
25
26 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
27
28         * glib/gconvert.[hc]:
29         * glib/gfileutils.c:
30         * glib/giochannel.c:
31         * glib/goption.c:
32         * glib/gspawn.c:
33         * glib/gunicollate.c:
34         * glib/gutils.c:
35         * tests/timeloop-basic.c: 
36         Consistently use gsize rather than size_t.  (#333310,
37         Morten Welinder)
38
39 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
40
41         * configure.in: Use AC_CACHE_CHECK for the nl_langinfo
42         check.  (#304517, Lőrinczy Zsigmond)
43
44 2006-12-27  Tor Lillqvist  <tml@novell.com>
45
46         * glib/gwin32.h
47         * glib/gwin32.c (get_package_directory_from_module)
48         (g_win32_get_package_installation_directory)
49         (g_win32_get_package_installation_subdirectory): Add const to
50         gchar* arguments. (#384523, Yevgen Muntyan)
51         
52 2006-12-27  Ryan Lortie  <desrt@desrt.ca>
53
54         * glib/ghash.c: cache the value of the hash function
55         in the GHashNode.  this speeds up resizing the hash
56         table and it also allows a slight optimisation on
57         lookups.  (#388332)
58
59 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
60
61         * glib/gunicollate.c (g_utf8_collate_key): Don't modify
62         the current locale.  (#389300)
63
64 2006-12-26  Matthias Clasen  <mclasen@redhat.com>
65
66         * glib/gutf8.c: Add hints for locale-dependent interfaces.
67         * glib/gconvert.c: Add hints for locale-dependent interfaces.
68
69         * glib/gconvert.c (g_get_filename_charsets): Improve
70         formatting of docs. 
71
72 2006-12-26  Behdad Esfahbod  <behdad@gnome.org>
73
74         * configure.in: Use libtool to determine shared library suffix.
75         (#357245)
76
77 2006-12-24  Matthias Clasen  <mclasen@redhat.com>
78
79         * tests/run-collate-tests.sh:
80         * tests/unicode-collate.c: Silently skip tests if
81         we can't set LC_COLLATE to en_US.  (#336438)
82
83 2006-12-19  Matthias Clasen  <mclasen@redhat.com>
84
85         * glib/gkeyfile.c (g_key_file_is_key_name): Accept
86         '/', '+' and '.' in key names, since gnome-vfs uses
87         mime types as keys in some cache.
88
89         * tests/keyfile-test.c: Tests for the above.
90
91 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
92
93         * configure.in: Fix the broken poll test.  (#387260,
94         Christian Persch)
95
96         * glib/gmain.c (child_watch_helper_thread): Readd a
97         return which was removed as dead code a while ago.
98         icc may consider it dead, but gcc doesn't like non-void
99         functions without a return...  (#354707)
100
101         * tests/Makefile.am: Try a different fix for bug 346373.
102
103 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
104
105         Fix bug 161288:
106
107         * configure.in: Check for wcslen.
108
109         * glib/gnulib/vasnprintf.c: Handle wcslen missing.
110
111 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
112
113         * glib/gkeyfile.c: Accept '@' in locale names.
114
115         * glib/gkeyfile.c: Tighten up the check for allowed
116         key and group names.  (#343191, Tommi Komulainen)
117
118         * tests/keyfile-test.c: Test handling of key and group names.
119
120         * tests/Makefile.am: Don't use $RANDOM if the shell doesn't
121         have it.  (#346373, Thomas Klausner)
122
123 2006-12-17  Behdad Esfahbod  <behdad@gnome.org>
124
125         * glib/gstring.c: Improve docs about string functions taking a
126         length.  (#378727)
127
128 2006-12-17  Matthias Clasen  <mclasen@redhat.com>
129
130         * glib/gconvert.c:
131         * glib/gutf8.c (_g_charset_get_aliases): Put the G_GNUC_INTERNAL
132         where gcc doesn't complain about it.
133
134         * glib/ghash.c: Make ref_count an int to avoid compiler
135         warnings.
136
137         * configure.in: Use AC_LANG_SOURCE for the clock test.
138         
139         * glib/gthreadpool.h:
140         * glib/gthreadpool.c (g_thread_pool_free): Don't use "wait"
141         as parameter name.  (#379207, Christian Biere)
142
143         * glib/gspawn.c: Refer to g_child_watch_add() in addition
144         to waitpid().
145
146         * glib/gstrfuncs.c (g_strndup, g_strnfill): Move docs
147         inline, and improve wording.  (#372598, Behdad Esfahbod)
148
149         * glib/gspawn.c: Add some pointers to the gdk_spawn_
150         variants.  (#338134, Federico Mena Quintero)
151
152         * configure.in: Make montonic clock test work again. Does
153         AC_COMPILE_IFELSE not get confdefs ? Also, move the clock
154         tests below the thread checks to fix #364663.
155
156         * tests/run-markup-tests.sh: Don't use diff -u  (#380801,
157         Marek Rouchal)
158
159         * glib/gspawn.c: Fix the recent fdwalk()-related changes
160         to not break mapping-test.  (#286838, Marco Barisione)
161
162         * glib/gstring.c (g_string_chunk_new): Don't shadow size.
163         (#386760, Kazuki IWAMOTO)
164
165 2006-12-16  Matthias Clasen  <mclasen@redhat.com>
166
167         * glib/gstring.c: Move more documentation inline.
168
169         * configure.in: Use AC_COMPILE_IFELSE for the monotonic
170         clock test.  (#362918, Han-Wen Nienhuys, Jeremy Lainé)
171
172         * glib/gstring.c: Move documentation inline. 
173
174 2006-12-15  Matthias Clasen  <mclasen@redhat.com>
175
176         * glib/giochannel.h: Make ref_count a gint to avoid
177         compiler warnings.  (#321977, Andrew Paprocki)
178
179         * configure.in: On Solaris, set CFLAGS and LDFLAGS that
180         work both with Sun cc and gcc.  (#315061, Lazlo Peter)
181
182         * glib/gspawn.c: Undefine READ_OK to fix the build on
183         old versions of Darwin.  (#327800)
184
185         * glib/glib.symbols:
186         * glib/gstring.[hc] (g_string_chunk_clear): Add a function
187         for clearing a GStringChunk. (#364608, Matt Barnes)
188
189         * glib/guniprop.c (interval_compare): Avoid a compiler
190         warning.
191
192         * glib/gspawn.c (do_exec): Call set_cloexec() with
193         the right parameters.  (#386252, Guillaume Desmottes)
194
195 2006-12-15  Matthias Clasen  <mclasen@redhat.com>
196
197         Fix #357585, Padraig O'Briain.
198         
199         * configure.in: Check for fdwalk.
200         
201         * glib/gspawn.c (do_exec): Use fdwalk() to close all
202         file descriptors. 
203
204         * glib/gspawn.c (fdwalk): Fallback implementation of
205         fdwalk.
206
207 2006-12-14  Matthias Clasen  <mclasen@redhat.com>
208
209         * glib/gconvert.c (open_converter): Don't use alloca
210         and avoid allocating memory for small keys that are 
211         already cached.  (#172406, Morten Welinder)
212
213         * glib/gmain.c (g_child_watch_add_full): Improve the docs.
214         (#345569, Tim-Philipp Müller)
215
216         * glib/gkeyfile.c (g_key_file_add_group): If the group
217         is already there, make it current.  (#385910, Joe Halliwell)
218
219         * tests/keyfile-test.c: Add a test for duplicate groups/keys.
220
221 2006-12-13  Matthias Clasen  <mclasen@redhat.com>
222
223         * m4macros/glib-gettext.m4: Require AC_CANONICAL_HOST in
224         GLIB_WITH_NLS.  (#385132, Laszlo Peter)
225
226 2006-12-12  Matthias Clasen  <mclasen@redhat.com>
227
228         * configure.in: Add a check for broken poll on Mac OS X.
229
230         * glib/gmain.c: Use poll emulation on OS X.  (#302672, Toby Peterson,
231         patch by Dave Vasilevsky)
232
233 2006-12-11  Matthias Clasen  <mclasen@redhat.com>
234
235         * glib/gatomic.c: Don't use local numeric labels in
236         inline assembler on AIX.  (#316434, Hans Rosenfeld)
237
238         * glib/gunicode.h (g_utf8_next_char): Cast to const char *,
239         not char *.  (#138153, Nikolai Weibull)
240
241 Wed Nov 22 16:09:13 2006  Tim Janik  <timj@gtk.org>
242
243         * glib/gmacros.h: added G_GNUC_MAY_ALIAS, suggested by Mathias
244         Hasselmann in bug #335341, fixes bug #335853.
245
246 2006-11-15  Matthias Clasen  <mclasen@redhat.com>
247
248         * m4macros/glib-gettext.m4: Apply a patch from James 
249         Henstridge for compatibility with automake 2.60 (#343825)
250
251 2006-11-14  Behdad Esfahbod  <behdad@gnome.org>
252
253         * sanity_check: Replace bash-specific == with sh-understood =.
254         Fixes bug #373864.
255
256 2006-11-05  Hans Breuer  <hans@breuer.org>
257
258         * glib/makefile.msc.in : glib/ version not the gobject/ 
259         one I accidentially commited. Fixes bug #371074.
260         
261 2006-11-05  Tor Lillqvist  <tml@novell.com>
262
263         * makefile.mingw
264         * gmodule/makefile.mingw.in
265         * glib/makefile.mingw.in
266         * gobject/makefile.mingw.in
267         * gthread/makefile.mingw.in
268         * tests/makefile.mingw.in: Remove from CVS. Haven't been
269         maintained or distributed for long.
270
271 2006-10-26  Pascal Terjan  <pterjan@linuxfr.org>
272
273         * glib/libcharset/localcharset.c: Fix small leak on failed
274         realloc in _g_locale_get_charset_aliases (#338582)
275
276 2006-10-16  Behdad Esfahbod  <behdad@gnome.org>
277
278         * glib/gnulib/Makefile.am: Add $(GLIB_DEBUG_FLAGS).  (#362543,
279         Peter Kjellerstedt)
280
281 2006-10-15  Sebastian Wilhelmi  <seppi@seppi.de>
282
283         * tests/Makefile.am: Compile errorcheck-mutex-test with thread
284         libraries explicitly. (#74748, Javier Villavicencio)
285
286 2006-10-08  Matthias Clasen  <mclasen@redhat.com>
287
288         Add a way to obtain Unicode script information.  (#348348,
289         Marco Barisione)
290
291         * glib/glib.symbols:
292         * glib/gunicode.h: Add GUnicodeScript enumeration and
293         g_unichar_get_script. 
294         
295         * glib/guniprop.c: Implement g_unichar_get_script.
296
297         * glib/gscripttable.h: Generated private header containing
298         script tables.
299
300         * glib/gen-script-table.pl: Script to generate gscripttable.h.
301
302         * glib/Makefile.am: Update
303
304 2006-10-08  Matthias Clasen  <mclasen@redhat.com>
305
306         * tests/run-markup-tests.sh: Small portability fix.  (#347944,
307         Dan McMahill)
308
309 2006-10-07  Tor Lillqvist  <tml@novell.com>
310
311         * glib/gwin32.c (get_package_directory_from_module)
312         (g_win32_get_package_installation_directory): g_strdup the keys
313         that we are passed before adding them to the hash tables, to guard
314         against the caller freeing them. (#355955, Andreas Köhler)
315
316 2006-10-06  Matthias Clasen  <mclasen@redhat.com> 
317
318         * glib/gtimer.c: Fix a typo.  (#359190)
319
320 2006-10-02  Behdad Esfahbod  <behdad@gnome.org>
321
322         * glib/Makefile.am:
323         * gobject/Makefile.am:
324         Include pltcheck.sh in EXTRA_DIST, and remove redefinition of TESTS.
325         (#358966)
326
327 2006-10-01  Matthias Clasen  <mclasen@redhat.com>
328
329         * glib/gtimer.c (g_usleep): Use nsleep to implement
330         g_usleep on AIX.  (#321974, Andrew Paprocki)
331
332         * configure.in: Check for nsleep
333
334         * glib/gmain.c: Fix typos in doc comments.  
335         (#358421, Tom Tromey)
336
337 2006-09-30  Matthias Clasen  <mclasen@redhat.com>
338
339         * glib/pltcheck.sh: A script to check PLT entries.
340         * glib/Makefile.am (TESTS): Run pltcheck.sh
341
342         * glib/*: Fix includes to correct some issues with
343         PLT entries.  (#354522, Behdad Esfahbod)
344
345 2006-09-17  Hans Breuer  <hans@breuer.org>
346
347         * glib/makefile.msc.in gobject/makefile.msc.in : better filtering
348         of G_GNUC_* stuff when generating .def files. Now also works with
349         newer (less tolerant) linkers, e.g. from vc2500e
350
351 2006-09-10  Matthias Clasen  <mclasen@redhat.com>
352
353         * glib/gbacktrace.c: Assume string.h is available. 
354         (#354523, Behdad Esfahbod)
355
356         * configure.in: Bump version to 2.13.0
357
358         * glib/glib.symbols:
359         * glib/gmain.[hc]: Add functions to create approximate
360         timeouts.  (#353942, Arjan van de Ven)
361
362         * glib/gstdio.c (g_rename): Initialize save_errno.
363         (#355206, Mike Edenfield)
364
365 2006-09-03  Matthias Clasen  <mclasen@redhat.com>
366
367         * glib/gerror.c: Allocate GErrors using the slice allocator.
368         (#354054, Matt Barnes)
369
370 2006-09-02  Matthias Clasen  <mclasen@redhat.com>
371
372         * glib/gtimer.c: Forgotten HAVE_CLOCK_GETTIME.
373
374 2006-09-02  Tor Lillqvist  <tml@novell.com>
375
376         * glib/gutils.c (g_get_any_init_do): Correct C99ism (mixed
377         declarations and code) in Win32 ifdef branch. (#353903, Mike
378         Edenfield)
379
380 2006-09-01  Abel Cheung  <abel@oaka.org>
381
382         * configure.in: Added 'dz' 'hy' to ALL_LINGUAS.
383
384 2006-09-01  Matthias Clasen  <mclasen@redhat.com>
385
386         * configure.in: Check for CLOCK_MONOTONIC.
387
388         * glib/gtimer.c: Only use clock_gettime if we
389         have a monotonic clock.
390
391 2006-08-31  Matthias Clasen  <mclasen@redhat.com>
392
393         * configure.in: Add missing includes to a few test
394         programs.  (#353580, Chris Wilson)
395
396 2006-08-30  Matthias Clasen  <mclasen@redhat.com>
397
398         * glib/gmarkup.c (g_markup_vprintf_escaped): Don't call
399         va_end on caller-provided va_args.  (#353584, Chris Wilson)
400
401 2006-08-29  Tor Lillqvist  <tml@novell.com>
402
403         Remove support for Windows 9x/ME, as will be done also in Pango
404         and GTK+. GTK+ hasn't worked on Win9x since 2.6 or 2.8 anyway, so
405         it's pretty pointless to keep the Win9x code in here either. If
406         somebody is interested, the code can always be found in older GLib
407         versions, and in CVS.
408
409         * glib/gdir.c
410         * glib/gfileutils.c
411         * glib/gspawn-win32-helper.c
412         * glib/gspawn-win32.c
413         * glib/gstdio.c
414         * glib/gutils.c
415         * glib/gwin32.c
416         * glib/gwin32.h: Remove the G_WIN32_IS_NT_BASED() and
417         G_WIN32_HAVE_WIDECHAR_API() tests and their false (Win9x)
418         branches, and any variables or static functions used only by the
419         Win9x branches.
420
421         * glib/gwin32.c (g_win32_windows_version_init): Call g_error() if
422         run on Win9x.
423
424 2006-08-27  Matthias Clasen  <mclasen@redhat.com>
425
426         * configure.in: Fix pthread compiler flag detection.
427
428         * glib/gtimer.c: Use Posix monotonic clocks instead of 
429         gettimeofday when available.  (#336114, William Jon McCann)
430
431 2006-08-26  Matthias Clasen  <mclasen@redhat.com>
432
433         * glib/gutils.h: 
434         * glib/gscanner.c: Fix some typos.  (#351741, Kjartan Maraas)
435
436 2006-08-25  Matthias Clasen  <mclasen@redhat.com>
437
438         * configure.in: Fix the pthread compiler flag detection.
439
440         * glib/gunicode.h: 
441         * glib/gutf8.c (_g_utf8_make_valid): Rename make_valid_utf8
442         from gconvert.c, move it to gutf8.c, and export it privately.
443
444         * glib/gconvert.c (g_filename_display_name): Adjust callers.
445
446         * glib/gkeyfile.c: Use _g_utf8_make_valid() in a number of
447         places to ensure error messages are valid UTF-8.  (#351853,
448         Simon Budig)
449
450 2006-08-22  Matthias Clasen <mclasen@redhat.com>
451
452         * Branch for 2.12
453