applied patch from #131937 with slight renames. provides
[platform/upstream/glib.git] / ChangeLog
1 Fri Feb 20 03:02:05 2004  Tim Janik  <timj@gtk.org>
2
3         * glib/ghash.[hc]: applied patch from #131937 with slight
4         renames. provides g_hash_table_find().
5
6 Fri Feb 20 02:39:03 2004  Tim Janik  <timj@gtk.org>
7
8         * applied patch from David Schleef <ds@schleef.org> which implements
9         a G_MODULE_BIND_LOCAL flag to g_module_open() to disable global
10         symbol registration.
11
12 Thu Feb 19 18:40:01 2004  Tim Janik  <timj@gtk.org>
13
14         * glib/gstring.[hc]: for G_CAN_INLINE environments, inline
15         g_string_append_c() for efficiency. (vaguely based on #118707).
16
17 Wed Feb 18 23:57:42 2004  Matthias Clasen  <maclas@gmx.de>
18
19         * glib/gmain.c: Include signal.h for SIGCHLD.  (#134622, Damien
20         Carbery)
21
22 2004-02-18  Sebastian Wilhelmi  <seppi@seppi.de>
23
24         * glib/gasyncqueue.c: Lazy creation of GCond. Only
25         signal GCond, if threads are waiting.
26
27         * glib/gmain.c (g_main_context_new): Set context->wake_up_pipe
28         only for G_THREADS_ENABLED.
29
30 Sat Feb 14 11:05:26 2004  Manish Singh  <yosh@gimp.org>
31
32         * configure.in: Remove unnecessary STRIP_* definitions, and GNU
33         make check. Really fixes #134102.
34
35 Sat Feb 14 02:11:08 2004  Matthias Clasen  <maclas@gmx.de>
36
37         * configure.in: Make the check for GNU make work when MAKE is a 
38         full path.  (#134102, Julio M. Merino Vidal)
39
40 Sat Feb 14 02:08:03 2004  Matthias Clasen  <maclas@gmx.de>
41
42         * configure.in: Suppress xsltproc and xmlcatalog checks
43         if enable_man=no.  (#134091, Julio M. Merino Vidal)
44
45 Sat Feb 14 01:21:34 2004  Matthias Clasen  <maclas@gmx.de>
46
47         * glib/gmain.h: 
48         * glib/gmain.c (g_child_watch_source_new): 
49         * glib/gmain.c (g_child_watch_add): 
50         * glib/gmain.c (g_child_watch_add_full): Wrap waitpid() as a
51         GSource. This is a partial implementation of the "Unix signal 
52         source".  (#50296, Jonathan R. Blandford)
53
54         * configure.in: Add the necessary configury to typedef GPid
55         appropriately.
56
57         * tests/Makefile.am:
58         * tests/child-test.c: Test child_watch sources.
59
60 Sat Feb  7 15:02:01 2004  Manish Singh  <yosh@gimp.org>
61
62         * tests/type-test.c: Fix broken test for gsize formats.
63
64 2004-02-05  Robert Sedak  <robert.sedak@sk.htnet.hr>
65
66         * configure.in: Added "hr" (Croatian) to ALL_LINGUAS.
67
68 Wed Feb  4 17:58:51 2004  Manish Singh  <yosh@gimp.org>
69
70         * glib/gcompletion.h: Add prototype for g_completion_complete_utf8().
71
72         * tests/completion-test.c: #include <string.h>
73
74 2004-02-05  Tor Lillqvist  <tml@iki.fi>
75
76         * glib/glib.def: Add g_completion_complete_utf8.
77
78 Thu Feb  5 01:19:12 2004  Matthias Clasen  <maclas@gmx.de>
79
80         * tests/file-test.c (test_mkstemp): Weaken an g_assert() to a 
81         g_warning(), since apparently nothing in Posix forces mkstemp()
82         to reject templates without any X's.  (#133397)
83
84 Thu Feb  5 00:56:28 2004  Matthias Clasen  <maclas@gmx.de>
85
86         * glib/gcompletion.c (g_completion_complete_utf8): New function which
87         works like g_completion_complete(), but strips a trailing incomplete
88         UTF-8 character from the prefix.  (#133313, Theppitak Karoonboonyanan)
89
90         * tests/completion-test.c (main): Some GCompletion tests.
91
92         * tests/Makefile.am: Add completion-test.
93
94 2004-02-01  Tor Lillqvist  <tml@iki.fi>
95
96         * glib/glib.def: Add g_strsplit_set.
97
98 Sat Jan 31 03:13:56 2004  Matthias Clasen  <maclas@gmx.de>
99
100         * glib/garray.c (g_byte_array_remove_range): Don't return FALSE
101         from a pointer function.  (#131472, Morten Welinder)
102
103 2004-01-30  Noah Levitt  <nlevitt@columbia.edu>
104
105         * glib/gunicomp.h:
106         * glib/gunidecomp.c:
107         * glib/gen-unicode-tables.pl: Size compose_table correctly. (#123421,
108         Simon Josefsson)
109
110         * glib/gen-unicode-tables.pl: Get rid of some new warnings from perl
111         5.8.1.
112
113 Tue Jan 27 18:45:47 2004  Manish Singh  <yosh@gimp.org>
114
115         * m4macros/glib-2.0.m4
116         * m4macros/glib-gettext.m4: quote AC_DEFUN macro names so automake
117         1.8 won't whine at us.
118
119 Wed Jan 28 01:39:21 2004  Matthias Clasen  <maclas@gmx.de>
120
121         * glib/gstrfuncs.h: 
122         * glib/gstrfuncs.c (g_strsplit_set): New function, a cross 
123         between g_strsplit() and strtok().  (#88329, Soeren Sandmann)
124
125         * tests/strfunc-test.c (main): Add g_strsplit_set() tests.
126         
127 Fri Jan 23 22:49:52 2004  Matthias Clasen  <maclas@gmx.de>
128
129         * glib/gutils.c (g_get_any_init): Sigh, protect against
130         pw->pw_gecos being "" as well.  (#132317, Kaj-Michael Lang)
131         
132 2004-01-23  Tor Lillqvist  <tml@iki.fi>
133
134         * glib/glib.def: Add new functions.
135
136         * glib/grand.c: Don't include <unistd.h> unless
137         HAVE_UNISTD_H. Include <process.h> on G_OS_WIN32.
138         (g_rand_new): Use getppid() only on G_OS_UNIX.
139
140 Thu Jan 22 15:16:11 2004  Owen Taylor  <otaylor@redhat.com>
141
142         * === Released 2.3.2 ===
143
144 Thu Jan 22 13:55:44 2004  Owen Taylor  <otaylor@redhat.com>
145
146         * glib/gtimer.c: Add g_timer_continue().
147         (#98536, Tim-Philipp Müller)
148
149         * configure.in: Version 2.3.2, interface age 0.
150
151         * NEWS: tweak, finish.
152
153 Thu Jan 22 20:50:55 2004  Matthias Clasen  <maclas@gmx.de>
154
155         * glib/gutils.c (g_get_any_init): Protect against
156         pw->pw_gecos being NULL.
157
158 Thu Jan 22 00:41:34 2004  Matthias Clasen  <maclas@gmx.de>
159
160         * glib/gutils.c (g_get_any_init): Don't treat the Win32
161         user name like a gecos field, and when extracting a real
162         name from a gecos field, replace '&' by the capitalized
163         user name (a traditional passwd feature).  
164         (#118973, reported by Soeren Boll Overgaard)
165
166 Tue Jan 20 22:31:22 2004  Matthias Clasen  <maclas@gmx.de>
167
168         * NEWS: Start of 2.3.2 section.
169
170 Fri Jan 16 21:45:56 2004  Matthias Clasen  <maclas@gmx.de>
171
172         * glib/gstring.c (g_string_ascii_up): Forgot to fix this one.
173
174 Thu Jan 15 22:35:04 2004  Matthias Clasen  <maclas@gmx.de>
175
176         * glib/gstring.c (g_string_up): 
177         * glib/gstring.c (g_string_down): 
178         * glib/gstring.c (g_string_ascii_down): Move initialization of
179         variables after g_return_val_if_fail.  (#131564, Olivier Poncet)
180
181 Sun Jan 11 16:13:20 2004  Manish Singh  <yosh@gimp.org>
182
183         * configure.in: Add G_MAXSIZE, define in terms of G_MAXUfoo.
184
185         * tests/type-test.c: Add test for G_MAXSIZE.
186
187         * glibconfig.h.win32.in: Cleanup, add some missing bits.
188
189 Sun Jan 11 16:05:35 2004  Manish Singh  <yosh@gimp.org>
190
191         * glib/giounix.c: #define _POSIX_SOURCE for SSIZE_MAX. Fixes #128853.
192
193 Sat Jan 10 00:11:12 2004  Manish Singh  <yosh@gimp.org>
194
195         * glib/gutils.h (g_bit_nth_lsf,g_bit_nth_msf): 64-bit cleanliness
196         fixes.
197
198         * docs/reference/glib/tmpl/misc_utils.sgml: update to reflect the
199         above take gulongs now. My docs suck, someone should revisit it.
200
201 Fri Dec 19 11:49:21 2003  George Lebl <jirka@5z.com>
202
203         * glib/grand.c
204           glib/grand.h (g_rand_new) (g_rand_new_with_seed)
205           (g_rand_new_with_seed_array) (g_rand_set_seed_array):  Add
206           the init_by_array functionality from the reference implementation
207           of the mersenne twister (mt19937ar.c) and change the naming
208           to fit with the rest of the grand API.  New functions are
209           g_rand_new_with_seed_array, g_rand_set_seed_array.  This is only
210           reliable/tested for the 2.2 version of the seeding as that's what
211           the reference implementation uses.  Also modify g_rand_new to
212           get 4 longs from /dev/urandom since that will always be available
213           anyway and we get more entropy and if /dev/urandom is unavailable
214           use also 4 longs for seeding using secs, usecs, getpid and getppid.
215           For version 2.0 use only a simple seed again but be more careful
216           about seeding with secs/usecs in this case.
217
218         * glib/grand.c
219           glib/grand.h (g_rand_copy):  Add g_rand_copy function to copy the
220           current state of the random number generator.
221
222         * glib/grand.c (g_rand_new):  Add testing for EINTR when reading
223           from /dev/urandom
224
225         * tests/rand-test.c: add testing of the array seeding stuff against
226           the reference implementation, plus add statistical sanity check
227           to see that the values outputted are truly kind of random.  And
228           check that g_rand_copy truly copies the state by checking a few
229           terms.
230
231 Tue Jan  6 15:38:30 2004  Owen Taylor  <otaylor@redhat.com>
232  
233         * glib/gutils.h: Check defined (__OPTIMIZE__) not
234         __OPTIMIZE__. (Zack Rusin)
235  
236 2003-12-30  Murray Cumming  <murrayc@usa.net>
237   
238         * gobject/glib-mkenums.in: Added a lowercase_name option, to be used
239         next to the enum declaration, where the flag option is already used,
240         when it is not possible to guess where to put the underscores in the
241         _get_type() function name, for instance for GNOMEVFSURIHide.
242
243 Fri Dec 26 02:03:58 2003  Matthias Clasen  <maclas@gmx.de>
244
245         * glib/garray.[hc] (g_ptr_array_foreach): New function to
246         call a function for each element of a GPtrArray.  (#114790)
247
248         * tests/array-test.c (main): Add a test for g_ptr_array_foreach().
249
250 Sun Dec 21 22:57:58 2003  Matthias Clasen  <maclas@gmx.de>
251
252         * m4macros/glib-gettext.m4: Quote macro names to support 
253         reading the file multiple times.  (#125537)
254
255 Sun Dec 21 22:42:42 2003  Matthias Clasen  <maclas@gmx.de>
256
257         * glib/gmem.c (g_mem_chunk_destroy): Fix the locking of the
258         mem_chunks list.  (#127096, Balazs Scheidler)
259
260 2003-12-14  Hans Breuer  <hans@breuer.org>
261
262         * glib/gfileutils.c : make g_file_test(,G_FILE_TEST_IS_EXECUTABLE)
263         return something useful on win32, too. 
264
265 2003-12-13  Hans Breuer  <hans@breuer.org>
266
267         * glib/gconvert.c : get_filename_charset() needs to
268         return false for filenames not encoded in utf-8, 
269         which is always true on win32
270
271         * glibconfig.h.win32.in : (u)int64 modifier isn't the
272         gcc 'll' but always the msvcrt one 'I64'
273
274         * glib/glib.def : updated
275
276 Thu Dec 11 10:31:21 2003  Manish Singh  <yosh@gimp.org>
277
278         * glib/gmacros.h: change #elif with no expression to #else in
279         G_STRFUNC definition. Thanks to Damien Carbery, fixes #129101.
280
281 Mon Dec  8 12:02:40 2003  Owen Taylor  <otaylor@redhat.com>
282
283         * === Released 2.3.1 ===
284
285         * NEWS: Further updates for 2.3.1.
286
287 Fri Dec  5 12:09:13 2003  Manish Singh  <yosh@gimp.org>
288
289         * glib/gunidecomp.c (_g_utf8_normalize_wc): fix gint/gsize confusion.
290
291 2003-12-04  Noah Levitt  <nlevitt@columbia.edu>
292
293         * glib/gunidecomp.c: Add hangul composition and decomposition to
294         unicode normalization. (#100456)
295
296         * tests/unicode-normalize.c: Test hangul.
297
298 Tue Dec  2 02:29:41 2003  Matthias Clasen  <maclas@gmx.de>
299
300         Fix for #103710, Mark Jones:
301         
302         * glib/gtypes.h (G_MAXINT64): Define G_{MIN,MAX,MAXU}INT{8,16,32,64}.
303         * configure.in: Don't put G_{MIN,MAX,MAXU}INT64 in glibconfig.h.
304
305 Thu Nov 27 17:04:08 2003  Tim Janik  <timj@gtk.org>
306
307         * glib/gstrfuncs.c (g_strconcat): handle NULL arguments
308         gracefully.
309
310         * glib/gmacros.h: defined G_STRFUNC, which (pretty) prints the
311         current function (since G_STRLOC and G_GNUC_*FUNCTION became
312         unusable with gcc-3.0).
313
314 Wed Nov 26 16:45:16 2003  Roozbeh Pournader  <roozbeh@sharif.edu>
315
316         * glib/gstrfuncs.c: Fixed a bad pointer comparison in
317         g_ascii_strtod that came up in fa_IR locale (#126640, Behdad
318         Esfahbod).
319
320         * tests/strtod-test.c: Fixed the tests to catch the above.
321
322 Sat Nov 22 14:16:51.15 2003  Andrew Lanoix  <alanoix@umich.edu>
323
324         * glib/giowin32.c: Bind inter-thread comminication 
325                 sockets to INADDR_LOOPBACK instead of INADDR_ANY.
326
327 Thu Nov 20 15:09:40 2003  Manish Singh  <yosh@gimp.org>
328
329         * configure.in: Added G_GSIZE_FORMAT and friends
330
331         * tests/printf-test.c
332         * tests/testglib.c
333         * tests/type-test.c: Add tests for the above.
334
335 Mon Nov 17 17:28:10 2003  Manish Singh  <yosh@gimp.org>
336
337         * tests/thread-test.c (test_g_thread_once): Use GUINT_TO_POINTER
338         for g_thread_create data.
339
340 Sat Nov 15 23:00:57 2003  Matthias Clasen  <maclas@gmx.de>
341
342         * glib/guniprop.c (g_utf8_casefold): Add a NULL check
343         to be consistent with the other g_utf8_ functions.  (#121618,
344         Tim-Philipp Müller)
345
346 2003-11-15  Tor Lillqvist  <tml@iki.fi>
347
348         * tests/makefile.msc.in: Fix for MSVC build: Skip strtod-test, use
349         correct glib libraries, with 2.0 in the names. (#126906, John
350         Ehresman)
351
352 Sat Nov 15 00:46:14 2003  Matthias Clasen  <maclas@gmx.de>
353
354         * configure.in: Don't blindly set glib_cv_long_long_format to
355         "ll" when using the included printf. As long as the native 
356         printf supports 64bit printing, use the native format.  
357         (#119525, Tor Lillqvist)
358
359 Fri Nov 14 00:28:46 2003  Matthias Clasen  <maclas@gmx.de>
360
361         * glib/gi18n.h:
362         * glib/gi18n-lib.h: Also define bind_textdomain_codeset() in
363         the #ifndef ENABLE_NLS case.
364
365 Wed Nov 12 15:06:27 2003  Owen Taylor  <otaylor@redhat.com>
366
367         * configure.in: Version 2.3.1, interface age 0.
368
369         * NEWS: Update for 2.3.1.
370
371 2003-11-07  Mark McLoughlin  <mark@skynet.ie>
372
373         * glib/gconvert.c: (get_filename_charset): re-work to
374         retain a copy of the cached charset rather than the
375         actual return value from g_get_charset (which may
376         change). Also, re-initialize the cache if it does
377         change. See bug #126454.
378
379 Thu Nov  6 00:04:46 2003  Matthias Clasen  <maclas@gmx.de>
380
381         * glib/gconvert.c (get_filename_charset): Replacement for
382         have_broken_filenames() which consults the environment variable
383         G_FILENAME_ENCODINGS in addition to G_BROKEN_FILENAMES.
384         * glib/gconvert.c (g_filename_from_utf8): 
385         * glib/gconvert.c (g_filename_to_utf8): 
386         * glib/gconvert.c (_g_convert_thread_init): Use
387         get_filename_charset() instead of have_broken_filenames().
388
389 Wed Nov  5 22:05:19 2003  Matthias Clasen  <maclas@gmx.de>
390
391         * glib/gi18n-lib.h: 
392         * glib/gi18n.h: New headers defining common gettext-support
393         macros.
394
395         * glib/Makefile.am (glibsubinclude_HEADERS): Add gi18n.h
396         and gi18n-lib.h.
397
398         * glib/gstrfuncs.h: 
399         * glib/gstrfuncs.c (g_strip_context): Auxiliary function for
400         the implementation of Q_().
401
402 2003-11-05  Morten Welinder  <terra@gnome.org>
403
404         * glib/garray.c (g_ptr_array_remove_range): Make it compile.
405         (#119337, self.)
406
407         * glib/gstring.c (g_string_insert_len): Handle the case where the
408         to-be-inserted string is a substring of the target string.
409         (g_string_assign): Handle "s = s;".
410         (#114260, self.)
411
412 Sun Nov  2 01:47:31 2003  Matthias Clasen  <maclas@gmx.de>
413
414         Fix 64bit printing for MSVC builds (#119292, Hans Breuer):
415         
416         * configure.in (HAVE_INT64_AND_I64): Define for MSVC to 
417         include support for printing __int64 with format %I64 in 
418         the gnulib printf wrappers. 
419         * glib/gnulib/printf-args.h (enum arg_type): Add TYPE_INT64 
420         and TYPE_UINT64.
421         * glib/gnulib/printf-args.h (struct argument): Add a_int64 and 
422         a_uint64 members.
423         * glib/gnulib/printf-args.c (printf_fetchargs): Support
424         TYPE_INT64 and TYPE_UINT64.
425         * glib/gnulib/printf-parse.c (printf_parse): Parse I64 format
426         modifier and map formats to TYPE_INT64.
427         * glib/gnulib/vasnprintf.c (vasnprintf): Print TYPE_INT64 with
428         format modifier I64.
429         * glib/gnulib/README: Document the __int64 support.
430         
431 Sat Nov  1 08:45:38 2003  Owen Taylor  <otaylor@redhat.com>
432
433         * glib/gmain.c (g_main_context_iterate): Set the
434         return value from the result of g_main_context_check()
435         (after we poll) rather than g_main_context_prepare.
436         (#121675, Padraig O'Briain)
437
438 Fri Oct 31 00:13:53 2003  Matthias Clasen  <maclas@gmx.de>
439
440         * configure.in: Remove the semicolon from the definition of
441         g_once(), so that GPOINTER_TO_INT (g_once (...)) works.
442
443 Tue Oct 28 23:38:30 2003  Matthias Clasen  <maclas@gmx.de>
444
445         * tests/printf-test.c: Change the %e tests to not check for
446         actual string equality, but rather equality under g_ascii_strtod(),
447         since the number of leading digits in the exponent seems to 
448         be not exactly prescribed by SUS.
449
450 Fri Oct 24 17:09:04 2003  Owen Taylor  <otaylor@redhat.com>
451
452         * === Released 2.3.0 ===
453
454         * NEWS: Small update.
455
456 2003-10-24  Tor Lillqvist  <tml@iki.fi>
457
458         * configure.in: Force shared library (DLL) only on Windows.
459         (I don't think that is controversial?) Remove unnecessary
460         AC_LIBTOOL_WIN32_DLL. Don't use -D_REENTRANT on
461         Win32, it is not used by mingw or MSVC headers.
462
463         * config.h.win32.in
464         * glibconfig.h.win32.in: Match what configure produces.
465         
466         * glib/gconvert.c
467         * glib/gutils.c: Mark a couple of functions and variables that
468         aren't public as static.
469
470         * glib/gnulib/g-gnulib.h: Undef HAVE_SNPRINTF before (re)defining
471         it potentially differently, to silence compiler.
472
473         * glib/glib.def: Add some missing entries.
474         
475         * tests/gobject/Makefile.am (LDADD): Reorder, put libgobject after
476         libtestgobject.
477
478         * tests/gobject/ifaceproperties.c (main): NULL-terminate arg list
479         to g_object_set() and _get().
480
481 Thu Oct 23 12:38:24 2003  Owen Taylor  <otaylor@redhat.com>
482
483         * tests/gobject/Makefile.am (dist-hook): Remove 
484         and extra backslash.
485
486         * tests/gobject/Makefile.am (EXTRA_DIST): Add 
487         testmarshal.list.
488
489         * glib/Makefile.am (libglib_2_0_la_SOURCES): Add
490         missing gunicode-private.h.
491
492         * tests/testglib.c (main): Fix a warning.
493
494         * tests/gobject/ifaceinherit.c: Remove check that
495         wasn't supposed to work (adding an interface already
496         added to the derived class to the base class), 
497         fix a bug.
498
499 Wed Oct 22 23:41:03 2003  Matthias Clasen  <maclas@gmx.de>
500
501         * NEWS: Update for 2.3.0.
502
503 Tue Oct 14 17:44:38 2003  Owen Taylor  <otaylor@redhat.com>
504
505         * tests/gobject/ifaceproperties.c: Test for interface
506         properties and GParamSpecOverride.
507
508 Wed Oct  8 23:40:26 2003  Matthias Clasen  <maclas@gmx.de>
509
510         * glib/gmarkup.c (g_markup_printf_escaped): 
511         (g_markup_vprintf_escaped): Document as 2.4 additions.
512         (unescape_text): Implement newline and whitespace normalization
513         according to the XML specification.  (#123919)
514         (g_markup_escape_text): Document whitespace (non)handling.
515
516 2003-10-05  Matthias Clasen  <maclas@gmx.de>
517
518         * configure.in: Make the various printf feature test macros
519         reflect the system printf, even when using the included printf.
520         In particular, don't force HAVE_C99_SNPRINTF, since g-gnulib.h 
521         needs that test result.  (#122973)
522
523         * glib/gprintf.c (g_vasprintf): Don't rely on HAVE_VASPRINTF,
524         directly check for _g_vasprintf.
525
526         * glib/gprintfint.h (_g_vasprintf): Only define _g_vasprintf()
527         if vasprintf() is available.
528
529         * glib/gnulib/printf.c (_g_gnulib_vfprintf): Don't write
530         trailing nul to the file. (#122973)
531
532         * acinclude.m4 (AC_FUNC_VSNPRINTF_C99): Make the test 
533         detect non-C99-compliance of AIX 5.1 and Solaris 
534         vsnprintf().  (#122496)
535
536 Thu Oct  2 01:15:46 2003  Owen Taylor  <otaylor@redhat.com>
537
538         * tests/gobject/ifacecheck.c: Test case for
539         g_type_add_interface_check().
540
541         * tests/gobject/ifaceinit.c: Add #undef G_DISABLE_ASSERT.
542
543 Thu Oct  2 01:11:39 2003  Owen Taylor  <otaylor@redhat.com>
544
545         * tests/gobject/ifaceinherit.c: Remove some tests that
546         were testing things that weren't supposed to work; add
547         a test for adding an interface first to the child class,
548         then to the parent class.
549
550 Thu Oct  2 00:02:55 2003  Owen Taylor  <otaylor@redhat.com>
551
552         * tests/gobject/Makefile.am test/gobject/ifaceinherit.c:
553         Tests of interface inheritance and overriding.
554
555 2003-09-30  Tor Lillqvist  <tml@iki.fi>
556
557         * glib/gspawn-win32.c (do_spawn): Call protect_argv() in
558         do_spawn() instead of in do_spawn_with_pipes() so that we can use
559         the original argv[0] as the program file name parameter to
560         spawnv() in the shortcut (doing without helper process)
561         code. Fixes problem if GIMP 1.3 was installed in a path with
562         spaces in the name.
563
564 Tue Sep 30 15:31:16 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
565
566         * glib/guniprop.c (has_more_above): make the argument const to
567         get rid of warning
568
569         * glib/garray.c (g_byte_array_remove_range): insert cast to get
570         rid of warning
571
572 2003-09-29  Tor Lillqvist  <tml@iki.fi>
573
574         * tests/testglib.c (main): Use hardcoded name for DLL, as there is
575         no reliable way to determine it at compile or run time anyway. 
576
577 2003-09-29  Matthias Clasen  <maclas@gmx.de>
578
579         * glib/guniprop.c (g_unichar_get_mirror_char): Add "Since: 2.4" 
580         to docs.
581
582 Thu Sep 25 15:43:08 2003  Owen Taylor  <otaylor@redhat.com>
583
584         * tests/gobject/testmodule.[ch] test/gobject/Makefile.am:
585         Dummy dynamic type module for testing type plugin code
586         and dynamic types.
587
588         * test/gobject/defaultiface.c: Test of 
589         g_type_default_interface_ref() and friends.
590
591 2003-09-28  Gediminas Paulauskas  <menesis@delfi.lt>
592
593     * configure.in: Added lt to ALL_LINGUAS.
594
595 2003-09-25  Tor Lillqvist  <tml@iki.fi>
596
597         * glib/glib.def: Remove g_bsearch_array_* entries that don't exist
598         any longer. (ABI change?)
599
600 Thu Sep 25 15:01:37 2003  Owen Taylor  <otaylor@redhat.com>
601
602         * tests/Makefile.am (SUBDIRS): Add gobject/.
603
604 Fri Sep 12 16:26:21 2003  Owen Taylor  <otaylor@redhat.com>
605
606         * tests/gobject/ configure.in: New directory, framework 
607         for automated GObject tests.
608
609         * tests/gobject/override.c: Move testoverride.c
610         here, automate.
611
612         * tests/gobject/ifaceinit.c: Move testifaceinit.c here.
613
614         * tests/gobject/accumulator.c: Test signal accumulators,
615         including g_signal_accumulator_true_handled.
616
617 2003-09-12  Noah Levitt  <nlevitt@columbia.edu>
618
619         * glib/gen-unicode-tables.pl: Take a directory where to look for the
620         unicode files on the command line instead of 7 individual files.
621
622 2003-09-12  Noah Levitt  <nlevitt@columbia.edu>
623
624         * glib/gen-unicode-tables.pl:
625         * glib/gunichartables.h:
626         * glib/gunicode.h:
627         * glib/guniprop.c: Add g_unichar_get_mirror_char. (#114749)
628
629 Thu Sep 11 20:11:05 2003  Owen Taylor  <otaylor@redhat.com>
630
631         * glib/gmarkup.c: Add g_markup_printf_escaped(), 
632         g_markup_vprintf_escaped().
633
634         * tests/markup-escape-test.c (main): Test for
635         g_markup_escape_text(), g_markup_printf_escaped().
636
637 2003-09-10  Noah Levitt  <nlevitt@columbia.edu>
638
639         * glib/gunicodeprivate.h:
640         * glib/gunicollate.c:
641         * glib/gunidecomp.c:
642         * glib/guniprop.c:
643         * tests/casemap.txt:
644         * tests/gen-casemap-txt.pl: Unicode 4.0 special casing. (#114681)
645
646         * glib/gunicodeprivate.h: Use a private header instead of extern
647         function declarations (_g_utf8_normalize_wc,
648         _g_unichar_combining_class).
649
650 Mon Sep  8 00:31:10 2003  Stefan Westerfeld  <stefan@space.twc.de>
651
652         * glib/gbsearcharray.h: inserted casts for C++.
653
654 2003-08-28  Matthias Clasen  <maclas@gmx.de>
655
656         * tests/patterntest.c (verbose): Fix a C99ism.  (#120821, Thomas 
657         Klausner)
658
659 2003-08-25  Tor Lillqvist  <tml@iki.fi>
660
661         * glib/giowin32.c (read_thread): Avoid UNLOCKing the critical
662         section twice, which might cause a hang. (#120653)
663
664         * glib/giowin32.c (g_io_channel_unix_new): Warn if fd is both a
665         valid file descriptor and socket.
666
667 Mon Aug 25 12:34:36 2003  Owen Taylor  <otaylor@redhat.com>
668
669         * glib/gmessages.c: Escape control characters in g_logv() output.
670         (#108287, Christian Biere)
671
672 Mon Aug 25 12:17:20 2003  Owen Taylor  <otaylor@redhat.com>
673
674         * glib/gmain.c (g_main_context_unref_and_unlock): 
675         When DISABLE_MEM_POOLS is set, loop through and free
676         the poll records explicitely, since g_mem_chunk_destroy()
677         won't do it. (#118121, Morten Welinder)
678  
679 2003-08-22  Samúel Jón Gunnarsson  <sammi@techattack.nu>
680
681         * is.po: Added "is" to ALL_LINGUAS.
682         
683 2003-08-19  Tor Lillqvist  <tml@iki.fi>
684
685         * glib/gmessages.c (g_logv): [Win32] Make the fatal error message
686         box easier to notice with MB_SETFOREGROUND. Also use MB_ICONERROR
687         to get a nice stop-sign icon.
688
689 Tue Aug 19 09:42:06 2003  Owen Taylor  <otaylor@redhat.com>
690  
691         * m4macros/glib-gettext.m4: Add $INTLLIBS to $LIBS
692         temporarily, not -lintl. (Problem with fix for 
693         #119171, pointed out by James Henstridge)
694  
695 Tue Aug 19 03:55:29 2003  Tim Janik  <timj@gtk.org>
696
697         * glib/gbsearcharray.h: license change, no restrictions are made
698         in the new license at all, the implmentation is simply provided
699         "as is" to allow copy-pasting the code into any third-party app.
700         naturally, the implementation is self-contained within the header
701         file to allow this.
702         default to non-shrinking behaviour, allow users to request shrinking
703         via G_BSEARCH_ARRAY_AUTO_SHRINK.
704         creation, deletion functions are now named g_bsearch_array_create()
705         and g_bsearch_array_free(). 
706         fixed const in prototypes, removed cruft.
707         (g_bsearch_array_insert): take only three arguments, do nothing if the
708         node to insert is already there.
709         (g_bsearch_array_replace): insert or replace if the node is already
710         there.
711         (g_bsearch_array_remove): remove nodes by index, the index of a node
712         can be found via g_bsearch_array_get_index().
713         removed other g_bsearch_array_remove*() variants.
714         (g_bsearch_array_lookup): minor optimizations.
715         (g_bsearch_array_lookup_sibling): return nodes on mismatches.
716
717         * glib/gbsearcharray.c: removed.
718
719 2003-08-16  Tor Lillqvist  <tml@iki.fi>
720
721         Fix #117925 (Dov Grobgeld):
722
723         * glib/gutils.c (g_find_program_in_path, g_basename,
724         g_path_get_basename, g_path_is_absolute, g_path_skip_root,
725         g_path_get_dirname, g_get_any_init): On Win32, look also for
726         slashes ('/') as pathname separators.
727
728         * glib/gfileutils.c (g_file_open_tmp): Ditto. If the template
729         contains a pathname separator, include the actual one in the error
730         message, instead of always the canonical one.
731
732         (g_build_filename): Separate implementation on Win32 that looks
733         for either slash or backslash. Document Unix/Windows differences.
734
735         * tests/testglib.c
736         * tests/strfunc-test.c: Test above functionality on Win32.
737
738 2003-08-15  Tor Lillqvist  <tml@iki.fi>
739
740         * glib/gmain.c (g_poll): [Win32] Don't exceed handle array
741         bounds. Warn if there would be too many handles to wait
742         for. (WaitForMultipleObjects() has a relatively low limit of 64
743         handles. The Win32 IO channel code should be fixed not to need to
744         wait for one handle per file or socket being watched. Later.)
745
746 2003-08-13  Tor Lillqvist  <tml@iki.fi>
747
748         * glib/Makefile.am
749         * gmodule/Makefile.am
750         * gobject/Makefile.am
751         * gthread/Makefile.am: Use srcdir also in references to the .def
752         files. (#118885, Jeff Bonggren)
753
754 2003-08-12  Tor Lillqvist  <tml@iki.fi>
755
756         * glib/gconvert.c (g_locale_from_utf8): Drop the Win32-specific
757         implementation. It used WideCharToMultiByte(), which is broken as
758         it stores unconvertable characters as fallback characters
759         (question marks) in the destination string without being able to
760         tell how much of the conversion succeeded. Using g_convert() like
761         on Unix is better and simpler. (#117872)
762
763         (g_locale_to_utf8): No need for the Win32-specific implementation
764         here, either.
765
766         (have_broken_filenames): Define as TRUE on Win32.
767
768         (g_filename_to_utf8, g_filename_from_utf8): Drop Win32 ifdefs. As
769         have_broken_filenames() now is defined TRUE on Win32, works as
770         before.
771         
772 2003-08-11  Matthias Clasen  <maclas@gmx.de>
773
774         * acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and
775         JH_PATH_XML_CATALOG from gtk-doc to enable configuring without
776         xmlcatalog in PATH.  (#119115) 
777
778 2003-08-10  Tor Lillqvist  <tml@iki.fi>
779
780         * glib/gutils.c (g_getenv): Don't use a cache of variable name to
781         value mappings on Win32, as that breaks g_setenv() and
782         g_unsetenv(). Only call ExpandEnvironmentStrings() if necessary,
783         and in that case return a quarkified string. It is still
784         questionable how necessary expanding embedded environment variable
785         references is. Possibly the whole Win32-specific g_getenv()
786         implementation could be removed. (#119520)
787
788 2003-08-08  Tor Lillqvist  <tml@iki.fi>
789
790         * glib/glib.def: Add g_once_impl.
791
792         * glib/gutils.c (g_setenv): Fix syntax error in the !HAVE_SETENV
793         case.
794
795 2003-08-08  Matthias Clasen  <maclas@gmx.de>
796
797         * tests/env-test.c (main): Remove a test for getenv() behaviour
798         which isn't specified by SUS and doesn't work on Solaris.
799
800 2003-08-07  Matthias Clasen  <maclas@gmx.de>
801
802         * tests/env-test.c: Add tests for '=' in names and values.
803
804         * glib/gutils.c (g_setenv, g_unsetenv): Check that the variable
805         name doesn't contain '='. Add a declaration for environ.  (#119338)
806
807         * acinclude.m4: Tighten the snprintf() test to check behaviour on
808         zero-size buffers.  (#106091) 
809
810         * tests/patterntest.c: Specify test strings in UTF-8, remove all
811         charset conversion. Replace the NOISY define by a cmdline arg
812         --noisy.   (#115757) 
813
814 Thu Aug  7 15:01:09 2003  Owen Taylor  <otaylor@redhat.com>
815
816         * m4macros/glib-gettext.m4: Set $LIBS to include
817         -lintl when checking for dcgettext and 
818         _nl_msg_cat_cntr. (Tim Mooney, #119171)
819
820 Thu Aug  7 14:15:44 2003  Owen Taylor  <otaylor@redhat.com>
821
822         * glib/gmain.c (g_idle_source_new): Make the default priority
823         for idle sources G_PRIORITY_DEFAULT_IDLE as anybody would
824         expect and document that. (#114461, reported by Andy Wingo)
825
826 2003-08-06  Noah Levitt  <nlevitt@columbia.edu>
827
828         * tests/casemap.txt:
829         * tests/gen-casemap-txt.pl: Add test for special case not at inital
830         position in the string, the bug just fixed. (#118957)
831
832 2003-08-05  Noah Levitt  <nlevitt@columbia.edu>
833
834         * glib/guniprop.c: Get rid of "len" parameter to output_special_case
835         and output_marks, and make them work more like g_unichar_to_utf8,
836         fixing a bug in the process. (#118957)
837
838 2003-08-05  Hans Breuer  <hans@breuer.org>
839
840         * glib/gnulib/makefile.msc : (new file) for msvc build
841
842         * glib/gnulib/vasnprintf.c : use glib/galloc.h
843
844         * glib/gnulib/printf.h : #include <stdio.h> for FILE*
845
846         * glib/makefile.msc.in : replace trio with gnulib
847
848         * glib/glib.def : updated externals
849
850         * glib/guniprop.c : fix for guniprop.c(582) : error C2082: 
851         redefinition of formal parameter 'len'
852
853 2003-08-04  Noah Levitt  <nlevitt@columbia.edu>
854
855         * tests/unicode-normalize.c: We do handle > BMP now, so test it.
856
857 2003-07-31  Noah Levitt  <nlevitt@columbia.edu>
858
859         * tests/file-test.c: s/g_read_link/g_file_read_link/ (#118727)
860
861 2003-07-31  Noah Levitt  <nlevitt@columbia.edu>
862
863         * tests/unicode-encoding.c: Return nonzero exit status if the test
864         fails. (#118729) 
865
866 2003-07-31  Noah Levitt  <nlevitt@columbia.edu>
867
868         * tests/utf8.txt: Change instances of U+10ffff to U+10fffd, since that
869         is the last valid unicode character. Add check that U+10ffff is
870         NOTUNICODE. (#118730)
871
872 2003-07-30  Noah Levitt  <nlevitt@columbia.edu>
873
874         * glib/gen-unicode-tables.pl:
875         * glib/gunibreak.c:
876         * glib/gunibreak.h:
877         * glib/gunichartables.h:
878         * glib/gunicode.h:
879         * glib/gunicomp.h:
880         * glib/gunidecomp.c:
881         * glib/gunidecomp.h:
882         * glib/guniprop.c:
883         * tests/casefold.txt:
884         * tests/casemap.txt:
885         * tests/gen-casefold-txt.pl:
886         * tests/gen-casemap-txt.pl: Update Unicode data to 4.0. (#107974)
887
888 2003-07-31  Tor Lillqvist  <tml@iki.fi>
889
890         * glib/gspawn-win32.c: When possible, manage without the helper
891         process. (Part of the enhancements outlined in #98737.) Speeds up
892         GIMP 1.3's first-time-run plug-in query phase a lot.
893
894         Plug a file descriptor (and thus Win32 handle) leak: close the
895         read end of the child error report pipe after use.
896
897 2003-07-30  Matthias Clasen  <maclas@gmx.de>
898
899         * glib/gutils.c (g_unsetenv): Use same argument name as in header,
900         to pacify gtk-doc. 
901         (g_getenv): Move docs inline, add comment about lifespan of return
902         value. 
903
904         * glib-2.0.pc.in (Libs): Remove forgotten @TRIO_LIBS@.  (#118616,
905         Noah Levitt) 
906
907         * glib/gfileutils.[hc]: Rename g_read_link() to g_file_read_link()
908         to better match the remaining file utilities in the g_file_
909         namespace and to better separate it from readlink(). This is
910         hopefully no problem as the function is just 2 days old.
911
912 2003-07-29  Matthias Clasen  <maclas@gmx.de>
913
914         * glib/gqsort.[hc] (g_qsort_with_data): 
915         * glib/gconvert.[hc] (g_filename_to_uri, g_filename_from_uri): 
916         * glib/gfileutils.[hc] (g_mkstemp, g_file_open_tmp): Use gchar,
917         gint, gsize instead of char, int, size_t in the interface for
918         consistency.  (#118567) 
919
920         Replace trio printf() by gnulib vasnprintf():  (#101874)
921         
922         * configure.in: Define HAVE_LONG_LONG_FORMAT if system printf
923         understands %llu; rename enable_trio to enable_included_printf;
924         add misc. tests needed for gnulib vasnprintf(); define
925         G_GINT{16,32,64}_MODIFIER in glibconfig.h.
926
927         * acinclude.m4: Misc tests needed for gnulib vasnprintf():
928         AC_FUNC_SNPRINTF_C99, bh_C_SIGNED, jm_AC_TYPE_LONG_LONG, 
929         gt_TYPE_LONGDOUBLE, gt_TYPE_WCHAR_T, gt_TYPE_WINT_T,
930         gt_AC_TYPE_INTMAX_T, jm_AC_HEADER_STDINT_H,  
931         jm_AC_HEADER_INTTYPES_H. 
932
933         * glib/Makefile.am: Replace TRIO_SUBDIR by PRINTF_SUBDIR and
934         trio_libtrio_la by printf_la.  
935
936         * glib/gprintfint.h: Include gnulib/printf.h and use _g_gnulib_
937         functions instead of _g_trio_ functions. 
938
939         * glib/trio/*: Removed
940
941         * glib/gnulib/*: vasnprintf() implementation from gnulib, patched
942         to live in the _g_gnulib namespace, use g_malloc instead of
943         malloc, and support long long printing even if system printf
944         doesn't. For more details, see glib/gnulib/README.
945         
946         * tests/printf-test.c: Add tests for 64 bit printing.
947
948 2003-07-28  Matthias Clasen  <maclas@gmx.de>
949
950         * glib/gfileutils.h: 
951         * glib/gfileutils.c: New function g_read_link(). (#72545)
952
953         * configure.in: Check for setenv, unsetenv, readlink and symlink.
954
955         * tests/file-test.c (test_readlink): Test for g_read_link() (only
956         on systems supporting symbolic links).
957
958         * tests/env-test.c: New test for g_{get,set,unset}env().
959
960         * tests/Makefile.am (test_programs): Add env-test.
961
962         * glib/gutils.h: 
963         * glib/gutils.c: New functions g_setenv() and g_unsetenv().  (#100763)
964
965 2003-07-26  Matthias Clasen  <maclas@gmx.de>
966
967         * tests/printf-test.c: New test, tests printf behaviour. This was
968         already mentioned in Makefile.am by accident.
969
970         * tests/file-test.c: New test, currently contains mkstemp tests
971         copied from testglib.c. 
972
973         * tests/Makefile.am (test_programs): Add file-test.
974
975         * glib/gprintf.c: Fix all g_return_val_if_fail () checks to return
976         -1 on error to match the behaviour of the stdio printf() family.
977
978         * glib/garray.h: 
979         * glib/garray.c (g_{,byte,pointer}_remove_range): New functions to
980         remove a range of elements from an array.  (#94879, Nalin Dahyabhai)
981
982         * glib/gmessages.c (g_logv): Remove the 1024 char limit in the
983         common (non-recursive) case.
984
985 2003-07-25  Matthias Clasen  <maclas@gmx.de>
986
987         * glib/gwin32.c: 
988         * glib/gutf8.c: 
989         * glib/gunicollate.c: 
990         * glib/gtree.c: 
991         * glib/gspawn.c: 
992         * glib/gmain.c: 
993         * glib/giochannel.c: 
994         * glib/gfileutils.c: 
995         * glib/gerror.c: 
996         * glib/gconvert.c: 
997         * glib/gasyncqueue.c: 
998         * glib/gmem.c: Remove some explicit Docbook markup which is no
999         longer necessary since gtk-doc does the right thing.
1000
1001         * glib/gutf8.c (g_utf8_get_char_validated): Work around gtk-doc stupidity.
1002
1003 2003-07-20  Hans Breuer  <hans@breuer.org>
1004
1005         * glib/trio/makefile.msc : (new file) for msvc build
1006
1007         * glib/glib.def : removed some duplicated entries
1008
1009         * glib/gscanner.c : add same workaround for MSVC(5.0)
1010         which does not allow to cast an uint64 to float.
1011         Same as in gvaluetransform.c
1012         Also move #include <io.h> behind inclusion of "glib.h"
1013         which defines the needed G_OS_WIN32
1014
1015         * glib/makefile.msc.in : added gprintf.obj, trio\trio.lib
1016         as well as shell32.lib
1017
1018         * tests/spawn-test.c : include <io.h> on win32
1019
1020 2003-07-12  Matthias Clasen  <maclas@gmx.de>
1021
1022         * glib/gprintf.c: Doc additions.
1023
1024 2003-07-10  Joel Brich <joel.brich@laposte.net>
1025
1026         * configure.in: Added "eo" to ALL_LINGUAS.
1027
1028 Wed Jul  9 16:27:26 2003  Manish Singh  <yosh@gimp.org>
1029
1030         * glib/gmain.c (g_main_context_unref_and_unlock): check if
1031         context->poll_chunk is set before trying to destroy it. For example,
1032         this can happen if no sources are added to a context before it is
1033         freed.
1034
1035 2003-07-09  Morten Welinder  <terra@gnome.org>
1036
1037         * glib/gprintf.c (g_vasprintf): Avoid var declaration after
1038         statement.
1039
1040 2003-07-09  Matthias Clasen  <maclas@gmx.de>
1041
1042         Support for one-time initialization functions.  (#69668, Sebastian
1043         Wilhelmi) 
1044
1045         * configure.in: Check whether double checked locking is safe,
1046         define g_once() in glibconfig.h accordingly.
1047         * glib/gthread.h: Add GOnce, GOnceStatus, G_ONCE_INIT and g_once_impl.
1048         * glib/gthread.c (g_once_impl): Fallback implementation using a
1049         mutex if double checked locking is unsafe.
1050         * tests/thread-test.c: Add tests for g_once().
1051
1052 2003-07-02  Matthias Clasen  <maclas@gmx.de>
1053
1054         * glib/gstrfuncs.c (g_strfreev): Move docs inline, document behavior 
1055         for NULL. (#116439, Steve Chaplin)
1056
1057 2003-06-25  Abigail Brady  <morwen@evilmagic.org>
1058  
1059         * glib/gconvert.c (g_convert_with_fallback): Use C99 style \uxxxx
1060         and \Uxxxxyyyy escapes instead for fallback instead of perl-style
1061         \X{xxxx} ones, fixing bug #114284.
1062
1063 2003-06-25  Tor Lillqvist  <tml@iki.fi>
1064
1065         * glib/giowin32.c (g_io_channel_unix_new): Pass real &optval and
1066         &optlen to getsockopt() instead of NULL. Don't remember why I
1067         thought that NULL could be used (as we don't actually use the
1068         returned value for anything), the Platform SDK documentation
1069         doesn't imply so.
1070
1071 2003-06-19  Matthias Clasen  <maclas@gmx.de>
1072
1073         * glib/gutils.c (g_path_get_basename): Move the documentation
1074         inline and add details.  (#108505)
1075
1076 2003-06-18  Matthias Clasen  <maclas@gmx.de>
1077
1078         * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
1079         macros to check for XML catalog contents and path, borrowed from
1080         gtk-doc. 
1081
1082         * configure.in: New option --enable-man to enable regeneration of
1083         man pages from Docbook, if the necessary tools are found.
1084
1085 2003-06-17  Matthias Clasen  <maclas@gmx.de>
1086
1087         * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
1088         macros to check for XML catalog contents and path, borrowed from
1089         gtk-doc. 
1090         
1091         * configure.in: New option --enable-man to enable regeneration of
1092         man pages from Docbook, if the necessary tools are found.
1093
1094 2003-06-15  Tor Lillqvist  <tml@iki.fi>
1095
1096         * glib-zip.in (DLLDIR): Test where the DLLs actually are.
1097
1098         * README.win32: Point to FSF's binary Win32 distributions of
1099         libiconv and gettext-runtime.
1100
1101 2003-06-11  Tor Lillqvist  <tml@iki.fi>
1102
1103         * glib-zip.in (DEVZIP): libtool 1.5 installs DLLs in the bin
1104         subdirectory, so get them from there.
1105
1106         * glib/gwin32.c (g_win32_getlocale): Use "sr@Latn" and "sr" in the
1107         same way as the po files for Serbian in Latin and Cyrillic script.
1108
1109 2003-06-11  Sebastian Wilhelmi  <seppi@seppi.de>
1110
1111         * configure.in: Remove false &. Spotted by Albert Chin
1112         <gtk-devel-list@thewrittenword.com>.
1113
1114 2003-06-08  Tor Lillqvist  <tml@iki.fi>
1115
1116         * glib/giowin32.c: Fix indentation and spacing. Use
1117         INADDR_LOOPBACK instead of inet_addr("127.0.0.1") and
1118         gethostbyaddr().
1119
1120 Sat Jun  6 16:18:10 2003  Andrew Lanoix  <alanoix@umich.edu>
1121
1122         * glib/giowin32.c: Resolved thread deadlocks in socket 
1123         ichannel code to support Add-Cancel-Add watch functionality 
1124         on windows. Also cleaned up socket error handling to not 
1125         segfault and do the right thing.
1126         
1127 Fri Jun  6 10:24:23 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
1128
1129         * m4macros/glib-gettext.m4: Test for Solaris native gettext 
1130         in libc, seeing if it supports GNU catalog format (#85217).
1131         
1132 Thu Jun  5 23:40:31 2003  Owen Taylor  <otaylor@redhat.com>
1133
1134         * glib/gmain.c: When dispatching a source that is
1135         !CAN_RECURSE, temporarily remove any file descriptors
1136         that that source has registered from the main loop, to keep
1137         recursive main loops from busy-waiting if input
1138         becomes available on one of those file descriptors.
1139         (#112222, Christian Krause)
1140
1141         * glib/gmain.c (g_source_set_priority): Properly
1142         remove the source from the context's source list
1143         and reinsert it sorted, rather than simply setting
1144         source->next/prev to NULL! (#114274)
1145
1146 2003-06-06  Matthias Clasen  <maclas@gmx.de>
1147
1148         * glib/gstring.c (g_string_append_printf_internal): Use
1149         g_vasprintf() and g_string_append_len(), thus enabling embedded
1150         nuls in the result of g_string_printf().  (#92492, Owen Taylor)
1151
1152         * tests/string-test.c: Add a test for embedded nuls in the
1153         result of g_string_printf().
1154
1155         * glib/gprintf.[ch]: Synchronize argument names with headers and docs.
1156         (g_vasprintf): An implementation of vasprintf(), code was lifted
1157         from g_strdup_vprintf().  (#112365)
1158
1159         * glib/gstrfuncs.c (g_strdup_vprintf): Just use g_vasprintf().
1160
1161 2003-06-05  Tor Lillqvist  <tml@iki.fi>
1162
1163         * glib/giochannel.h
1164         * glib/gmain.h: Remove bogus (Win32-only) declaration of
1165         g_main_poll_win32_msg_add(). No such function exists.
1166
1167         * glib/gmain.c (g_poll) [Win32]: Use g_win32_error_message() for
1168         better warning messages.
1169
1170 2003-06-04  Noah Levitt  <nlevitt@columbia.edu>
1171
1172         * glib/gunidecomp.h (combine): Fix typo (#114375). Also, make the
1173         function static.
1174
1175 2003-06-03  Sebastian Wilhelmi  <seppi@seppi.de>
1176
1177         * configure.in: Test for pthread_setschedparam. If not existant,
1178         disable priorities. (#104718)
1179
1180 Mon Jun  2 14:18:21 2003  Owen Taylor  <otaylor@redhat.com>
1181
1182         Patch from Jeffrey Stedfast <fejj@ximian.com> (#104825)
1183  
1184         * glib/gspawn.c (read_data): Don't read() into '&buf', while this
1185         is technically okay - it is clearer as just 'buf'.
1186         (write_all): New helper function that handles write() interrupts.
1187         (write_err_and_exit): Use write_all() instead of write().
1188         (fork_exec_with_pipes): Same here.
1189         
1190 Sun Jun  1 09:42:36 2003  Owen Taylor  <otaylor@redhat.com>
1191
1192         * glib/giochannel.c (g_io_error_get_from_g_error): Put 
1193         the g_return_val_if_fail() in the right place.
1194
1195 Fri May 31 1:17:45 2003  Ray Strode  <halfline@hawaii.rr.com>
1196
1197         * glib/giochannel.c (g_io_channel_error_from_errno):
1198         Fix typo: should be G_IO_ERROR_UNKNOWN not
1199         G_ERROR_ERROR_UNKNOWN
1200
1201 Fri May 30 19:23:47 2003  Owen Taylor  <otaylor@redhat.com>
1202
1203         * glib/gstrfuncs.c (g_ascii_strncasecmp)
1204         * glib/gstrfuncs.c (g_ascii_strcasecmp): Use TOLOWER()
1205         macro instead of g_ascii_tolower() (#107138)
1206
1207 Fri May 30 19:09:25 2003  Owen Taylor  <otaylor@redhat.com>
1208
1209         * m4macros/glib-gettext.m4: Backport better handling
1210         of ALL_LINGUAS from gettext.m4. (#103808, Andras Salamon)
1211
1212 Fri May 30 18:46:05 2003  Owen Taylor  <otaylor@redhat.com>
1213
1214         * m4macros/glib-gettext.m4: expand $exec_prefix as
1215         well as $prefix. (#107290, reported by Morten Welinder,
1216         patch from Raja Harinath)
1217
1218 Fri May 30 17:24:23 2003  Owen Taylor  <otaylor@redhat.com>
1219
1220         * glib-gettextize.in: Quote $srcdir to handle $srcdir
1221         with spaces (#107850, Evan Martin)
1222
1223 Fri May 30 16:48:26 2003  Owen Taylor  <otaylor@redhat.com>
1224  
1225         * glib/giochannel.c (g_io_channel_error_from_errno):
1226         Silently return G_IO_CHANNEL_ERROR_FAILED for EINTR,
1227         since close() can return EINTR. (#11842, Balazs Scheidler)
1228  
1229 Fri May 30 15:51:43 2003  Owen Taylor  <otaylor@redhat.com>
1230
1231         * glib/giochannel.c (g_io_error_get_from_g_error): 
1232         Do a g_return_val_if_fail() on err == NULL to be a
1233         bit more robuts on buggy IO channel implementations.
1234         (#113396, Dan Winship)
1235
1236 Tue May 27 19:56:35 2003  Owen Taylor  <otaylor@redhat.com>
1237
1238         * glib/gmacros.h: __PRETTY_FUNCTION__ was made a non-token
1239         before gcc-3.0.0 for C++. (Fix from Martin Kretzschmar,
1240         #113797)
1241
1242 2003-05-28  Matthias Clasen  <maclas@gmx.de>
1243
1244         * tests/patterntest.c: Remain silent when sucessful. 
1245
1246         * tests/Makefile.am: Add patterntest to make check.  (113143)
1247
1248 2003-05-27  Matthias Clasen  <maclas@gmx.de>
1249
1250         * glib/gstrfuncs.c (g_strdup): Use memcpy instead of
1251         strcpy. (#106988, Christian Biere)
1252
1253 2003-05-27  Matthias Clasen  <maclas@gmx.de>
1254
1255         * glib/gstrfuncs.c (g_strdup): Use memcpy instead of
1256         strcpy. (#106988, Christian Biere)
1257
1258 2003-05-23  Noah Levitt  <nlevitt@columbia.edu>
1259
1260         * glib/gutf8.c: Fix typo in UNICODE_VALID (related to #107427).
1261
1262 2003-05-23  Noah Levitt  <nlevitt@columbia.edu>
1263
1264         * glib/guniprop.c: Remove stale comment.
1265
1266 2003-05-22  Noah Levitt  <nlevitt@columbia.edu>
1267
1268         * glib/guniprop.c: Update g_unichar_iswide to Unicode 4.0 (#113404).
1269
1270 2003-05-21  Noah Levitt  <nlevitt@columbia.edu>
1271
1272         * glib/guniprop.c: Fix obscure typo in case conversion routine
1273         (#113469).
1274
1275 Tue May 20 14:14:55 2003  Manish Singh  <yosh@gimp.org>
1276
1277         * configure.in: wrap 64-bit MIN/MAX limit constants in
1278         G_GINT64_CONSTANT. Fixes bug #108699.
1279
1280 2003-05-19  Noah Levitt  <nlevitt@columbia.edu>
1281
1282         * glib/gunibreak.c: Fix cut-and-pasto: g_unichar_break_type should
1283         return G_UNICODE_BREAK_UNKNOWN if the character is greater than
1284         G_UNICODE_LAST_CHAR.
1285
1286 2003-05-19  Noah Levitt  <nlevitt@columbia.edu>
1287
1288         * glib/glist.c: Remove unused function g_list_sort2 (bug #113203).
1289
1290 2003-05-19  Noah Levitt  <nlevitt@columbia.edu>
1291
1292         * glib/gunidecomp.c: Fix off-by-one error in
1293         g_unicode_canonical_ordering (bug #113260).
1294
1295 2003-05-19 Arafat Medini <lumina@silverpen.de>
1296
1297         * ar.po: Added ar to ALL_LINGUAS
1298
1299 2003-05-17  Telsa Gwynne  <hobbit@aloss.ukuu.org.uk>
1300
1301         * configure.in: Added cy to ALL_LINGUAS
1302
1303 2003-05-05  Matthias Clasen  <maclas@gmx.de>
1304
1305         * glib/gstrfuncs.c (g_ascii_dtostr): 
1306         (g_ascii_formatd): 
1307         (g_ascii_strtod): Some doc fixes.  (#111805)
1308
1309 2003-05-05  Christian Rose  <menthos@menthos.com>
1310
1311         * configure.in: Added sr and sr@Latn to ALL_LINGUAS.
1312
1313 Thu Apr 24 19:12:05 2003  Owen Taylor  <otaylor@redhat.com>
1314
1315         * autogen.sh (have_libtool): Accept libtool-1.5. (#111483)
1316
1317 2003-04-09  Matthias Clasen  <maclas@gmx.de>
1318
1319         * INSTALL: 
1320         * INSTALL.in: Remove list of configuration flags, since these 
1321         are already documented in docs/reference/glib/building.sgml.
1322
1323 2003-04-08  Matthias Clasen  <maclas@gmx.de>
1324
1325         * INSTALL: Move Cross-compliation information to reference manual.
1326
1327 Mon Apr  7 13:40:28 2003  Owen Taylor  <otaylor@redhat.com>
1328
1329         * glib/gmain.c (g_main_loop_run): When waiting for
1330         the main loop to be freed up, wait on either
1331         !loop->is_running or got_ownership, not both.
1332         (Caused gtk_dialog_run() not to work in other
1333         threads, reported by Jean-Yves Lefort)
1334
1335 2003-04-07  Matthias Clasen  <maclas@gmx.de>
1336
1337         * glib/gutf8.c (g_utf8_strlen): Warn if p == NULL && max != 0.
1338         (#110087) 
1339
1340 2003-04-01  Tor Lillqvist  <tml@iki.fi>
1341
1342         * glib/glib.def: Add g_string_chunk_insert_len.
1343
1344 2003-04-01  Matthias Clasen  <maclas@gmx.de>
1345
1346         * glib/gstring.[hc] (g_string_chunk_insert_len): New function, to
1347         insert possible non-nul-terminated byte sequences into a string
1348         chunk.  (#96279)
1349         (g_string_chunk_insert): Implement in terms of
1350         g_string_chunk_insert_len() now.
1351
1352 2003-03-30  Matthias Clasen  <maclas@gmx.de>
1353
1354         * glib/gstring.c (g_string_new): Optimize the common cases 
1355         (init == NULL or init == "") a bit.
1356         * glib/gmarkup.c, glib/gmessages.c, glib/gscanner.c,
1357         glib/gshell.c, glib/gspawn-win32-helper.c, glib/gspawn-win32.c,
1358         glib/gspawn.c, gobject/gvaluetransform.c: replace uses of 
1359         g_string_new ("") by g_string_new (NULL).  (#106973, Morten Welinder)
1360
1361         * glib/gutf8.c (UNICODE_VALID): Update to Unicode 3.1 and optimize
1362         a bit.  (#107427, Noah Lewitt)
1363
1364         * glib/libcharset/config.charset: Add cp1251 support for Solaris.
1365         (#104738, Hidetoshi Tajima)
1366
1367         * glib/gconvert.c (UnsafeCharacterSet): Get rid of
1368         UNSAFE_DOS_PATH.
1369         (acceptable): Align with RFC2396.  (#59653)
1370
1371         * tests/uri-test.c: Adjust to the changes above.
1372
1373 2003-03-26  Christian Rose  <menthos@menthos.com>
1374
1375         * configure.in: Added "yi" to ALL_LINGUAS.
1376
1377 2003-03-19  Matthias Clasen  <maclas@gmx.de>
1378
1379         * glib/giochannel.c (g_io_channel_read_to_end): Fix docs.
1380
1381 2003-03-19  Anders Carlsson  <andersca@codefactory.se>
1382
1383         * configure.in: Bump version to 2.3.0
1384
1385 2003-03-14  Sebastian Wilhelmi  <seppi@seppi.de>
1386
1387         * glib/gthread.c: Do not define function g_thread_init_glib, if
1388         not G_THREADS_ENABLED. It's not called bu g_thread_init() then,
1389         but calls other, in that case undefined functions.
1390
1391 2003-03-06  Matthias Clasen  <maclas@gmx.de>
1392
1393         * glib/gmain.c (g_main_context_find_source_by_id): 
1394         (g_main_context_find_source_by_funcs_user_data): Fix FALSE/NULL
1395         confusion.  (#107646, Morten Welinder)
1396
1397 2003-03-01  James Henstridge  <james@daa.com.au>
1398
1399         * autogen.sh: require automake 1.7.  Add calls to libtoolize and
1400         gtkdocize.  Clean up some of the error messages.
1401
1402         * configure.in: move version declaration to the top of the file
1403         (before AC_INIT), using M4 macros.
1404         GLIB_AC_DIVERT_BEFORE_HELP() calls no longer necessary, due to use
1405         of M4 macro expansion in help messages instead.
1406         Convert AC_ARG_WITH/AC_ARG_ENABLE calls to use AC_HELP_STRING to
1407         format help strings.  Use quadrigraphs to get square brackets to
1408         show correctly.
1409         Replace gtk-doc checks with a call to GTK_DOC_CHECK() macro.
1410         Use AC_CONFIG_COMMANDS([glibconfig.h], ...) to output
1411         glibconfig.h, so that "./config.status glibconfig.h" works.
1412         Add an extra AC_CONFIG_FILES call listing other files we want
1413         generated by config.status protected by an "if false" block.  This
1414         way automake generates the rules needed to rebuild the files for
1415         us.
1416         Add quotes in various places.
1417
1418         * docs/reference/*/Makefile.am: convert to use the common
1419         gtk-doc.make file.  This localises the complexity to a single
1420         makefile fragment maintained with gtk-doc itself.
1421
1422         * */Makefile.am: remove unneeded rules to build win32 files with
1423         config.status.  Automake now does this for us.
1424         Replace instances of @FOO@ with $(FOO) where appropriate -- this
1425         allows automake to do a better job checking the makefile.
1426         Add some files to DISTCLEANFILES where appropriate
1427
1428         * Makefile.am: use the DISTCHECK_CONFIGURE_FLAGS variable to
1429         ensure that --enable-gtk-doc is passed to configure during a
1430         distcheck.  Remove the custom distcheck, since the standard one
1431         will now do.
1432
1433         * gobject/Makefile.am: switch to BUILT_SOURCES, since that now
1434         works.
1435
1436 2003-02-26  Matthias Clasen  <maclas@gmx.de>
1437
1438         * glib/gstrfuncs.c (g_strdup_vprintf): Use g_strndup, not
1439         g_strdup, since we know the length in advance.
1440
1441         * glib/gunidecomp.c (g_unicode_canonical_decomposition): Use
1442         g_malloc instead of directly using malloc.
1443
1444 2003-02-25  Tor Lillqvist  <tml@iki.fi>
1445
1446         * glib/glib.def: Add a couple of missing entries, thanks to Cedric
1447         Gustin. Thread initialization function changes according to
1448         Sebastian Wilhelmi's changes below (2003-02-14).
1449
1450 2003-02-24  Matthias Clasen  <maclas@gmx.de>
1451
1452         * glib/gdir.c (g_dir_read_name): Clarify documentation.
1453
1454 2003-02-18  Sebastian Wilhelmi  <seppi@seppi.de>
1455
1456         * configure.in: Make glib_thread_test not unnecessarily convert
1457         between int and void*. (#106278). Let main return int.
1458
1459         * configure.in: Add an argument to specify the default thread
1460         attribute to glib_thread_test. Disappeared somewhere between 2.0
1461         and 2.2.
1462
1463 2003-02-14  Sebastian Wilhelmi  <seppi@seppi.de>
1464
1465         Fixes for #101264 and #99372:
1466
1467         * glib/gconvert.h, glib/gmain.c, glib/gmem.c, glib/gmessages.c,
1468         glib/grand.c: Include gthreadinit.h and rename the thread
1469         initialization functions a bit and let them start with _, so that
1470         later we can stop exporting them.
1471         
1472         * glib/gmem.c, glib/gmessages.c: Move the g_private_new() calls to
1473         new functions. They have to be called after setting
1474         g_threads_got_initialized to TRUE (see #101264).
1475
1476         * glib/gthread.c: Include gthreadinit.h. Renamed g_mutex_init() to
1477         g_thread_init_glib(). Call the thread initialization functions
1478         (which are not allowed to call g_private_new), then set
1479         g_threads_got_initialized to TRUE, then call the other thread
1480         initialization functions (which must not call anything but
1481         g_private_new()).
1482         
1483         * glib/gthreadinit.h: New private header to cleanly declare all
1484         thread initialization functions.
1485
1486         * gthread/gthread-impl.c: Include gthreadinit.h. In
1487         g_thread_init() just call g_thread_init_glib(), which in turn calls the
1488         other functions (see #99372).
1489         
1490         * glib/Makefile.am: Added gthreadinit.h.
1491
1492 2003-02-12  Sebastian Wilhelmi  <seppi@seppi.de>
1493
1494         * configure.in: Make GLib recognize Tru64Unix thread system. (#103020)
1495
1496 2003-02-11  Tor Lillqvist  <tml@iki.fi>
1497
1498         * Makefile.am (EXTRA_DIST): Include ChangeLog.pre-2-2.
1499
1500         * glib-zip.in: Include also the gtk-doc/html documentation in the
1501         developer package.
1502
1503         * README.win32: Updates.
1504
1505 2003-02-11  Sebastian Wilhelmi  <seppi@seppi.de>
1506
1507         * AUTHORS: Changed my e-mail address.
1508         * glib/grand.c: Removed my e-mail address.
1509
1510 2003-02-10  Mohammad DAMT  <mdamt@bisnisweb.com>
1511
1512         * po/id.po: Added Indonesian translation
1513         * configure.in: Added "id" to ALL_LINGUAS
1514
1515 2003-02-06  Matthias Clasen  <maclas@gmx.de>
1516
1517         * glib/gmessages.h: 
1518         * glib/gmem.h: 
1519         * glib/ghash.h: 
1520         * glib/gasyncqueue.h: 
1521         * glib/garray.h: 
1522         * glib/ghook.h: 
1523         * glib/gtypes.h: Fix a bunch of typos in header comments.
1524         (#102422, Morten Welinder)
1525
1526 2003-02-04  Tor Lillqvist  <tml@iki.fi>
1527
1528         * glib/giowin32.c (g_io_channel_unix_new): Fix typo: Should be
1529         SOCKET_ERROR, not SO_ERROR. Noticed by Daniel Kaufmann.
1530         
1531         Merge from stable branch: 
1532
1533         Fix for bug #104014, reported by Alex Shaduri:
1534         
1535         * glib/gspawn-win32.c (protect_argv): New function. Add
1536         double-quotes around argv elements that need it, and escape
1537         embedded double-quotes with backslash.
1538         (do_spawn_with_pipes) Call protect_argv().
1539
1540         * glib/gspawn-win32-helper.c (WinMain): Call protect_argv().
1541
1542         * glib/gspawn.c (g_spawn_async_with_pipes): Document argument
1543         vector vs. command line details on Win32.
1544         (g_spawn_command_line_sync): Improve documentation about
1545         backslashes in the command line on Windows.
1546
1547 Thu Jan 30 16:45:13 2003  Owen Taylor  <otaylor@redhat.com>
1548
1549         * Makefile.am: Remove references to glib.spec.
1550         (#102231)
1551
1552         * configure.in: Don't generate glib.spec.
1553
1554 Tue Jan 28 16:08:56 2003  Owen Taylor  <otaylor@redhat.com>
1555
1556         * m4macros/glib-gettext.m4: If msgfmt isn't found,
1557         unset gt_cv_have_gettext. (#102552, Tim Mooney)
1558
1559 Tue Jan 28 15:18:24 2003  Owen Taylor  <otaylor@redhat.com>
1560
1561         * autogen.sh (have_automake): Fix version in complaint
1562         message about automake. (#104366, Rich Burridge)
1563
1564 2003-01-22  Pablo Saratxaga  <pablo@mandrakesoft.com>
1565
1566         * configure.in: Added Bengali (bn) to ALL_LINGUAS
1567
1568 2003-01-21  Christian Rose  <menthos@menthos.com>
1569
1570         * configure.in: Added "mn" to ALL_LINGUAS.
1571
1572 2003-01-20  Pablo Saratxaga  <pablo@mandrakesoft.com>
1573
1574         * configure.in: Added Farsi (fa), Italian (it), Latvian (lv),
1575         Macedonian (mk) to ALL_LINGUAS
1576
1577 2003-01-16  Daniel Yacob <locales@geez.org>
1578
1579         * configure.in: added am to ALL_LINGUAS
1580         
1581 2003-01-12  Tor Lillqvist  <tml@iki.fi>
1582
1583         * glib/glib.def: Add some missing entries. Thanks to Kenichi SUTO.
1584
1585 2003-01-05  Tor Lillqvist  <tml@iki.fi>
1586
1587         * README.win32: Updates.
1588
1589         * configure.in: Don't use -lm in TRIO_LIBS on Windows, with no
1590         libm. (Mingw has a dummy libm.a, but the .pc file should be
1591         useable by MSVC users, too.)
1592
1593 2003-01-25  Ron Steinke  <rsteinke@w-link.net>
1594
1595         (Ancient, binary compatible fixes found sitting in my tree)
1596
1597         * Added early checks for count == 0 and buf == NULL in g_io_channel_read()
1598
1599         * Better error message for EFAULT in  g_io_channel_error_from_errno()
1600
1601 2003-01-04  Tor Lillqvist  <tml@iki.fi>
1602
1603         * Makefile.am (BUILT_EXTRA_DIST): Don't distribute glib-zip.
1604
1605         * {glib,gmodule,gobject,gthread}/Makefile.am:
1606         [Win32] Install also the .def files, to help users generate
1607         import libraries for other compilers. Uninstall, too.
1608
1609         * glib-zip.in: Include .def files from above.
1610
1611         * glib/giowin32.c (g_io_win32_fd_get_flags_internal): Don't claim
1612         broken pipes are unreadable. (Well, they are, but read() handles
1613         it, and treats it like EOF.)
1614
1615 Thu Jan  2 16:19:15 2003  Manish Singh  <yosh@gimp.org>
1616
1617         * configure.in: use AC_COMPILE_IFELSE instead of AC_TRY_COMPILE for
1618         tests for inline keywords. Fixes #101976.
1619
1620 2003-01-02  Tor Lillqvist  <tml@iki.fi>
1621
1622         * glib/gwin32.h: Correct the comment telling what headers have
1623         the declarations of some POSIXish functions.
1624
1625         * glib/giowin32.c (g_io_win32_fd_get_flags_internal): Fix braino:
1626         The checks for readability/writeability were backwards.
1627
1628 2003-01-01  Tor Lillqvist  <tml@iki.fi>
1629
1630         * glib/gmessages.c (ensure_stderr_valid): New function, parallel
1631         to ensure_stdout_valid(). #defined as empty on Unix. Move the
1632         alloc_console_called static flag inside these two functions.
1633         (ensure_stdout_valid, ensure_stderr_valid): Check the C stdout and
1634         stderr streams for validity, instead of what GetStdHandle() returns.
1635         (mklevel_prefix): Do use either stderr or stdout on Windows,
1636         too. Otherwise g_warning() messages (that are just warnings, by
1637         definition) will get mixed with proper stdout output. Noticed in
1638         GIMP's gimpconfig-dump.
1639         (strdup_convert, mklevel_prefix, g_printerr): Call
1640         ensure_stderr_valid() before trying to use stderr.
1641         (g_logv): [Win32] Convert message to current codepage before
1642         display with MessageBox().
1643
1644 2002-12-28  Tõivo Leedjärv  <toivo@linux.ee>
1645
1646         * configure.in: Added et to ALL_LINGUAS.
1647