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