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