Actually link gthread against librt. (#394641, Marco Pesenti Gritti)
[platform/upstream/glib.git] / ChangeLog
1 2007-01-10  Matthias Clasen  <mclasen@redhat.com>
2
3         * configure.in: Actually link gthread against librt.
4         (#394641, Marco Pesenti Gritti)
5
6 2007-01-10  Matthias Clasen  <mclasen@redhat.com>
7
8         * glib/gkeyfile.c (g_key_file_is_key_name): Grr, allow '*' in keys,
9         too.  (#394262)
10         
11 2007-01-09  Behdad Esfahbod  <behdad@gnome.org>
12
13         * glib/gutils.h: Use a more optimized g_bit_storage() when gcc is
14         available.  (#371670, Daniel Elstner)
15
16 2007-01-08  Matthias Clasen  <mclasen@redhat.com>
17
18         * gthread/gthread-posix.c (g_thread_impl_init): Don't
19         use _SC_MONOTONIC_CLOCK unless USE_CLOCK_GETTIME is
20         defined.  (#394150)
21
22 2007-01-07  Matthias Clasen  <mclasen@redhat.com>
23
24         Don't link glib against libpthread.  (#393812)
25         
26         * configure.in: Link gthread against librt, not glib itself.
27
28         * glib/gthread.h:
29         * glib/gthread.c: Add a new thread function, gettime.
30
31         * glib/gtimer.c: Use gettime instead of directly working with
32         the various system interfaces.
33
34         * gthread/gthread-impl.c:
35         * gthread/gthread-posix.c:
36         * gthread/gthread-win32.c: Implement gettime.
37         
38 2007-01-07  Matthias Clasen  <mclasen@redhat.com>
39
40         * m4macros/glib-2.0.m4: Use PKG_PROG_PKG_CONFIG.  (#392636,
41         Yevgen Muntyan)
42
43 2007-01-07  Tor Lillqvist  <tml@novell.com>
44
45         * glib/giowin32.c: Handle GIOChannels for file descriptors
46         connected to the console separately. This would typically be the
47         fd 0, 1, or 2 (if not redirected) in a console application. For
48         such fds we don't need a separate thread, as console HANDLEs are
49         waitable objects. (#359202, Michiel de Hoon)
50
51 2007-01-04  Behdad Esfahbod  <behdad@gnome.org>
52
53         * tests/bit-test.c (builtin_bit_nth_lsf1), (builtin_bit_nth_lsf2),
54         (builtin_bit_nth_msf): Fix tests on x86_64.
55
56 2007-01-03  Behdad Esfahbod  <behdad@gnome.org>
57
58         * glib/goption.c (_g_unichar_get_width), (_g_utf8_strwidth),
59         (calculate_max_length), (print_entry), (print_help): Take zerowidth
60         and double-width chars into consideration when computing width of a
61         string.  Also fix another bug in width computation. (#346955)
62
63         * glib/guniprop.c (g_unichar_iszerowidth): Fix typo.  It was not
64         working correctly.
65
66 2007-01-03  Behdad Esfahbod  <behdad@gnome.org>
67
68         * glib/glib.symbols:
69         * glib/gunicode.h:
70         * glib/guniprop.c: Add g_unichar_iszerowidth(). (#347645)
71
72 2007-01-03  Behdad Esfahbod  <behdad@gnome.org>
73
74         * glib/gutils.h: Fix bug in g_bit_nth_lsf (#371631) and use
75         __builtin_clzl for g_bit_storage if available (#371670).
76
77         * tests/Makefile.am:
78         * tests/bit-test.c: New test, to test g_bit_* operations against
79         naive and builtin implementations.
80
81 2007-01-02  Behdad Esfahbod  <behdad@gnome.org>
82
83         * configure.in: Avoid more warnings from running libtool --config.
84         (#391364)
85
86 2007-01-03  Michael Natterer  <mitch@imendio.com>
87
88         * removed all .cvsignore files. SVN doesn't need them.
89
90 2007-01-02  Emmanuele Bassi  <ebassi@gnome.org>
91
92         * glib/gbookmarkfile.c (expand_exec_line): Add support for
93         expanding the desktop entry spec variables %U (list of URIs)
94         and %F (list of filenames), so that using the command line
95         from the Exec and TryExec key of a desktop entry file works
96         as intended.
97
98 2007-01-02  Matthias Clasen  <mclasen@redhat.com>
99
100         * configure.in: Avoid warnings from running libtool --config.
101         (#391364, Loïc Minier)
102
103 2007-01-02  Matthias Clasen  <mclasen@redhat.com>
104
105         * glib/gbookmarkfile.c (g_bookmark_file_get_app_info): 
106         Return an error if the uri is bad. (#391370, Maciej Piechotka)
107
108 2007-01-02  Matthias Clasen  <mclasen@redhat.com>
109
110         * glib/glib.symbols: Guard g_slice_debug_tree_statistics
111         by G_ENABLE_DEBUG.  (#390940, Kazuki Iwamoto)
112
113 2007-01-02  Michael Natterer  <mitch@imendio.com>
114
115         * configure.in
116         * Makefile.am: remove references to build/ until a proper decision
117         has been made what to do with it.
118
119 2007-01-01  Matthias Clasen  <mclasen@redhat.com>
120
121         * glib-gettextize.in: Silence autoconf warnings about
122         datarootdir.  (#391367, Loïc Minier)
123
124 2006-12-31  Matthias Clasen  <mclasen@redhat.com>
125
126         * glib/gslice.c: Fix some C99isms.  (#390913, Kazuki Iwamoto)
127
128 Fri Dec 29 13:28:07 2006  Tim Janik  <timj@imendio.com>
129
130         * glib/gslice.c: turned detection of too late g_thread_init() calls
131         into a warning. this is a temporary work-around for some head-room
132         to fix affected programs, memory corruption still occours regardless.
133
134 2006-12-29  Matthias Clasen  <mclasen@redhat.com>
135
136         * tests/gobject/Makefile.am:
137         * tests/gobject/dynamictype.c: New test for dynamic type 
138         registration macros. 
139
140 Thu Dec 28 21:14:45 2006  Tim Janik  <timj@imendio.com>
141
142         * glib/gslice.c: removed pthread-dependant debugging bits, the code
143         was already converted to GMutex. this obsoletes Tor's recent fixups.
144
145 2006-12-28  Tor Lillqvist  <tml@novell.com>
146
147         * glib/gutils.h (G_WIN32_DLLMAIN_FOR_DLL_NAME)
148         * glib/gutils.c (get_windows_directory_root): : Use only the wide
149         character API here, too.
150
151         * glib/gslice.c: Make it compile on Win32 without pthreads: Use a
152         Win32 critical section instead.
153
154         * glib/gmessages.c (g_logv): On Win32, if we get a fatal error
155         message while being debugged we break into the debugger with
156         G_BREAKPOINT(). Don't call abort() if the user is foolhardy enough
157         to continue after the breakpoint. The user presumably knows what
158         he is doing and deserves what he gets. (#376645, Andreas Köhler)
159
160 Thu Dec 28 12:50:31 2006  Tim Janik  <timj@imendio.com>
161
162         * glib/gslice.h, glib/gslice.c: implemented static debugging
163         hash-tree to validate slice adresses and sizes with G_SLICE=debug-blocks.
164         use abort() to exit in mem_error() to allow catching of these in gdb.
165         abort programs with a descriptive error message if g_thread_init() is
166         called after GSlice was in use. previously this just silently corrupted
167         the magazines.
168
169         * glib/ghash.c (struct _GHashNode): reordered fields to keep 8-byte 
170         pointer alignment on 64bit systems and request smaller slice sizes
171         on 32bit systems.
172
173         * tests/slice-test.c: support '~' option flag to introduce slice 
174         allocation/release corruption with a significant probability. this
175         allowes testing of G_SLICE=debug-blocks.
176
177 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
178
179         * glib/gconvert.[hc]:
180         * glib/gfileutils.c:
181         * glib/giochannel.c:
182         * glib/goption.c:
183         * glib/gspawn.c:
184         * glib/gunicollate.c:
185         * glib/gutils.c:
186         * tests/timeloop-basic.c: 
187         Consistently use gsize rather than size_t.  (#333310,
188         Morten Welinder)
189
190 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
191
192         * configure.in: Use AC_CACHE_CHECK for the nl_langinfo
193         check.  (#304517, Lőrinczy Zsigmond)
194
195 2006-12-27  Tor Lillqvist  <tml@novell.com>
196
197         * glib/gwin32.h
198         * glib/gwin32.c (get_package_directory_from_module)
199         (g_win32_get_package_installation_directory)
200         (g_win32_get_package_installation_subdirectory): Add const to
201         gchar* arguments. (#384523, Yevgen Muntyan)
202         
203 2006-12-27  Ryan Lortie  <desrt@desrt.ca>
204
205         * glib/ghash.c: cache the value of the hash function
206         in the GHashNode.  this speeds up resizing the hash
207         table and it also allows a slight optimisation on
208         lookups.  (#388332)
209
210 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
211
212         * glib/gunicollate.c (g_utf8_collate_key): Don't modify
213         the current locale.  (#389300)
214
215 2006-12-26  Matthias Clasen  <mclasen@redhat.com>
216
217         * glib/gutf8.c: Add hints for locale-dependent interfaces.
218         * glib/gconvert.c: Add hints for locale-dependent interfaces.
219
220         * glib/gconvert.c (g_get_filename_charsets): Improve
221         formatting of docs. 
222
223 2006-12-26  Behdad Esfahbod  <behdad@gnome.org>
224
225         * configure.in: Use libtool to determine shared library suffix.
226         (#357245)
227
228 2006-12-24  Matthias Clasen  <mclasen@redhat.com>
229
230         * tests/run-collate-tests.sh:
231         * tests/unicode-collate.c: Silently skip tests if
232         we can't set LC_COLLATE to en_US.  (#336438)
233
234 2006-12-19  Matthias Clasen  <mclasen@redhat.com>
235
236         * glib/gkeyfile.c (g_key_file_is_key_name): Accept
237         '/', '+' and '.' in key names, since gnome-vfs uses
238         mime types as keys in some cache.
239
240         * tests/keyfile-test.c: Tests for the above.
241
242 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
243
244         * configure.in: Fix the broken poll test.  (#387260,
245         Christian Persch)
246
247         * glib/gmain.c (child_watch_helper_thread): Readd a
248         return which was removed as dead code a while ago.
249         icc may consider it dead, but gcc doesn't like non-void
250         functions without a return...  (#354707)
251
252         * tests/Makefile.am: Try a different fix for bug 346373.
253
254 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
255
256         Fix bug 161288:
257
258         * configure.in: Check for wcslen.
259
260         * glib/gnulib/vasnprintf.c: Handle wcslen missing.
261
262 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
263
264         * glib/gkeyfile.c: Accept '@' in locale names.
265
266         * glib/gkeyfile.c: Tighten up the check for allowed
267         key and group names.  (#343191, Tommi Komulainen)
268
269         * tests/keyfile-test.c: Test handling of key and group names.
270
271         * tests/Makefile.am: Don't use $RANDOM if the shell doesn't
272         have it.  (#346373, Thomas Klausner)
273
274 2006-12-17  Behdad Esfahbod  <behdad@gnome.org>
275
276         * glib/gstring.c: Improve docs about string functions taking a
277         length.  (#378727)
278
279 2006-12-17  Matthias Clasen  <mclasen@redhat.com>
280
281         * glib/gconvert.c:
282         * glib/gutf8.c (_g_charset_get_aliases): Put the G_GNUC_INTERNAL
283         where gcc doesn't complain about it.
284
285         * glib/ghash.c: Make ref_count an int to avoid compiler
286         warnings.
287
288         * configure.in: Use AC_LANG_SOURCE for the clock test.
289         
290         * glib/gthreadpool.h:
291         * glib/gthreadpool.c (g_thread_pool_free): Don't use "wait"
292         as parameter name.  (#379207, Christian Biere)
293
294         * glib/gspawn.c: Refer to g_child_watch_add() in addition
295         to waitpid().
296
297         * glib/gstrfuncs.c (g_strndup, g_strnfill): Move docs
298         inline, and improve wording.  (#372598, Behdad Esfahbod)
299
300         * glib/gspawn.c: Add some pointers to the gdk_spawn_
301         variants.  (#338134, Federico Mena Quintero)
302
303         * configure.in: Make montonic clock test work again. Does
304         AC_COMPILE_IFELSE not get confdefs ? Also, move the clock
305         tests below the thread checks to fix #364663.
306
307         * tests/run-markup-tests.sh: Don't use diff -u  (#380801,
308         Marek Rouchal)
309
310         * glib/gspawn.c: Fix the recent fdwalk()-related changes
311         to not break mapping-test.  (#286838, Marco Barisione)
312
313         * glib/gstring.c (g_string_chunk_new): Don't shadow size.
314         (#386760, Kazuki IWAMOTO)
315
316 2006-12-16  Matthias Clasen  <mclasen@redhat.com>
317
318         * glib/gstring.c: Move more documentation inline.
319
320         * configure.in: Use AC_COMPILE_IFELSE for the monotonic
321         clock test.  (#362918, Han-Wen Nienhuys, Jeremy Lainé)
322
323         * glib/gstring.c: Move documentation inline. 
324
325 2006-12-15  Matthias Clasen  <mclasen@redhat.com>
326
327         * glib/giochannel.h: Make ref_count a gint to avoid
328         compiler warnings.  (#321977, Andrew Paprocki)
329
330         * configure.in: On Solaris, set CFLAGS and LDFLAGS that
331         work both with Sun cc and gcc.  (#315061, Lazlo Peter)
332
333         * glib/gspawn.c: Undefine READ_OK to fix the build on
334         old versions of Darwin.  (#327800)
335
336         * glib/glib.symbols:
337         * glib/gstring.[hc] (g_string_chunk_clear): Add a function
338         for clearing a GStringChunk. (#364608, Matt Barnes)
339
340         * glib/guniprop.c (interval_compare): Avoid a compiler
341         warning.
342
343         * glib/gspawn.c (do_exec): Call set_cloexec() with
344         the right parameters.  (#386252, Guillaume Desmottes)
345
346 2006-12-15  Matthias Clasen  <mclasen@redhat.com>
347
348         Fix #357585, Padraig O'Briain.
349         
350         * configure.in: Check for fdwalk.
351         
352         * glib/gspawn.c (do_exec): Use fdwalk() to close all
353         file descriptors. 
354
355         * glib/gspawn.c (fdwalk): Fallback implementation of
356         fdwalk.
357
358 2006-12-14  Matthias Clasen  <mclasen@redhat.com>
359
360         * glib/gconvert.c (open_converter): Don't use alloca
361         and avoid allocating memory for small keys that are 
362         already cached.  (#172406, Morten Welinder)
363
364         * glib/gmain.c (g_child_watch_add_full): Improve the docs.
365         (#345569, Tim-Philipp Müller)
366
367         * glib/gkeyfile.c (g_key_file_add_group): If the group
368         is already there, make it current.  (#385910, Joe Halliwell)
369
370         * tests/keyfile-test.c: Add a test for duplicate groups/keys.
371
372 2006-12-13  Matthias Clasen  <mclasen@redhat.com>
373
374         * m4macros/glib-gettext.m4: Require AC_CANONICAL_HOST in
375         GLIB_WITH_NLS.  (#385132, Laszlo Peter)
376
377 2006-12-12  Matthias Clasen  <mclasen@redhat.com>
378
379         * configure.in: Add a check for broken poll on Mac OS X.
380
381         * glib/gmain.c: Use poll emulation on OS X.  (#302672, Toby Peterson,
382         patch by Dave Vasilevsky)
383
384 2006-12-11  Matthias Clasen  <mclasen@redhat.com>
385
386         * glib/gatomic.c: Don't use local numeric labels in
387         inline assembler on AIX.  (#316434, Hans Rosenfeld)
388
389         * glib/gunicode.h (g_utf8_next_char): Cast to const char *,
390         not char *.  (#138153, Nikolai Weibull)
391
392 Wed Nov 22 16:09:13 2006  Tim Janik  <timj@gtk.org>
393
394         * glib/gmacros.h: added G_GNUC_MAY_ALIAS, suggested by Mathias
395         Hasselmann in bug #335341, fixes bug #335853.
396
397 2006-11-15  Matthias Clasen  <mclasen@redhat.com>
398
399         * m4macros/glib-gettext.m4: Apply a patch from James 
400         Henstridge for compatibility with automake 2.60 (#343825)
401
402 2006-11-14  Behdad Esfahbod  <behdad@gnome.org>
403
404         * sanity_check: Replace bash-specific == with sh-understood =.
405         Fixes bug #373864.
406
407 2006-11-05  Hans Breuer  <hans@breuer.org>
408
409         * glib/makefile.msc.in : glib/ version not the gobject/ 
410         one I accidentially commited. Fixes bug #371074.
411         
412 2006-11-05  Tor Lillqvist  <tml@novell.com>
413
414         * makefile.mingw
415         * gmodule/makefile.mingw.in
416         * glib/makefile.mingw.in
417         * gobject/makefile.mingw.in
418         * gthread/makefile.mingw.in
419         * tests/makefile.mingw.in: Remove from CVS. Haven't been
420         maintained or distributed for long.
421
422 2006-10-26  Pascal Terjan  <pterjan@linuxfr.org>
423
424         * glib/libcharset/localcharset.c: Fix small leak on failed
425         realloc in _g_locale_get_charset_aliases (#338582)
426
427 2006-10-16  Behdad Esfahbod  <behdad@gnome.org>
428
429         * glib/gnulib/Makefile.am: Add $(GLIB_DEBUG_FLAGS).  (#362543,
430         Peter Kjellerstedt)
431
432 2006-10-15  Sebastian Wilhelmi  <seppi@seppi.de>
433
434         * tests/Makefile.am: Compile errorcheck-mutex-test with thread
435         libraries explicitly. (#74748, Javier Villavicencio)
436
437 2006-10-08  Matthias Clasen  <mclasen@redhat.com>
438
439         Add a way to obtain Unicode script information.  (#348348,
440         Marco Barisione)
441
442         * glib/glib.symbols:
443         * glib/gunicode.h: Add GUnicodeScript enumeration and
444         g_unichar_get_script. 
445         
446         * glib/guniprop.c: Implement g_unichar_get_script.
447
448         * glib/gscripttable.h: Generated private header containing
449         script tables.
450
451         * glib/gen-script-table.pl: Script to generate gscripttable.h.
452
453         * glib/Makefile.am: Update
454
455 2006-10-08  Matthias Clasen  <mclasen@redhat.com>
456
457         * tests/run-markup-tests.sh: Small portability fix.  (#347944,
458         Dan McMahill)
459
460 2006-10-07  Tor Lillqvist  <tml@novell.com>
461
462         * glib/gwin32.c (get_package_directory_from_module)
463         (g_win32_get_package_installation_directory): g_strdup the keys
464         that we are passed before adding them to the hash tables, to guard
465         against the caller freeing them. (#355955, Andreas Köhler)
466
467 2006-10-06  Matthias Clasen  <mclasen@redhat.com> 
468
469         * glib/gtimer.c: Fix a typo.  (#359190)
470
471 2006-10-02  Behdad Esfahbod  <behdad@gnome.org>
472
473         * glib/Makefile.am:
474         * gobject/Makefile.am:
475         Include pltcheck.sh in EXTRA_DIST, and remove redefinition of TESTS.
476         (#358966)
477
478 2006-10-01  Matthias Clasen  <mclasen@redhat.com>
479
480         * glib/gtimer.c (g_usleep): Use nsleep to implement
481         g_usleep on AIX.  (#321974, Andrew Paprocki)
482
483         * configure.in: Check for nsleep
484
485         * glib/gmain.c: Fix typos in doc comments.  
486         (#358421, Tom Tromey)
487
488 2006-09-30  Matthias Clasen  <mclasen@redhat.com>
489
490         * glib/pltcheck.sh: A script to check PLT entries.
491         * glib/Makefile.am (TESTS): Run pltcheck.sh
492
493         * glib/*: Fix includes to correct some issues with
494         PLT entries.  (#354522, Behdad Esfahbod)
495
496 2006-09-17  Hans Breuer  <hans@breuer.org>
497
498         * glib/makefile.msc.in gobject/makefile.msc.in : better filtering
499         of G_GNUC_* stuff when generating .def files. Now also works with
500         newer (less tolerant) linkers, e.g. from vc2500e
501
502 2006-09-10  Matthias Clasen  <mclasen@redhat.com>
503
504         * glib/gbacktrace.c: Assume string.h is available. 
505         (#354523, Behdad Esfahbod)
506
507         * configure.in: Bump version to 2.13.0
508
509         * glib/glib.symbols:
510         * glib/gmain.[hc]: Add functions to create approximate
511         timeouts.  (#353942, Arjan van de Ven)
512
513         * glib/gstdio.c (g_rename): Initialize save_errno.
514         (#355206, Mike Edenfield)
515
516 2006-09-03  Matthias Clasen  <mclasen@redhat.com>
517
518         * glib/gerror.c: Allocate GErrors using the slice allocator.
519         (#354054, Matt Barnes)
520
521 2006-09-02  Matthias Clasen  <mclasen@redhat.com>
522
523         * glib/gtimer.c: Forgotten HAVE_CLOCK_GETTIME.
524
525 2006-09-02  Tor Lillqvist  <tml@novell.com>
526
527         * glib/gutils.c (g_get_any_init_do): Correct C99ism (mixed
528         declarations and code) in Win32 ifdef branch. (#353903, Mike
529         Edenfield)
530
531 2006-09-01  Abel Cheung  <abel@oaka.org>
532
533         * configure.in: Added 'dz' 'hy' to ALL_LINGUAS.
534
535 2006-09-01  Matthias Clasen  <mclasen@redhat.com>
536
537         * configure.in: Check for CLOCK_MONOTONIC.
538
539         * glib/gtimer.c: Only use clock_gettime if we
540         have a monotonic clock.
541
542 2006-08-31  Matthias Clasen  <mclasen@redhat.com>
543
544         * configure.in: Add missing includes to a few test
545         programs.  (#353580, Chris Wilson)
546
547 2006-08-30  Matthias Clasen  <mclasen@redhat.com>
548
549         * glib/gmarkup.c (g_markup_vprintf_escaped): Don't call
550         va_end on caller-provided va_args.  (#353584, Chris Wilson)
551
552 2006-08-29  Tor Lillqvist  <tml@novell.com>
553
554         Remove support for Windows 9x/ME, as will be done also in Pango
555         and GTK+. GTK+ hasn't worked on Win9x since 2.6 or 2.8 anyway, so
556         it's pretty pointless to keep the Win9x code in here either. If
557         somebody is interested, the code can always be found in older GLib
558         versions, and in CVS.
559
560         * glib/gdir.c
561         * glib/gfileutils.c
562         * glib/gspawn-win32-helper.c
563         * glib/gspawn-win32.c
564         * glib/gstdio.c
565         * glib/gutils.c
566         * glib/gwin32.c
567         * glib/gwin32.h: Remove the G_WIN32_IS_NT_BASED() and
568         G_WIN32_HAVE_WIDECHAR_API() tests and their false (Win9x)
569         branches, and any variables or static functions used only by the
570         Win9x branches.
571
572         * glib/gwin32.c (g_win32_windows_version_init): Call g_error() if
573         run on Win9x.
574
575 2006-08-27  Matthias Clasen  <mclasen@redhat.com>
576
577         * configure.in: Fix pthread compiler flag detection.
578
579         * glib/gtimer.c: Use Posix monotonic clocks instead of 
580         gettimeofday when available.  (#336114, William Jon McCann)
581
582 2006-08-26  Matthias Clasen  <mclasen@redhat.com>
583
584         * glib/gutils.h: 
585         * glib/gscanner.c: Fix some typos.  (#351741, Kjartan Maraas)
586
587 2006-08-25  Matthias Clasen  <mclasen@redhat.com>
588
589         * configure.in: Fix the pthread compiler flag detection.
590
591         * glib/gunicode.h: 
592         * glib/gutf8.c (_g_utf8_make_valid): Rename make_valid_utf8
593         from gconvert.c, move it to gutf8.c, and export it privately.
594
595         * glib/gconvert.c (g_filename_display_name): Adjust callers.
596
597         * glib/gkeyfile.c: Use _g_utf8_make_valid() in a number of
598         places to ensure error messages are valid UTF-8.  (#351853,
599         Simon Budig)
600
601 2006-08-22  Matthias Clasen <mclasen@redhat.com>
602
603         * Branch for 2.12
604