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