1 2003-07-09 Matthias Clasen <maclas@gmx.de>
3 Support for one-time initialization functions. (#69668, Sebastian Wilhelmi)
5 * configure.in: Check whether double checked locking is safe, define g_once() in
6 glibconfig.h accordingly.
7 * glib/gthread.h: Add GOnce, GOnceStatus, G_ONCE_INIT and g_once_impl.
8 * glib/gthread.c (g_once_impl): Fallback implementation using a mutex if double checked
10 * tests/thread-test.c: Add tests for g_once().
12 2003-07-02 Matthias Clasen <maclas@gmx.de>
14 * glib/gstrfuncs.c (g_strfreev): Move docs inline, document behavior
15 for NULL. (#116439, Steve Chaplin)
17 2003-06-25 Abigail Brady <morwen@evilmagic.org>
19 * glib/gconvert.c (g_convert_with_fallback): Use C99 style \uxxxx
20 and \Uxxxxyyyy escapes instead for fallback instead of perl-style
21 \X{xxxx} ones, fixing bug #114284.
23 2003-06-25 Tor Lillqvist <tml@iki.fi>
25 * glib/giowin32.c (g_io_channel_unix_new): Pass real &optval and
26 &optlen to getsockopt() instead of NULL. Don't remember why I
27 thought that NULL could be used (as we don't actually use the
28 returned value for anything), the Platform SDK documentation
31 2003-06-19 Matthias Clasen <maclas@gmx.de>
33 * glib/gutils.c (g_path_get_basename): Move the documentation
34 inline and add details. (#108505)
36 2003-06-18 Matthias Clasen <maclas@gmx.de>
38 * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
39 macros to check for XML catalog contents and path, borrowed from
42 * configure.in: New option --enable-man to enable regeneration of
43 man pages from Docbook, if the necessary tools are found.
45 2003-06-17 Matthias Clasen <maclas@gmx.de>
47 * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
48 macros to check for XML catalog contents and path, borrowed from
51 * configure.in: New option --enable-man to enable regeneration of
52 man pages from Docbook, if the necessary tools are found.
54 2003-06-15 Tor Lillqvist <tml@iki.fi>
56 * glib-zip.in (DLLDIR): Test where the DLLs actually are.
58 * README.win32: Point to FSF's binary Win32 distributions of
59 libiconv and gettext-runtime.
61 2003-06-11 Tor Lillqvist <tml@iki.fi>
63 * glib-zip.in (DEVZIP): libtool 1.5 installs DLLs in the bin
64 subdirectory, so get them from there.
66 * glib/gwin32.c (g_win32_getlocale): Use "sr@Latn" and "sr" in the
67 same way as the po files for Serbian in Latin and Cyrillic script.
69 2003-06-11 Sebastian Wilhelmi <seppi@seppi.de>
71 * configure.in: Remove false &. Spotted by Albert Chin
72 <gtk-devel-list@thewrittenword.com>.
74 2003-06-08 Tor Lillqvist <tml@iki.fi>
76 * glib/giowin32.c: Fix indentation and spacing. Use
77 INADDR_LOOPBACK instead of inet_addr("127.0.0.1") and
80 Sat Jun 6 16:18:10 2003 Andrew Lanoix <alanoix@umich.edu>
82 * glib/giowin32.c: Resolved thread deadlocks in socket
83 ichannel code to support Add-Cancel-Add watch functionality
84 on windows. Also cleaned up socket error handling to not
85 segfault and do the right thing.
87 Fri Jun 6 10:24:23 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
89 * m4macros/glib-gettext.m4: Test for Solaris native gettext
90 in libc, seeing if it supports GNU catalog format (#85217).
92 Thu Jun 5 23:40:31 2003 Owen Taylor <otaylor@redhat.com>
94 * glib/gmain.c: When dispatching a source that is
95 !CAN_RECURSE, temporarily remove any file descriptors
96 that that source has registered from the main loop, to keep
97 recursive main loops from busy-waiting if input
98 becomes available on one of those file descriptors.
99 (#112222, Christian Krause)
101 * glib/gmain.c (g_source_set_priority): Properly
102 remove the source from the context's source list
103 and reinsert it sorted, rather than simply setting
104 source->next/prev to NULL! (#114274)
106 2003-06-06 Matthias Clasen <maclas@gmx.de>
108 * glib/gstring.c (g_string_append_printf_internal): Use
109 g_vasprintf() and g_string_append_len(), thus enabling embedded
110 nuls in the result of g_string_printf(). (#92492, Owen Taylor)
112 * tests/string-test.c: Add a test for embedded nuls in the
113 result of g_string_printf().
115 * glib/gprintf.[ch]: Synchronize argument names with headers and docs.
116 (g_vasprintf): An implementation of vasprintf(), code was lifted
117 from g_strdup_vprintf(). (#112365)
119 * glib/gstrfuncs.c (g_strdup_vprintf): Just use g_vasprintf().
121 2003-06-05 Tor Lillqvist <tml@iki.fi>
124 * glib/gmain.h: Remove bogus (Win32-only) declaration of
125 g_main_poll_win32_msg_add(). No such function exists.
127 * glib/gmain.c (g_poll) [Win32]: Use g_win32_error_message() for
128 better warning messages.
130 2003-06-04 Noah Levitt <nlevitt@columbia.edu>
132 * glib/gunidecomp.h (combine): Fix typo (#114375). Also, make the
135 2003-06-03 Sebastian Wilhelmi <seppi@seppi.de>
137 * configure.in: Test for pthread_setschedparam. If not existant,
138 disable priorities. (#104718)
140 Mon Jun 2 14:18:21 2003 Owen Taylor <otaylor@redhat.com>
142 Patch from Jeffrey Stedfast <fejj@ximian.com> (#104825)
144 * glib/gspawn.c (read_data): Don't read() into '&buf', while this
145 is technically okay - it is clearer as just 'buf'.
146 (write_all): New helper function that handles write() interrupts.
147 (write_err_and_exit): Use write_all() instead of write().
148 (fork_exec_with_pipes): Same here.
150 Sun Jun 1 09:42:36 2003 Owen Taylor <otaylor@redhat.com>
152 * glib/giochannel.c (g_io_error_get_from_g_error): Put
153 the g_return_val_if_fail() in the right place.
155 Fri May 31 1:17:45 2003 Ray Strode <halfline@hawaii.rr.com>
157 * glib/giochannel.c (g_io_channel_error_from_errno):
158 Fix typo: should be G_IO_ERROR_UNKNOWN not
159 G_ERROR_ERROR_UNKNOWN
161 Fri May 30 19:23:47 2003 Owen Taylor <otaylor@redhat.com>
163 * glib/gstrfuncs.c (g_ascii_strncasecmp)
164 * glib/gstrfuncs.c (g_ascii_strcasecmp): Use TOLOWER()
165 macro instead of g_ascii_tolower() (#107138)
167 Fri May 30 19:09:25 2003 Owen Taylor <otaylor@redhat.com>
169 * m4macros/glib-gettext.m4: Backport better handling
170 of ALL_LINGUAS from gettext.m4. (#103808, Andras Salamon)
172 Fri May 30 18:46:05 2003 Owen Taylor <otaylor@redhat.com>
174 * m4macros/glib-gettext.m4: expand $exec_prefix as
175 well as $prefix. (#107290, reported by Morten Welinder,
176 patch from Raja Harinath)
178 Fri May 30 17:24:23 2003 Owen Taylor <otaylor@redhat.com>
180 * glib-gettextize.in: Quote $srcdir to handle $srcdir
181 with spaces (#107850, Evan Martin)
183 Fri May 30 16:48:26 2003 Owen Taylor <otaylor@redhat.com>
185 * glib/giochannel.c (g_io_channel_error_from_errno):
186 Silently return G_IO_CHANNEL_ERROR_FAILED for EINTR,
187 since close() can return EINTR. (#11842, Balazs Scheidler)
189 Fri May 30 15:51:43 2003 Owen Taylor <otaylor@redhat.com>
191 * glib/giochannel.c (g_io_error_get_from_g_error):
192 Do a g_return_val_if_fail() on err == NULL to be a
193 bit more robuts on buggy IO channel implementations.
194 (#113396, Dan Winship)
196 Tue May 27 19:56:35 2003 Owen Taylor <otaylor@redhat.com>
198 * glib/gmacros.h: __PRETTY_FUNCTION__ was made a non-token
199 before gcc-3.0.0 for C++. (Fix from Martin Kretzschmar,
202 2003-05-28 Matthias Clasen <maclas@gmx.de>
204 * tests/patterntest.c: Remain silent when sucessful.
206 * tests/Makefile.am: Add patterntest to make check. (113143)
208 2003-05-27 Matthias Clasen <maclas@gmx.de>
210 * glib/gstrfuncs.c (g_strdup): Use memcpy instead of
211 strcpy. (#106988, Christian Biere)
213 2003-05-27 Matthias Clasen <maclas@gmx.de>
215 * glib/gstrfuncs.c (g_strdup): Use memcpy instead of
216 strcpy. (#106988, Christian Biere)
218 2003-05-23 Noah Levitt <nlevitt@columbia.edu>
220 * glib/gutf8.c: Fix typo in UNICODE_VALID (related to #107427).
222 2003-05-23 Noah Levitt <nlevitt@columbia.edu>
224 * glib/guniprop.c: Remove stale comment.
226 2003-05-22 Noah Levitt <nlevitt@columbia.edu>
228 * glib/guniprop.c: Update g_unichar_iswide to Unicode 4.0 (#113404).
230 2003-05-21 Noah Levitt <nlevitt@columbia.edu>
232 * glib/guniprop.c: Fix obscure typo in case conversion routine
235 Tue May 20 14:14:55 2003 Manish Singh <yosh@gimp.org>
237 * configure.in: wrap 64-bit MIN/MAX limit constants in
238 G_GINT64_CONSTANT. Fixes bug #108699.
240 2003-05-19 Noah Levitt <nlevitt@columbia.edu>
242 * glib/gunibreak.c: Fix cut-and-pasto: g_unichar_break_type should
243 return G_UNICODE_BREAK_UNKNOWN if the character is greater than
246 2003-05-19 Noah Levitt <nlevitt@columbia.edu>
248 * glib/glist.c: Remove unused function g_list_sort2 (bug #113203).
250 2003-05-19 Noah Levitt <nlevitt@columbia.edu>
252 * glib/gunidecomp.c: Fix off-by-one error in
253 g_unicode_canonical_ordering (bug #113260).
255 2003-05-19 Arafat Medini <lumina@silverpen.de>
257 * ar.po: Added ar to ALL_LINGUAS
259 2003-05-17 Telsa Gwynne <hobbit@aloss.ukuu.org.uk>
261 * configure.in: Added cy to ALL_LINGUAS
263 2003-05-05 Matthias Clasen <maclas@gmx.de>
265 * glib/gstrfuncs.c (g_ascii_dtostr):
267 (g_ascii_strtod): Some doc fixes. (#111805)
269 2003-05-05 Christian Rose <menthos@menthos.com>
271 * configure.in: Added sr and sr@Latn to ALL_LINGUAS.
273 Thu Apr 24 19:12:05 2003 Owen Taylor <otaylor@redhat.com>
275 * autogen.sh (have_libtool): Accept libtool-1.5. (#111483)
277 2003-04-09 Matthias Clasen <maclas@gmx.de>
280 * INSTALL.in: Remove list of configuration flags, since these
281 are already documented in docs/reference/glib/building.sgml.
283 2003-04-08 Matthias Clasen <maclas@gmx.de>
285 * INSTALL: Move Cross-compliation information to reference manual.
287 Mon Apr 7 13:40:28 2003 Owen Taylor <otaylor@redhat.com>
289 * glib/gmain.c (g_main_loop_run): When waiting for
290 the main loop to be freed up, wait on either
291 !loop->is_running or got_ownership, not both.
292 (Caused gtk_dialog_run() not to work in other
293 threads, reported by Jean-Yves Lefort)
295 2003-04-07 Matthias Clasen <maclas@gmx.de>
297 * glib/gutf8.c (g_utf8_strlen): Warn if p == NULL && max != 0.
300 2003-04-01 Tor Lillqvist <tml@iki.fi>
302 * glib/glib.def: Add g_string_chunk_insert_len.
304 2003-04-01 Matthias Clasen <maclas@gmx.de>
306 * glib/gstring.[hc] (g_string_chunk_insert_len): New function, to
307 insert possible non-nul-terminated byte sequences into a string
309 (g_string_chunk_insert): Implement in terms of
310 g_string_chunk_insert_len() now.
312 2003-03-30 Matthias Clasen <maclas@gmx.de>
314 * glib/gstring.c (g_string_new): Optimize the common cases
315 (init == NULL or init == "") a bit.
316 * glib/gmarkup.c, glib/gmessages.c, glib/gscanner.c,
317 glib/gshell.c, glib/gspawn-win32-helper.c, glib/gspawn-win32.c,
318 glib/gspawn.c, gobject/gvaluetransform.c: replace uses of
319 g_string_new ("") by g_string_new (NULL). (#106973, Morten Welinder)
321 * glib/gutf8.c (UNICODE_VALID): Update to Unicode 3.1 and optimize
322 a bit. (#107427, Noah Lewitt)
324 * glib/libcharset/config.charset: Add cp1251 support for Solaris.
325 (#104738, Hidetoshi Tajima)
327 * glib/gconvert.c (UnsafeCharacterSet): Get rid of
329 (acceptable): Align with RFC2396. (#59653)
331 * tests/uri-test.c: Adjust to the changes above.
333 2003-03-26 Christian Rose <menthos@menthos.com>
335 * configure.in: Added "yi" to ALL_LINGUAS.
337 2003-03-19 Matthias Clasen <maclas@gmx.de>
339 * glib/giochannel.c (g_io_channel_read_to_end): Fix docs.
341 2003-03-19 Anders Carlsson <andersca@codefactory.se>
343 * configure.in: Bump version to 2.3.0
345 2003-03-14 Sebastian Wilhelmi <seppi@seppi.de>
347 * glib/gthread.c: Do not define function g_thread_init_glib, if
348 not G_THREADS_ENABLED. It's not called bu g_thread_init() then,
349 but calls other, in that case undefined functions.
351 2003-03-06 Matthias Clasen <maclas@gmx.de>
353 * glib/gmain.c (g_main_context_find_source_by_id):
354 (g_main_context_find_source_by_funcs_user_data): Fix FALSE/NULL
355 confusion. (#107646, Morten Welinder)
357 2003-03-01 James Henstridge <james@daa.com.au>
359 * autogen.sh: require automake 1.7. Add calls to libtoolize and
360 gtkdocize. Clean up some of the error messages.
362 * configure.in: move version declaration to the top of the file
363 (before AC_INIT), using M4 macros.
364 GLIB_AC_DIVERT_BEFORE_HELP() calls no longer necessary, due to use
365 of M4 macro expansion in help messages instead.
366 Convert AC_ARG_WITH/AC_ARG_ENABLE calls to use AC_HELP_STRING to
367 format help strings. Use quadrigraphs to get square brackets to
369 Replace gtk-doc checks with a call to GTK_DOC_CHECK() macro.
370 Use AC_CONFIG_COMMANDS([glibconfig.h], ...) to output
371 glibconfig.h, so that "./config.status glibconfig.h" works.
372 Add an extra AC_CONFIG_FILES call listing other files we want
373 generated by config.status protected by an "if false" block. This
374 way automake generates the rules needed to rebuild the files for
376 Add quotes in various places.
378 * docs/reference/*/Makefile.am: convert to use the common
379 gtk-doc.make file. This localises the complexity to a single
380 makefile fragment maintained with gtk-doc itself.
382 * */Makefile.am: remove unneeded rules to build win32 files with
383 config.status. Automake now does this for us.
384 Replace instances of @FOO@ with $(FOO) where appropriate -- this
385 allows automake to do a better job checking the makefile.
386 Add some files to DISTCLEANFILES where appropriate
388 * Makefile.am: use the DISTCHECK_CONFIGURE_FLAGS variable to
389 ensure that --enable-gtk-doc is passed to configure during a
390 distcheck. Remove the custom distcheck, since the standard one
393 * gobject/Makefile.am: switch to BUILT_SOURCES, since that now
396 2003-02-26 Matthias Clasen <maclas@gmx.de>
398 * glib/gstrfuncs.c (g_strdup_vprintf): Use g_strndup, not
399 g_strdup, since we know the length in advance.
401 * glib/gunidecomp.c (g_unicode_canonical_decomposition): Use
402 g_malloc instead of directly using malloc.
404 2003-02-25 Tor Lillqvist <tml@iki.fi>
406 * glib/glib.def: Add a couple of missing entries, thanks to Cedric
407 Gustin. Thread initialization function changes according to
408 Sebastian Wilhelmi's changes below (2003-02-14).
410 2003-02-24 Matthias Clasen <maclas@gmx.de>
412 * glib/gdir.c (g_dir_read_name): Clarify documentation.
414 2003-02-18 Sebastian Wilhelmi <seppi@seppi.de>
416 * configure.in: Make glib_thread_test not unnecessarily convert
417 between int and void*. (#106278). Let main return int.
419 * configure.in: Add an argument to specify the default thread
420 attribute to glib_thread_test. Disappeared somewhere between 2.0
423 2003-02-14 Sebastian Wilhelmi <seppi@seppi.de>
425 Fixes for #101264 and #99372:
427 * glib/gconvert.h, glib/gmain.c, glib/gmem.c, glib/gmessages.c,
428 glib/grand.c: Include gthreadinit.h and rename the thread
429 initialization functions a bit and let them start with _, so that
430 later we can stop exporting them.
432 * glib/gmem.c, glib/gmessages.c: Move the g_private_new() calls to
433 new functions. They have to be called after setting
434 g_threads_got_initialized to TRUE (see #101264).
436 * glib/gthread.c: Include gthreadinit.h. Renamed g_mutex_init() to
437 g_thread_init_glib(). Call the thread initialization functions
438 (which are not allowed to call g_private_new), then set
439 g_threads_got_initialized to TRUE, then call the other thread
440 initialization functions (which must not call anything but
443 * glib/gthreadinit.h: New private header to cleanly declare all
444 thread initialization functions.
446 * gthread/gthread-impl.c: Include gthreadinit.h. In
447 g_thread_init() just call g_thread_init_glib(), which in turn calls the
448 other functions (see #99372).
450 * glib/Makefile.am: Added gthreadinit.h.
452 2003-02-12 Sebastian Wilhelmi <seppi@seppi.de>
454 * configure.in: Make GLib recognize Tru64Unix thread system. (#103020)
456 2003-02-11 Tor Lillqvist <tml@iki.fi>
458 * Makefile.am (EXTRA_DIST): Include ChangeLog.pre-2-2.
460 * glib-zip.in: Include also the gtk-doc/html documentation in the
463 * README.win32: Updates.
465 2003-02-11 Sebastian Wilhelmi <seppi@seppi.de>
467 * AUTHORS: Changed my e-mail address.
468 * glib/grand.c: Removed my e-mail address.
470 2003-02-10 Mohammad DAMT <mdamt@bisnisweb.com>
472 * po/id.po: Added Indonesian translation
473 * configure.in: Added "id" to ALL_LINGUAS
475 2003-02-06 Matthias Clasen <maclas@gmx.de>
480 * glib/gasyncqueue.h:
483 * glib/gtypes.h: Fix a bunch of typos in header comments.
484 (#102422, Morten Welinder)
486 2003-02-04 Tor Lillqvist <tml@iki.fi>
488 * glib/giowin32.c (g_io_channel_unix_new): Fix typo: Should be
489 SOCKET_ERROR, not SO_ERROR. Noticed by Daniel Kaufmann.
491 Merge from stable branch:
493 Fix for bug #104014, reported by Alex Shaduri:
495 * glib/gspawn-win32.c (protect_argv): New function. Add
496 double-quotes around argv elements that need it, and escape
497 embedded double-quotes with backslash.
498 (do_spawn_with_pipes) Call protect_argv().
500 * glib/gspawn-win32-helper.c (WinMain): Call protect_argv().
502 * glib/gspawn.c (g_spawn_async_with_pipes): Document argument
503 vector vs. command line details on Win32.
504 (g_spawn_command_line_sync): Improve documentation about
505 backslashes in the command line on Windows.
507 Thu Jan 30 16:45:13 2003 Owen Taylor <otaylor@redhat.com>
509 * Makefile.am: Remove references to glib.spec.
512 * configure.in: Don't generate glib.spec.
514 Tue Jan 28 16:08:56 2003 Owen Taylor <otaylor@redhat.com>
516 * m4macros/glib-gettext.m4: If msgfmt isn't found,
517 unset gt_cv_have_gettext. (#102552, Tim Mooney)
519 Tue Jan 28 15:18:24 2003 Owen Taylor <otaylor@redhat.com>
521 * autogen.sh (have_automake): Fix version in complaint
522 message about automake. (#104366, Rich Burridge)
524 2003-01-22 Pablo Saratxaga <pablo@mandrakesoft.com>
526 * configure.in: Added Bengali (bn) to ALL_LINGUAS
528 2003-01-21 Christian Rose <menthos@menthos.com>
530 * configure.in: Added "mn" to ALL_LINGUAS.
532 2003-01-20 Pablo Saratxaga <pablo@mandrakesoft.com>
534 * configure.in: Added Farsi (fa), Italian (it), Latvian (lv),
535 Macedonian (mk) to ALL_LINGUAS
537 2003-01-16 Daniel Yacob <locales@geez.org>
539 * configure.in: added am to ALL_LINGUAS
541 2003-01-12 Tor Lillqvist <tml@iki.fi>
543 * glib/glib.def: Add some missing entries. Thanks to Kenichi SUTO.
545 2003-01-05 Tor Lillqvist <tml@iki.fi>
547 * README.win32: Updates.
549 * configure.in: Don't use -lm in TRIO_LIBS on Windows, with no
550 libm. (Mingw has a dummy libm.a, but the .pc file should be
551 useable by MSVC users, too.)
553 2003-01-25 Ron Steinke <rsteinke@w-link.net>
555 (Ancient, binary compatible fixes found sitting in my tree)
557 * Added early checks for count == 0 and buf == NULL in g_io_channel_read()
559 * Better error message for EFAULT in g_io_channel_error_from_errno()
561 2003-01-04 Tor Lillqvist <tml@iki.fi>
563 * Makefile.am (BUILT_EXTRA_DIST): Don't distribute glib-zip.
565 * {glib,gmodule,gobject,gthread}/Makefile.am:
566 [Win32] Install also the .def files, to help users generate
567 import libraries for other compilers. Uninstall, too.
569 * glib-zip.in: Include .def files from above.
571 * glib/giowin32.c (g_io_win32_fd_get_flags_internal): Don't claim
572 broken pipes are unreadable. (Well, they are, but read() handles
573 it, and treats it like EOF.)
575 Thu Jan 2 16:19:15 2003 Manish Singh <yosh@gimp.org>
577 * configure.in: use AC_COMPILE_IFELSE instead of AC_TRY_COMPILE for
578 tests for inline keywords. Fixes #101976.
580 2003-01-02 Tor Lillqvist <tml@iki.fi>
582 * glib/gwin32.h: Correct the comment telling what headers have
583 the declarations of some POSIXish functions.
585 * glib/giowin32.c (g_io_win32_fd_get_flags_internal): Fix braino:
586 The checks for readability/writeability were backwards.
588 2003-01-01 Tor Lillqvist <tml@iki.fi>
590 * glib/gmessages.c (ensure_stderr_valid): New function, parallel
591 to ensure_stdout_valid(). #defined as empty on Unix. Move the
592 alloc_console_called static flag inside these two functions.
593 (ensure_stdout_valid, ensure_stderr_valid): Check the C stdout and
594 stderr streams for validity, instead of what GetStdHandle() returns.
595 (mklevel_prefix): Do use either stderr or stdout on Windows,
596 too. Otherwise g_warning() messages (that are just warnings, by
597 definition) will get mixed with proper stdout output. Noticed in
598 GIMP's gimpconfig-dump.
599 (strdup_convert, mklevel_prefix, g_printerr): Call
600 ensure_stderr_valid() before trying to use stderr.
601 (g_logv): [Win32] Convert message to current codepage before
602 display with MessageBox().
604 2002-12-28 Tõivo Leedjärv <toivo@linux.ee>
606 * configure.in: Added et to ALL_LINGUAS.