1 Sun Mar 3 21:09:24 2002 Owen Taylor <otaylor@redhat.com>
3 * configure.in: Default to --disable-gtk-doc, to avoid
6 * autogen.sh: Add --enable-gtk-doc.
8 * configure.in: Default to --disable-static to go
9 along with Pango, GTK+ where we need to do that for
12 * Makefile.am: Add a slightly modified distcheck rule
13 that passes --enable-gtk-doc to the configure inside.
14 (So that 'make dist' succeeds inside.)
16 * configure.in *.pc.in **/Makefile.am m4macros/glib-2.0.m4
17 tests/makefile.mingw.in: Switch everything over to
20 Sun Mar 3 02:30:05 2002 Tim Janik <timj@gtk.org>
22 * glib/gscanner.h (_GScannerConfig): added padding.
24 * glib/ghook.h (struct _GHook): add two padding pointers.
26 Thu Feb 28 11:13:49 2002 Owen Taylor <otaylor@redhat.com>
28 * glib/gshell.c (g_shell_unquote): Fix memory leak.
31 2002-02-28 Sven Neumann <sven@gimp.org>
33 * m4macros/glib-2.0.m4: nicer output of configure --help.
35 2002-02-27 Daniel Elstner <daniel.elstner@gmx.net>
37 * glib/gdate.c (g_date_strftime): Remove the shortcut
38 for UTF-8 locales to ensure consistent behaviour. Fix
39 handling of the strftime return value, and avoid looping
40 if strftime is buggy and constantly returns 0. Always
41 return 0 if the output buffer was to small. (#72544)
43 Tue Feb 26 21:44:01 2002 Owen Taylor <otaylor@redhat.com>
45 * config.status config.guess: Remove these files
46 from CVS so we more-or-less current versions from
47 automake --add-missing. (Reported by Finlay Dobbie,
50 2002-02-26 Matthias Clasen <maclas@gmx.de>
52 * docs/debugging.txt, gobject/glib-genmarshal.c,
53 gobject/glib-genmarshal.1, gobject/Makefile.am, gobject/gtype.c:
54 Remove references to gruntime. This includes renaming the test
55 program testgruntime to testgobject and the debug envvar
56 GRUNTIME_DEBUG to GOBJECT_DEBUG. (#50877)
58 Tue Feb 26 14:56:31 2002 Owen Taylor <otaylor@redhat.com>
60 * glib-2.0.pc.in: Reorder @INTL_LIBS@ and @ICONV_LIBS@ in case
61 -lintl depends on -licon. (Miroslaw Dobrzanski-Neumann #72708)
63 Mon Feb 25 23:01:53 2002 Owen Taylor <otaylor@redhat.com>
65 * configure.in acconfig.h config.h.win32.in
66 glib/gconvert.c: Check for iconv_* in -liconv
67 as well as libiconv_* in -liconv since AIX ships
68 the system iconv in a separate library.
69 Patch from Miroslaw Dobrzanski-Neumann (#72569)
71 Mon Feb 25 22:46:29 2002 Owen Taylor <otaylor@redhat.com>
73 * glib/gdebug.h: Fix trailing , in enumeration
74 Miroslaw Dobrzanski-Neumann (#72574)
76 Mon Feb 25 21:58:01 2002 Owen Taylor <otaylor@redhat.com>
78 * glib/guniprop.c (g_unichar_toupper/lower): Account
79 for some characters having now uppercase/lowercase
80 equivalents in code, docs. (#65416)
82 Mon Feb 25 16:31:09 2002 Owen Taylor <otaylor@redhat.com>
84 * glib/gshell.c (tokenize_command_line): Fix quoting
85 of \' sequence (#72548, Christian Rose)
87 2002-02-24 Tor Lillqvist <tml@iki.fi>
89 * README.win32: Edits.
91 * config.h.win32.in: Add (as undefined) HAVE_UNSETENV,
92 _FILE_OFFSET_BITS and _LARGE_FILES, just for completeness.
94 * glibconfig.h.win32.in: Add the gcc-2.95.x undef of
97 Sat Feb 23 21:36:51 2002 Owen Taylor <otaylor@redhat.com>
99 * configure.in: 1.3.15, binary, interface age 0.
103 Sat Feb 23 14:54:13 2002 Owen Taylor <otaylor@redhat.com>
105 * glib/giochannel.h (struct _GIOChannel): Add a little bit
108 * glib/gmain.h (struct _GSource): Add a little bit of padding.
110 2002-02-21 Matthias Clasen <maclas@gmx.de>
112 * glib/gdebug.h: New header containing GTK_DEBUG-style debugging
113 support for GLib. Currently only the fatal_warnings debug option exists.
115 * glib/gmessages.c (g_log_msg_prefix_init): New one-shot function
116 for parsing G_MESSAGES_PREFIXED.
117 (_g_debug_init): New one-shot function for parsing G_DEBUG.
118 (g_log_write_prefix): Use g_log_msg_prefix_init().
119 (g_messages_init): Use g_log_msg_prefix_init() and _g_debug_init().
121 * glib/Makefile.am (libglib_1_3_la_SOURCES): Add gdebug.h.
123 Wed Feb 20 22:35:42 2002 Owen Taylor <otaylor@redhat.com>
125 Fixes from Miroslaw Dobrzanski-Neumann (#71963)
127 * glib/giounix.c (g_io_channel_new_file): Fix trailing comma
130 * configure.in: Check for unsetenv.
132 * test/uri-test.c: Fall back to trying putenv(VARNAME) if
133 unsetenv isn't present.
135 2002-02-20 Daniel Elstner <daniel.elstner@gmx.net>
137 * glib/gstring.[ch] (g_string_erase): Use gssize instead of
138 gsize as type of the pos and len arguments. (#71964)
140 2002-02-20 Simos Xenitellis <simos@hellug.gr>
142 * configure.in: Added el to ALL_LINGUAS (Greek language).
144 2002-02-19 Tor Lillqvist <tml@iki.fi>
146 * glib/gspawn-win32.c: Include <config.h> first here, too. Use
147 g_io_channel_read_chars() instead of (deprecated)
148 g_io_channel_read(). Set encoding to NULL for the channels used
149 for the pipes from the child.
151 * glib/giowin32.c (buffer_read): Do return G_IO_STATUS_EOF when
152 EOF has been reached. Otherwise, with the above change to
153 gspawn-win32.c, spawn-test hangs.
155 Mon Feb 18 20:18:23 2002 Owen Taylor <otaylor@redhat.com>
157 * glib/libcharset/Makefile.am (EXTRA_DIST): Remove
158 charset.alias from EXTRA_DIST; we don't want the
159 charset.alias from the make distcheck machine
160 on the target system!. (#70974, reported by
163 Mon Feb 18 12:40:36 2002 Owen Taylor <otaylor@redhat.com>
165 * configure.in: Turn off ISO varargs support for gcc-2.95
166 since it causes problems with ANSI and we we have GNUC
167 varargs. (#70024, reported by Morten Welinder, fix from
170 Sun Feb 17 11:37:06 2002 Owen Taylor <otaylor@redhat.com>
174 * glib/glibintl.h: Error out of config.h wasn't included
175 rather than including it, since config.h must be the
176 first thing included.
178 * glib/gconvert.c glib/gmarkup.c glib/gshell.c glib/gspawn.c
179 glib/gunibreak.c glib/gunidecomp.c glib/guniprop.c:
180 Include config.h as the first thing. (#71704, Morten
183 Fri Feb 15 11:41:42 2002 Owen Taylor <otaylor@redhat.com>
185 * configure.in: 1.3.14, binary age 0, interface age 0.
187 Fri Feb 15 10:41:51 2002 Owen Taylor <otaylor@redhat.com>
191 * configure.in: Require autoconf-2.52, run AC_SYS_LARGEFILE.
192 (#71410, Sven Neumann)
194 * glib/giounix.c glib/giowin32.c glib/giochannel.[ch]:
195 Change offset type for g_io_channel_seek[_position] to
198 2002-02-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
200 * tests/thread-test.c: Do not assume, that after
201 g_usleep(G_USEC_PER_SEC) the newly started thread began
202 running. Spotted by Miroslaw Dobrzanski-Neumann
203 <mne@mosaic-ag.com>. Make the test_g_static_rw_lock_thread threads
204 wait a random time. Make the test_g_static_rw_lock test run 5
207 2002-02-14 Tor Lillqvist <tml@iki.fi>
209 * glib/gmessages.c (g_logv): Use the #if branch with
210 G_BREAKPOINT() also on Win32. Remove the separate __asm int 3 for
211 MSVC, G_BREAKPOINT() does exactly that.
213 2002-02-14 James Henstridge <james@daa.com.au>
215 * m4macros/glib-gettext.m4: add third argument to the AC_DEFINE
216 calls, so users of the macro don't need to add entries to
217 acconfig.h in their package.
219 2002-02-13 Havoc Pennington <hp@redhat.com>
221 * glib/gmain.c (g_main_context_check): never dispatch sources of
222 mixed priority, because while iterating over the dispatch array a
223 new source with more priority may be added, while a source with
224 less priority remains in the dispatch array
226 2002-02-11 Darin Adler <darin@bentspoon.com>
228 * glib/gmessages.h: Use "if (expr) { } else" as I meant to in the
229 first place. The other form can trigger warnings in some compilers
230 that suspect a ";" after "if (expr)" is an error.
232 2002-02-11 Manish Singh <yosh@gimp.org>
234 * glib/gmessages.h: need statement terminators for the if clauses for
235 the preceding change.
237 2002-02-11 Darin Adler <darin@bentspoon.com>
239 * glib/gmessages.h: Use "if (expr) else" rather than
240 "if (!(expr))" so the parentheses don't disable the gcc
241 warnings about = vs. ==.
243 2002-02-11 jacob berkman <jacob@ximian.com>
245 * glib/gmarkup.h (g_markup_error_quark): match the signature in
248 2002-02-10 Hans Breuer <hans@breuer.org>
250 * glib/gfileutils.c : no sym links on win32, no lstat in msvcrt
252 * tests/makefile.msc.in : added uri-test
254 2002-02-09 Darin Adler <darin@bentspoon.com>
256 * glib/gmarkup.c: (xml_isspace): New.
257 (skip_spaces): g_unichar_isspace -> xml_isspace
258 * glib/gstrfuncs.c: (g_ascii_strtod): isspace -> g_ascii_isspace
259 isxdigit -> g_ascii_isxdigit, isdigit -> g_ascii_isdigit
261 2002-02-09 Matthias Clasen <matthias@local>
263 * tests/markups/valid-4.gmarkup: Test attribute value delimiters.
265 * glib/gmarkup.c (g_markup_parse_context_parse): Support
266 ' and " as attribute value delimiters. (#70677)
268 2002-02-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
270 * configure.in: Make --disable-threads work again. (#71034)
272 Fri Feb 8 23:52:27 2002 Owen Taylor <otaylor@redhat.com>
274 * gobject/gvaluetransform.c: Register transformations for
275 gint64, guint64. (#70780, patch from Andy Wingo)
277 * configure.in: Handle missing G_GINT64_FORMAT,
278 G_GUINT64_FORMAT ... harder to require GNU libc than GCC.
280 * NEWS: Some cleanups that I had setting around.
282 2002-02-08 Darin Adler <darin@bentspoon.com>
284 * glib/gconvert.h: Make hostname parameter const char *.
285 * glib/gconvert.c: (g_unescape_uri_string): Added a new
286 "ASCII must not be escaped" feature, and some missing error
288 (is_escalphanum): New.
290 (hostname_validate): New.
291 (g_filename_from_uri): Don't allow hostnames to include
292 escaped ASCII, validate hostnames with the new
294 (g_filename_to_uri): Validate hostnames with the new
297 * tests/uri-test.c: Updated tests to reflect the hostname
298 validation changes above.
300 * glib/gdate.c: (g_date_fill_parse_tokens): Remove the
301 <ctype.h> include and do isdigit -> g_ascii_isdigit.
303 Fri Feb 8 12:32:14 2002 Owen Taylor <otaylor@redhat.com>
305 * tests/hash-test.c (second_hash_test): Fix access to
306 freed memory in test case (Miroslaw Dobrzanski-Neumann).
307 Re-enable and debug some commented out code.
309 2002-02-08 Michael Natterer <mitch@gimp.org>
311 * glib/gdir.c: g_dir_open: added g_return_val_if_fail() to prevent
312 us from calling opendir(NULL) (which simply crashes).
314 2002-02-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
316 * glib/gfileutils.c (g_file_test): Extended documentation.
318 2002-02-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
320 * glib/gfileutils.c (g_file_test): Do not follow symbolic links
321 for G_FILE_TEST_SYMLINK. Also fixed the correct "OR"-behaviour for
322 G_FILE_TEST_IS_EXECUTABLE and G_FILE_TEST_EXISTS. (#60048)
324 2002-02-07 Changwoo Ryu <cwryu@debian.org>
326 * configure.in (ALL_LINGUAS): Added "ko".
328 Wed Feb 6 14:44:18 2002 Owen Taylor <otaylor@redhat.com>
330 * glib/gmain.c (g_main_context_prepare): Handle
331 NULL entries (already dispatched) in pending_dispatches array
332 (pointed out by Manish Singh)
334 Tue Feb 5 17:13:02 2002 Owen Taylor <otaylor@redhat.com>
336 * glib/gmain.c (g_main_context_prepare): Unref pending
337 dispatches when discarding them.
339 2002-02-04 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
341 * glib/gthread.c (g_thread_create_full): Delay allocation until
342 after all g_return_val_if_fail ().
344 * glib/gthread.h: Make depth member guint for cosmetic reasons.
346 * glib/gthread.c: (g_static_rec_mutex_unlock_full): depth should
347 be unsigned. All that spotted by Jörgen Viksell
348 <jorgen.viksell@telia.com>
350 2002-02-02 Manish Singh <yosh@gimp.org>
353 * glib/gtree.c: remove references to deprecated functions in docs
356 2002-01-31 jacob berkman <jacob@ximian.com>
358 * glib-gettextize.in:
359 * m4macros/glib-gettext.m4 (AM_GLIB_GNU_GETTEXT): remove
362 2002-01-29 Matthias Clasen <matthiasc@poet.de>
364 * glib/gmarkup.c (g_markup_parse_context_parse): Change the
365 order in which some error conditions are checked to improve
366 error messages. (#69646)
368 Tue Jan 29 15:04:31 2002 Owen Taylor <otaylor@redhat.com>
372 * tests/shell-test.c: Workaround for MSVC bugs. (#61064)
374 Tue Jan 29 14:06:22 2002 Owen Taylor <otaylor@redhat.com>
376 * NEWS: Update to include last change.
378 2002-01-21 Jeffrey Stedfast <fejj@ximian.com>
380 * glib/gconvert.c (open_converter): Rewritten to cache iconv
381 conversion descriptors. On at least some Unix systems like
382 Solaris, iconv_open() must dlopen the necessary charset modules in
383 order to setup the descriptor. This can take a major toll on
384 performace if you are constantly opening and closing conversion
385 descriptors for the same charset conversions over and over.
386 (g_convert_with_fallback): Use close_converter() rather than
387 g_iconv_close() since open_converter() now caches iconv
390 Tue Jan 29 11:18:44 2002 Owen Taylor <otaylor@redhat.com>
394 * configure.in: Micro == 13, binary age, interface age 0.
395 [ binary breakage was return type of g_signal_connect_object(),
396 probably could have used binary age == 0, but a little safer not to.]
398 * configure.in: Remove configure warning.
400 2002-01-28 Havoc Pennington <hp@pobox.com>
402 * glib/gmarkup.c (add_attribute): NULL-terminate
403 context->attr_values so g_strfreev() is safe.
404 Would previously crash if parsing was ended prior
405 to ending the start tag.
406 (g_markup_parse_context_parse): add a couple assertions
408 2002-01-28 Havoc Pennington <hp@redhat.com>
410 * glib/gmacros.h: get rid of warning here
412 Mon Jan 28 17:56:10 2002 Owen Taylor <otaylor@redhat.com>
414 * glib/gmacros.h: Only use __FUNCTION__, __PRETTY_FUNCTION__ for
415 G_GNUC_FUNCTION, G_GNUC_PRETTY_FUNCTION, G_STRLOC when __GNUC__ <
416 3, since in 3.0.3 the semantics of these functions were changed in
417 an incompatible way. (#69097)
419 2002-01-28 Ron Steinke <rsteinke@w-link.net>
421 * glib/giochannel.c: Some documentation fixes/elaborations
422 I really should have gotten in a long time ago
424 2002-01-24 Sven Neumann <sven@gimp.org>
426 * glib/gutf8.c (g_utf8_to_utf16): removed an empty line in the
427 inline documentation that confused gtk-doc.
429 2002-01-23 Laszlo Peter <laca@ireland.sun.com>
431 * glib/gmessages.c (g_printf_string_upper_bound): return 1 more
432 for the trailing '\0' when using vsnprintf. (#69474)
434 2002-01-23 Tor Lillqvist <tml@iki.fi>
436 * glib/gconvert.c: (strdup_len): Not used on Windows, don't even
439 (acceptable): Improve comments for the _acceptable_ table: put
440 each ASCII char above the hex number for it.
442 (g_escape_file_uri): On Windows, turn backslashes in the file name
443 into plain ("forward") slashes.
445 (g_filename_from_uri): On Windows, don't return the hostname
446 "localhost", because we can not be 100% sure it will be recognized
447 in all cases anyway, so simpler to turn it into a null
450 Change slashes in the filename into backslashes, as that is the
451 more canonical separator.
453 Recognize drive letters (either followed by a colon or a vertical
454 bar, as used by some browsers), and if the filename part starts
455 with a such, don't include any (back)slash.
457 Don't drop any extra leading slash in the filename on Unix.
459 (g_filename_to_uri): On Windows, if the hostname is "localhost",
460 don't use it, for consistency with g_filename_from_uri().
462 * tests/uri-test.c: Change accordingly, so that all tests pass on
463 Windows. Unix, too, I hope, though I couldn't check that now.
465 (main): Unset the G_BROKEN_FILENAMES environment variable on Unix,
466 as some tests require that filenames are in UTF-8. Is unsetenv()
469 These changes should fix bugs #59387, #59652, #59657 and #59658.
471 2002-01-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
473 * configure.in: Get the right multithread option for GCC 3.0 and
474 later on AIX. (#67583)
476 2002-01-21 Jeffrey Stedfast <fejj@ximian.com>
478 * glib/gconvert.c (g_convert_with_fallback): If g_convert fails,
479 set bytes_written to 0 and close the iconv descriptor that was
480 opened a few lines above. On a successful return, calculate
481 bytes_written to be outp - dest instead of outp - str.
483 2002-01-16 Sven Neumann <sven@gimp.org>
486 * m4macros/glib-gettext.m4: removed the --disable-nls option. You
487 can't disable Native Language Support since we rely on it.
489 * configure.in: nicer --help output.
491 Tue Jan 8 11:33:28 2002 Owen Taylor <otaylor@redhat.com>
493 * docs/Makefile.am (EXTRA_DIST): Add text files to EXTRA_DIST.
494 (#68239, Matthias Clasen)
496 2002-01-07 Zbigniew Chyla <cyba@gnome.pl>
498 * configure.in (ALL_LINGUAS): Added pl.
500 2002-01-05 Hans Breuer <hans@breuer.org>
502 * glibconfig.h.win32.in
503 msvc_recommended_pragmas.h (new file) : moved warning to
504 error pragmas to their own file to not force 'good practice'
505 programming in downstream libs and apps. Instead the new header
506 will be used by -FImsvc_recommended_pragmas.h in gnome/cvs
508 * */makefile.msc.in : use -FImsvc_recommended_pragmas.h
510 * makefile.am : add msvc_recommended_pragmas.h to EXTRA_DIST
512 2001-12-31 Tor Lillqvist <tml@iki.fi>
514 * glib/gutils.c (g_get_any_init): (Win32) Use longer buffer for
517 Sat Dec 29 15:07:21 2001 Owen Taylor <otaylor@redhat.com>
519 * glib/gspawn.c (script_execute): Copy trailing NULL
520 into new ARGV array. (#67673)
522 2001-12-28 Sven Neumann <sven@gimp.org>
524 * glib/gmessages.c: only include printf_string_upper_bound() if
525 HAVE_C99_VSNPRINTF is not defined.
527 2001-12-27 Duarte Loreto <happyguy_pt@hotmail.com>
529 * configure.in: Added portuguese to ALL_LINGUAS
531 Sat Dec 22 12:08:56 2001 Owen Taylor <otaylor@redhat.com>
533 * configure.in: 1.3.12, binary, interface age 0.
537 2001-12-21 Tor Lillqvist <tml@iki.fi>
539 * config.h.win32.in: Add (undefined) HAVE_C99_VSNPRINTF.
541 * glibconfig.h.win32.in: Add definition of G_HAVE_GROWING_STACK.
543 * tests/Makefile.am: Rename the progs_LDADD, thread_LDADD and
544 module_LDADD Make macros to progs_ldadd, thread_ldadd and
545 module_ldadd. Newer automakes reserve macros named *_LDADD for
546 the use as LDADDs for targets it knows.
548 * glib/giowin32.c: (struct _GIOWin32Watch): 'callback' wasn't used
551 2001-12-21 Matthias Clasen <matthiasc@poet.de>
553 * glib/gfileutils.c (g_file_get_contents): Remove FIXME. (#67063)
555 2001-12-19 Mark McLoughlin <mark@skynet.ie>
557 * glib/gscanner.c: (g_scanner_unexp_token): fix segfaults.
559 2001-12-20 Michael Meeks <michael@ximian.com>
561 * glib/giounix.c (struct _GIOUnixWatch): kill 'callback'
563 Wed Dec 19 23:09:07 2001 Owen Taylor <otaylor@redhat.com>
565 * glib/gconvert.c (g_iconv_open): SGML doc fix.
567 Tue Dec 18 21:11:10 2001 Tim Janik <timj@gtk.org>
569 * configure.in: add configure check to determine G_HAVE_GROWING_STACK.
571 2001-12-16 Havoc Pennington <hp@pobox.com>
573 * glib/gfileutils.c (get_contents_regfile): use g_try_malloc and
574 return error on not-enough-memory
575 (get_contents_stdio): ditto
577 2001-12-17 Matthias Clasen <matthiasc@poet.de>
579 * glib/gspawn.c, glib/gspawn-win32.c: Use <envar>, not <envvar>.
581 2001-12-15 Matthias Clasen <matthiasc@poet.de>
583 * glib/gshell.c, glib/gspawn.c, glib/gspawn-win32.c, glib/gerror.c,
584 glib/gfileutils.c, glib/ghash.c, glib/gmain.c, glib/gasyncqueue.c,
585 glib/gtree.c: Minor markup fixes.
587 2001-12-14 Havoc Pennington <hp@pobox.com>
589 * glib/gshell.c (g_shell_parse_argv): note on how to free returned
592 2001-12-08 Havoc Pennington <hp@pobox.com>
594 * glib/gspawn.c (fork_exec_with_pipes): include argv[0] in error
595 message about failure to exec
597 2001-12-13 Matthias Clasen <matthiasc@poet.de>
599 * glib/gconvert.c, glib/giochannel.c, glib/gmain.c,
600 glib/gwin32.c: Revert mistaken change: it is UNIX, not Unix.
602 Thu Dec 13 05:37:51 2001 Tim Janik <timj@gtk.org>
604 * glib/gbsearcharray.[hc]: API revamp to shorten GValueArray
607 2001-12-12 Matthias Clasen <matthiasc@poet.de>
611 * glib/gutils.c (g_snprintf, g_vsnprintf): Switch to C99-[v]snprintf().
613 * tests/strfunc-test.c: Add some tests for g_snprintf().
615 2001-12-12 Matthias Clasen <matthiasc@poet.de>
617 * glib/gconvert.c, glib/grand.c, glib/ghash.c,
618 glib/gthreadpool.c, glib/gtree.c: Documentation fixes.
620 Mon Dec 10 14:08:39 2001 HideToshi Tajima <hidetoshi.tajima@sun.com>
622 * glib/libcharset/config.charset (os):
623 add ISO8859-3 for Solaris. (#66174)
625 2001-12-10 Sven Neumann <sven@gimp.org>
627 * gobject/gvalue.c (g_value_register_transform_func): perform an exact
628 match on the two types instead of using transform_func_lookup().
630 2001-12-09 Christopher Blizzard <blizzard@redhat.com>
632 * glib/gmessages.h: Add pragma that will prevent warnings when you
633 are not using -std=99 and newer gcc compilers. Patch from Red
636 2001-12-06 Darin Adler <darin@bentspoon.com>
638 * glib/gmacros.h: Do the same for "pure".
640 2001-12-06 Matthias Clasen <matthiasc@poet.de>
642 The following patch corrects some function attributes. (#61780)
644 * glib/ghash.h (g_int_equal, g_int_hash): These are not const.
646 * glib/glibintl.h (_glib_gettext): Add G_GNUC_FORMAT(1).
648 * glib/gmacros.h: Use reserved symbols in function attribute macros.
650 2001-12-06 Matthias Clasen <matthiasc@poet.de>
652 The following patch avoids manual printf()-format parsing
653 if a C99-conforming vsnprintf() is available. (#55106)
655 * acinclude.m4 (AC_FUNC_VSNPRINTF_C99): New macro to test for a
656 C99 conforming vsnprintf.
658 * configure.in: Use AC_FUNC_VSNPRINTF_C99.
660 * glib/gmessages.c (g_printf_string_upper_bound): Use C99 vsnprintf().
662 2001-12-05 Sven Neumann <sven@gimp.org>
664 * glib/gtree.c (g_tree_foreach): mention the fact that the tree is
665 traversed in sorted order.
667 2001-12-03 Manish Singh <yosh@gimp.org>
669 * tests/module-test.c: g_module_symbol takes a gpointer *, not just
672 * tests/libmoduletestplugin_a.c: here too
674 2001-11-29 Havoc Pennington <hp@redhat.com>
676 * glib/gtree.c (g_tree_foreach):
677 * glib/ghash.c (g_hash_table_foreach):
679 Add notes about how you shouldn't modify these data structures as
680 you iterate over them.
682 Thu Nov 29 11:16:03 2001 Owen Taylor <otaylor@redhat.com>
684 * HACKING: Update (#65721, Dave Neary)
686 2001-11-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
688 * glib/gdate.c: Fixed wrong order in conversion.
690 Wed Nov 28 18:34:22 2001 Owen Taylor <otaylor@redhat.com>
692 * glib/gmain.[ch]: Rename (private) GSource.id and
693 id parameter to g_main_context_find_source_by_id()
694 to avoid problems with Objective C where 'id' is
697 2001-11-28 Daniel Elstner <daniel.elstner@gmx.net>
699 * glib/gutf8.c (utf8_skip_data): In order to avoid infinite loops
700 on invalid UTF-8 strings, change the skip count for 0xfe and 0xff
703 2001-11-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
705 * configure.in: Always call GLIB_SIZEOF(..., system_thread). Fixes
708 2001-11-28 Tor Lillqvist <tml@iki.fi>
710 * glibconfig.h.win32.in: Add GLIB_SIZEOF_SIZE_T here, too.
712 2001-11-27 Dan Winship <danw@ximian.com>
714 * configure.in (G_MODULE_LDFLAGS): Set this from libtool rather
715 than hardcoding values for certain platforms.
717 * glib/libcharset/config.charset: Add a rule for NetBSD.
719 * glib/libcharset/localcharset.c (_g_locale_get_charset_aliases):
720 If LIBCHARSET_ALIAS_DIR is set, look for charset.aliases there.
722 * tests/Makefile.am (TESTS_ENVIRONMENT): set LIBCHARSET_ALIAS_DIR
723 so we don't depend on charset.aliases having been installed
725 2001-11-26 Matthias Clasen <matthiasc@poet.de>
727 * glib/gnode.c (g_node_traverse): Implement G_LEVEL_ORDER correctly.
729 * tests/node-test.c: Add a testcase for G_LEVEL_ORDER implementation.
731 * glib/gtree.h: Mark g_tree_traverse() as deprecated. (#65343)
733 * glib/gtree.c (g_tree_traverse): Explain the deprecation in
736 Mon Nov 26 09:42:24 2001 Tim Janik <timj@gtk.org>
738 * configure.in: provide GLIB_SIZEOF_SIZE_T.
740 2001-11-26 Jesus Bravo Alvarez <jba@pobox.com>
742 * configure.in: Added gl (Galician) to ALL_LINGUAS
744 2001-11-23 Hans Breuer <hans@breuer.org>
746 * glib/makefile.msc.in : added -Zm400 to DEPCFLAGS to avoid :
747 gunidecomp.h(5846) : fatal error C1076: compiler limit :
748 internal heap limit reached; use /Zm to specify a higher limit
750 * glibconfig.h.win32.in : added recommended pragma list for
751 msvc again. They are an invaluable help of letting the
754 Thu Nov 22 13:56:55 2001 Owen Taylor <otaylor@redhat.com>
758 Thu Nov 22 13:14:18 2001 Owen Taylor <otaylor@redhat.com>
760 * configure.in (GLIB_MICRO_VERSION): Version 11,
761 interface, binary age 0.
765 * tests/Makefile.am (libmoduletestplugin_[ab]_la_LDFLAGS):
766 Add dummy -rpath argument. On some (but not all) platforms,
767 libtool will only build a convenience library without this.
768 (#63486, Dan Winship)
770 * Makefile.am (EXTRA_DIST): Add README.in, INSTALL.in -
771 autoconf-2.5x checks for 'make dist' in the tarball
772 when you make distcheck.
774 * glib/Makefile.am (EXTRA_DIST): Distribute
775 makefile.msc/mingw.in, glib.rc.in.
777 * tests/patterntest.c: Include string.h.
779 * glib/gpattern.c (g_utf8_reverse): doc parsing fix.
781 Thu Nov 22 02:50:18 2001 Tim Janik <timj@gtk.org>
783 * NEWS: merged with gobject/NEWS.
785 2001-11-21 Tor Lillqvist <tml@iki.fi>
787 * glib/makefile.mingw.in (DEFINES): Set G_LOG_DOMAIN as in
790 Tue Nov 20 20:54:25 2001 Owen Taylor <otaylor@redhat.com>
792 * glib/gunidecomp.[ch] glib/gen-unicode-tables.pl: Patch
793 from Andrew Taylor to optimize the decomposition table
794 to eliminate relocations and save space. (#64982)
796 2001-11-18 Hans Breuer <hans@breuer.org>
799 * glib/makefile.msc.in : remove g_log_domain_glib usage/export
801 * tests/makefile.msc.in : add iochannel-test
803 Sat Nov 17 17:21:57 2001 Owen Taylor <otaylor@redhat.com>
805 * glib/Makefile.am glib/*.c glib/gmessages.h: Get
806 rid of g_log_domain_glib variable in favor of just
807 using a string constant.
809 Sat Nov 17 14:10:35 2001 Owen Taylor <otaylor@redhat.com>
811 * glib/gbsearcharray.h: Include gtypes.h not gobject/gtype.h
813 * glib/glib-object.h gobject/*.h: Prevent headers from
814 being included directly except when compiling GObject.
816 * gobject/gvaluecollector.h: Include glib-object.h so that
817 this file can be included directly, since we don't
818 include it _from_ glib-object.h.
820 * gobject/gtype.c: Remove struct _GValue hack since we
821 now include glib/gvaluecollector.h which simply pulls in
824 2001-11-15 Matthias Clasen <matthiasc@poet.de>
826 * glib/giochannel.c: Documentation fixes.
828 2001-11-15 Takayuki KUSANO <AE5T-KSN@asahi-net.or.jp>
830 * configure.in: Added "ja" to ALL_LINGUAS.
832 2001-11-15 Michael Meeks <michael@ximian.com>
834 * glib/giounix.c (g_io_channel_unix_new): set the fd
837 2001-11-15 Tor Lillqvist <tml@iki.fi>
839 * tests/makefile.{mingw,msc}.in (TESTS): Add back mainloop-test
842 * tests/Makefile.am: Remove leftover comment that claimed
843 mainloop-test is removed.
845 2001-11-14 Matthias Clasen <matthiasc@poet.de>
847 * glib/gpattern.c: add UTF-8 support.
849 * tests/patterntest.c: add UTF-8 and equality tests.
851 Wed Nov 14 07:34:24 2001 Tim Janik <timj@gtk.org>
853 * glib/galloca.h (g_newa): provide g_newa(ctype, count) on top of
854 g_alloca() like we provide g_new() on top of g_malloc().
856 Tue Nov 13 21:25:35 2001 Owen Taylor <otaylor@redhat.com>
858 * glib/{gen-unicode-tables.pl,gunibreak.c,gunibreak.h,
859 gunichartables.h, gunicomp.h, gunidecomp.[ch],
860 guniprop.c}: Patch from Andrew Taylor to improve
861 tables and reduce relocations by using indices
862 rather than pointers. (#64433)
864 * tests/unicode-normalize.c (main): Fix for changes
867 2001-11-12 Darin Adler <darin@bentspoon.com>
869 * glib/gstrfuncs.c: (g_strsplit): Fix max_tokens == 1 case to
871 * tests/strfunc-test.c: (main): Add tests.
873 * tests/.cvsignore: Recently-added test.
875 Mon Nov 12 03:01:28 2001 Tim Janik <timj@gtk.org>
877 * glib/gscanner.c (g_scanner_eof): G_TOKEN_ERROR is also an end
880 2001-11-10 Tor Lillqvist <tml@iki.fi>
882 * glib-zip.in (DEVZIP): Also share/glib-2.0.
884 2001-11-09 Tor Lillqvist <tml@iki.fi>
886 * glib/gwin32.c (g_win32_getlocale): Add a couple of languages
887 that have LANG_* codes in newest headers, just for completeness.
889 2001-11-08 Wang Jian <lark@linux.net.cn>
891 * configure.in(ALL_LINGUAS): Added zh_CN for Simplified Chinese.
893 2001-11-08 Tor Lillqvist <tml@iki.fi>
895 * glib/gwin32.c: Don't define LANG_AZERI etc in case those aren't
896 defined in the headers (MSVC 5.0).
897 (g_win32_getlocale): Instead, surround uses of those with
898 #ifdef. Those MSVC 5.0 users that want to build a GLib that
899 recognizes those languages should download the Platform SDK and
900 use the headers from it.
902 2001-11-07 Peter Williams <peterw@ximian.com>
904 * glib/gdir.c (g_dir_read_name): Return NULL when done reading.
906 2001-11-06 Tor Lillqvist <tml@iki.fi>
908 * glib/Makefile.am (gspawn_win32_helper_LDFLAGS): Use -mwindows.
910 2001-11-05 Tor Lillqvist <tml@iki.fi>
912 * README.win32: Minor edits.
914 * glib-zip.in: Build separate runtime and developer packages.
916 * glib/libcharset/config.charset (os): Don't need to match mingw
917 after all, the charset.alias file isn't even used on Win32... (see
920 * glib/makefile.mingw.in: Add gdir.
922 * glib/glib.def: Add g_dir_* entry points.
924 Sun Nov 4 20:45:21 2001 Owen Taylor <otaylor@redhat.com>
926 * configure.in (CFLAGS): Add check for dirent.h
928 * glib/glib.h glib/Makefile.am: Add gdir.
930 * glib/gdir.c (g_dir_close): Couple of small tweaks
931 now that it is actually compiling...
933 Sun Nov 4 20:29:31 2001 Owen Taylor <otaylor@redhat.com>
935 * glib/gdir.[ch]: Indentation fixes, some rewriting of docs to
936 conform to gtk-doc standard.
938 * glib/gdir.[ch] (g_dir_close): Remove the boolean
939 return value. What would you do if closing failed?
940 What would the user do if you printed a warning
941 message "closing directory %s failed"?
943 2001-11-04 Hans Breuer <hans@breuer.org>
945 * glib/gdir.[hc] : (new files) simplified wrapper around dirent
946 functions to improve portability of downstream libs/apps
947 * glib/makefile.msc.in : use them
948 * glib/glib.def : export them
949 * config.h.win32.in : needing HAVE_DIRENT_H defined
951 2001-11-04 Tor Lillqvist <tml@iki.fi>
953 * tests/Makefile.am: On Win32, create separate .exp file for
954 module-test.o and link with that. Otherwise the GNU linker doesn't
955 export the g_clash_func.
957 2001-11-03 Hans Breuer <hans@breuer.org>
959 * glib/giowin32.c : static correctness
961 * glib/gwin32.c : some more #if defined (SUBLANG_* ...
962 (g_win32_get_package_installation_subdirectory) use g_build_filename
963 instead of duplicating its logic
965 * glib/glib.def : removed duplicates, added mising, removed
968 Fri Nov 2 19:54:16 2001 Tim Janik <timj@gtk.org>
970 * glib/gbacktrace.h (G_BREAKPOINT): remove public signal.h include.
972 Thu Nov 1 21:48:43 2001 Owen Taylor <otaylor@redhat.com>
974 * tests/mainloop-test.c (recurser_idle): Recurse
975 with may_block = FALSE, so we don't get into
976 the pathology where the recurser_idle recurses
977 for 10 iterations, and the only thing that is
978 running is the recurser idle, which adds
979 another recursion for each of those 10 iterations
982 * tests/mainloop-test.c (create_crawler): Fix race
983 condition where a crawler source could be destroyed
984 before it was added to the crawler array.
986 * test/Makefile.am: Add mainloop-test back.
988 2001-11-01 Marius Andreiana <mandreiana@yahoo.com>
990 * configure.in: Added ro (Romanian) to ALL_LINGUAS
992 2001-10-31 Havoc Pennington <hp@redhat.com>
994 * glib/gmain.c (g_main_loop_run): fix to the locking so we don't
997 2001-10-31 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
999 * configure.in: Make --with-threads=none mean, that we want thread
1000 support, but no default thread implementation. This also was the
1001 original intention, but disapeared around 1998... So it doesn't
1002 seem to be the most requested feature, but we went far to make it
1003 possible in the code, so I resurrected this feature.
1005 * INSTALL.in: Describe the --enable-gc-friendly, --disable-threads
1006 and --with-threads options of configure.
1008 * glib/gmain.c (g_main_context_acquire, g_main_context_release,
1009 g_main_context_wait): Use the right conditional (G_THREADS_ENABLED
1010 instead of G_THREAD_ENABLED). Also remove wrong
1011 return-statement. Unfortunately mainloop-test still does fail. Many
1012 thanks to Andrea Fazekas <fazek@ludens.elte.hu> for spotting
1015 2001-10-31 Matthias Clasen <matthiasc@poet.de>
1017 * gobject/gsourceclosure.c (g_source_set_closure): Fix documentation.
1019 2001-10-30 Tor Lillqvist <tml@iki.fi>
1021 * glib-zip.in: New file, used to build distribution packages for
1024 * configure.in: Expand it.
1026 * Makefile.am: Distribute it.
1028 * config.h.win32.in: Update to match currently produced config.h
1030 2001-10-29 Daniel Egger <degger@fhm.edu>
1032 * glib/gbacktrace.h: Fix non-Intel/-Alpha version of the
1033 G_BREAKPOINT macro to include <signal.h> and use SIGTRAP.
1035 * glib/gmessages.c: Conditionalise definition of args2
1036 depending on the definition of HAVE_VSNPRINTF to avoid
1039 * gobject/testgruntime.c
1040 * tests/patterntest.c: Include <string.h> to avoid warnings.
1042 Mon Oct 29 11:29:37 2001 Owen Taylor <otaylor@redhat.com>
1044 * m4macros/glib-2.0.m4: Don't try to use PKG_CONFIG
1045 when we didn't find it. (#62944, Eric Lemings)
1047 * m4macros/glib-2.0.m4: Fix problem with spaces around =
1048 sign in assignment. (#63209, Arkadiusz Miskiewicz)
1050 Mon Oct 29 10:59:36 2001 Owen Taylor <otaylor@redhat.com>
1052 * configure.in: Check for path to Perl, add gobject/glib-mkenums
1053 to AC_OUTPUT. (#63093, Dan Winship)
1055 Mon Oct 29 10:55:12 2001 Owen Taylor <otaylor@redhat.com>
1057 * glib/libcharset/Makefile.am (EXTRA_DIST): Dist
1058 ref-add.sin, ref-del.sin. (#63092, Dan Winship)
1060 2001-10-29 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1062 * glib/gmain.c (g_main_loop_quit): Conditionalize thread related
1065 2001-10-28 Tor Lillqvist <tml@iki.fi>
1067 * glib/glib.def: Add missing g_pattern_match_simple and
1068 g_pattern_spec_equal.
1070 * glib/gwin32.c (g_win32_get_package_installation_subdirectory):
1071 Set separator correctly.
1073 * glib/libcharset/config.charset (os): Match also mingw*.
1075 * tests/testglib.c (main): (Wibn32): Print the lib/locale
1076 subdirectory, as that is what actually gets used.
1078 Wed Oct 24 11:10:54 2001 Owen Taylor <otaylor@redhat.com>
1080 * configure.in: Version 1.3.10, interface age, binary age = 0.
1084 2001-10-26 Tor Lillqvist <tml@iki.fi>
1086 * configure.in: Don't default to win32 thread implementation on
1087 Cygwin. The gthread-win32 implementation really is for Win32 with
1088 MS runtime only. Let configure find pthreads when configuring for
1091 * README.win32: Updates.
1093 * glib/glib.def: Update.
1095 * tests/makefile.mingw.in
1096 * tests/makefile.msc.in: Remove mainloop-test here, too. Add ../*
1097 to PATH before running tests to find DLLs. Separate the
1098 interactive tests, don't run them in the check target.
1100 * */makefile.msc.in: Include make.msc from GLib's build directory.
1102 Thu Oct 25 12:01:41 2001 Owen Taylor <otaylor@redhat.com>
1104 * tests/Makefile.am: Temporarily remove mainloop-test, since it
1107 2001-10-24 Alex Larsson <alexl@redhat.com>
1109 * docs/reference/glib/glib-sections.txt:
1112 * docs/reference/glib/tmpl/string_utils.sgml:
1113 Add docs for G_ASCII_DTOSTR_BUF_SIZE.
1115 * glib/gstrfuncs.[ch]:
1116 Added g_ascii_strtod, g_ascii_dtostr and g_ascii_formatd.
1118 * tests/Makefile.am:
1119 * tests/strtod-test.c:
1120 Add tests for g_ascii_strtod & co.
1122 2001-10-23 Tor Lillqvist <tml@iki.fi>
1124 * config.h.win32.in: Typo: GLIB_MICRO_VERSION and
1125 GLIB_MINOR_VERSION were swapped.
1127 * glib/gutils.h: Remove G_HARDCODED_PATH_WRAPPER, Owen didn't like
1130 * glib/gutils.c: Instead, expand it on Win32 as
1131 _glib_get_locale_dir(), and #define GLIB_LOCALE_DIR as a call to
1134 2001-10-23 Tor Lillqvist <tml@iki.fi>
1136 * config.h.win32.in: Typo.
1138 * glibconfig.h.win32.in: Minor update to correspond to what
1139 configure now generates.
1141 * glib/Makefile.am: (Win32): If we have built the MSVC import
1142 library, install it. Install the gcc import library. Also support
1145 * glib/gutils.h: Add macros G_WIN32_DLLMAIN_FOR_DLL_NAME and
1146 G_HARDCODED_PATH_WRAPPER. These are used to avoid hardcoding path
1147 names into Windows DLLs.
1149 * glib/gutils.c: Use them for GLIB_LOCALE_DIR.
1151 * glib/gwin32.c (get_package_directory_from_module): Plug a small
1152 memory leak. Minor code reordering.
1153 (g_win32_get_package_installation_subdirectory): Allow empty subdir.
1155 2001-10-19 Tor Lillqvist <tml@iki.fi>
1157 * configure.in: Fix test for lib.exe. Can't set ms_librarian
1158 before calling AC_CHECK_PROG, as it doesn't actually check
1159 anything if the result variable has been preset...
1161 2001-10-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1163 * glib/gutils.c (g_set_prgname, g_get_prgname): Use another LOCK
1164 for g_prgname to avoid deadlocking. (#62606)
1166 2001-10-19 Tor Lillqvist <tml@iki.fi>
1168 * configure.in: Check also ac_cv_sizeof___int64 when requiring a
1171 2001-10-17 HideToshi Tajima <hidetoshi.tajima@sun.com>
1173 * glib/gconvert.c (g_iconv_open):
1174 Fix a typo: to_codeset => from_codeset.
1177 Fri Oct 12 18:24:02 2001 Tim Janik <timj@gtk.org>
1179 * glib/gpattern.[hc]: make struct _GPatternSpec and GMatchType
1181 (g_pattern_equal): new function to return equality of two patterns
1182 (required because GPatternSpec is private now).
1183 (g_pattern_spec_new): fix bug wrg wildcard counting which produced
1184 incorrect pattern specs (discovered by Matthias Clasen).
1185 optimized code so we just keep one compiled pattern string now.
1186 correctly canonicalize patterns. reduce string walks, optimize
1187 decision about MATCH_ALL vs. MATCH_ALL_TAIL.
1188 (g_pattern_match_string): call just g_pattern_match() with NULL
1190 (g_pattern_match): allow NULL reversed strings now, reverse_dup
1193 * tests/patterntest.c (test_compilation): added an extended testcase
1194 for pattern matching from Matthias Clasen <matthiasc@poet.de>.
1196 2001-10-11 Raja R Harinath <harinath@cs.umn.edu>
1198 * configure.in (ac_cv_sizeof_long_long): Avoid '==' and '-a' in
1201 Wed Oct 10 20:07:36 2001 Joshua N Pritikin <vishnu@pobox.com>
1203 * glib/gmessages.c glib/gtypes.h: Remove G_HAVE_GINT64
1206 Wed Oct 10 17:34:15 2001 Joshua N Pritikin <vishnu@pobox.com>
1208 * configure.in: Un-conditionalize and require a 64-bit integer
1211 2001-10-04 Raja R Harinath <harinath@cs.umn.edu>
1213 * configure.in: Avoid 'test -a'.
1215 2001-10-05 Matthias Clasen <matthiasc@poet.de>
1217 * glib/gwin32.c: Documentation update.
1219 2001-10-04 Havoc Pennington <hp@redhat.com>
1221 * glib/libcharset/Makefile.am (EXTRA_DIST): add config.charset
1223 2001-10-03 Tor Lillqvist <tml@iki.fi>
1225 * glib/gutils.c (Win32) (DllMain): New function (DLL entry point)
1226 to tuck away actual DLL name.
1227 (GLIB_LOCALE_DIR) Use actual DLL name, instead of assuming one
1228 naming convention for DLLs.
1230 * glib/glib.def: g_string_append_printf.
1232 2001-10-02 Matthias Clasen <matthiasc@poet.de>
1234 * glib/gstrfuncs.c, glib/giochannel.c: documentation update.
1236 * glib/gqueue.c: add documentation.
1238 2001-10-02 Sven Neumann <sven@gimp.org>
1240 * glib/gstring.h (g_string_sprintfa): let the compatibility definition
1241 point to the new name g_string_append_printf().
1243 2001-10-01 Alex Larsson <alexl@redhat.com>
1245 * glib/gconvert.[ch]:
1246 Convert G_CONVERT_ERROR_NOT_ABSOLUTE_FILE_URI and
1247 G_CONVERT_ERROR_INVALID_URI to G_CONVERT_ERROR_BAD_URI.
1252 Mon Oct 1 16:01:24 2001 Owen Taylor <otaylor@redhat.com>
1254 * glib/gstring.[ch] glib/grel.c: Rename g_string_printfa()
1255 to g_string_append_printf(). (#61041, Havoc Pennington.)
1257 2001-10-01 Tor Lillqvist <tml@iki.fi>
1259 * glib/gwin32.c: Documentation cleanups. (#61487)
1261 2001-10-01 Matthias Clasen <matthiasc@poet.de>
1263 * glib/gscanner.h (GScannerMsgFunc): make third argument
1265 (g_scanner_add_symbol, g_scanner_remove_symbol,
1266 g_scanner_foreach_symbol): mark these
1267 G_DISABLE_DEPRECATED. (#61469)
1269 * glib/gscanner.c (g_scanner_msg_handler): make third
1270 argument gboolean. (#61468)
1272 2001-10-01 Sven Neumann <sven@gimp.org>
1275 * glib/gspawn-win32.c
1276 * glib/gspawn.c: some minor documentation fixes.
1278 2001-09-29 Alexander Larsson <alla@lysator.liu.se>
1281 Add build/win32/dirent/Makefile to the list of makefiles
1283 2001-09-30 Tor Lillqvist <tml@iki.fi>
1287 * glib/glib.def: Remove own implementation of dirent
1288 functions. Instead, gcc (mingw) users should go ahead and use the
1289 <dirent.h> included with the mingw gcc, and the dirent functions
1290 included in libmingw32, while MSVC users can use the same (public
1291 domain) code, extracted from mingw-runtime sources and placed in
1292 build/win32/dirent.[ch].
1294 * glib/gwin32.c (get_package_directory_from_module,
1295 g_win32_get_package_installation_directory): Use static lock to
1296 protect static hash table.
1298 Sat Sep 29 02:33:14 2001 George Lebl <jirka@5z.com>
1300 * tests/testglib.c (main): cast the string size to gulong and use %lu
1301 for printing to avoid 64bit issues
1303 * glib/gstrfuncs.[ch] (g_ascii_strncasecmp): Change the 'n' argument
1304 to gsize instead guint.
1306 Fri Sep 28 19:41:32 2001 Owen Taylor <otaylor@redhat.com>
1308 * glib/libcharset/* configure.in: Fix macros from libcharset
1309 to work with autoconf-2.5x. (From Laszlo Peter.)
1311 2001-09-27 Matthias Clasen <matthiasc@poet.de>
1313 * glib/gstring.c: Fix inline docs for g_string_prepend_unichar.
1315 2001-09-29 Abel Cheung <maddog@linux.org.hk>
1317 * configure.in: Add quotes around test values. This fixes a minor
1318 annoying warning if platform is not win32.
1320 2001-09-27 Manish Singh <yosh@gimp.org>
1322 * glib/grand.c (g_rand_new): fix typo (#if->#ifdef) so it compiles
1325 2001-09-24 Bruno Haible <haible@clisp.cons.org>
1327 * glib/gwin32.c (g_win32_getlocale): When the sublangid is
1328 SUBLANG_DEFAULT, return the locale of the language's main country,
1329 not a country-neutral locale. E.g. "en_US" instead of "en". Add
1330 handling of LANG_SORBIAN. Fix typo for SUBLANG_CHINESE_SIMPLIFIED
1331 (China == CN, CH == Switzerland). Ignore empty environment
1334 2001-09-28 Tor Lillqvist <tml@iki.fi>
1336 * glib/makefile.{mingw,msc}.in: Add localcharset.o. Just copy the
1337 source file from libcharset and compile in this directory.
1339 * glib/giochannel.c: Mark rest of g_set_error strings for
1342 * glib/giowin32.c: Add some debugging output functions, call them
1344 (create_events, g_io_win32_msg_write): Free message fetched with
1345 g_win32_error_message ().
1346 (g_io_win32_check): Indentation fixes.
1347 (g_io_win32_fd_read,g_io_win32_sock_read): Don't always return
1348 G_IO_STATUS_NORMAL. Do return G_IO_STATUS_EOF if we got 0 bytes,
1349 like on Unix. This helps making the test programs run
1352 * glib/gmain.c (g_poll): Return the code ifdeffed out with
1353 TEST_WITHOUT_THIS. Can't remember why it was ifdeffed out. Things
1354 seem to work as previously with the code in place. Especially
1355 spawn-test didn't work with the code ifdeffed out (Bug#61067).
1357 * glib/grand.c (g_rand_new): Don't try to use /dev/urandom unless
1360 * glib/gspawn-win32-helper.c (WinMain): Remove Sleep(10000)
1361 accidentally left in.
1363 Thu Sep 27 14:26:57 2001 Owen Taylor <otaylor@redhat.com>
1365 * glib/gstrfuncs.c (g_ascii_strup/down): Use gssize to
1366 match the header. (Reported by Elliot Lee.)
1368 Wed Sep 26 22:34:12 2001 Owen Taylor <otaylor@redhat.com>
1370 Fixes for #58195, based on some ideas from Hidetosh Tajima.
1372 * aclibcharset.m4 glib/libcharset: Add Bruno Haible's
1373 portable-current charset detection code from libiconv.
1375 * glib/gutf8.c (g_utf8_get_charset_internal): Rewrite
1376 to use _g_locale_charset().
1378 * glib/gutf8.c (_g_charset_get_aliases): Private functions
1379 to get aliases from libcharset for a particular canonical
1382 * glib/gconvert.c: If loading a charset fails, try
1383 aliases to look for fallbacks.
1385 2001-09-26 Matthias Clasen <matthiasc@poet.de>
1387 * gmem.c (g_mem_is_system_malloc): Return !vtable_set.
1389 2001-09-26 Tor Lillqvist <tml@iki.fi>
1391 * configure.in: Retract my change earlier today. Don't preset
1392 autoconf variables in a try to match both mingw and MSVC. Instead,
1393 he who packages a prebuilt GLib developer distribution for Win32
1394 runs configure twice: once for mingw, once for MSVC, and then uses
1395 diff -D on the glibconfig.h files to generate a suitably ifdeffed
1396 glibconfig.h for distribution that suits both compilers. (Ditto
1397 for config.h, although that file wouldn't be distributed in a
1398 developer package, but in a source package for Win32 users who
1399 want to build GLib but can't use configure.)
1401 * glibconfig.h.win32.in
1402 * config.h.win32.in: Generated by using diff -D as described above.
1404 * tests/makefile.mingw.in (.c.exe): Correct name of gthread (import)
1407 Wed Sep 26 15:33:37 2001 Owen Taylor <otaylor@redhat.com>
1409 * Makefile.am po/Makefile.in.in: Fix distclean to
1410 remove some extra files. #60993, Ben Gertzfield
1412 Wed Sep 26 14:37:52 2001 Owen Taylor <otaylor@redhat.com>
1414 * glib/gen-unicode-tables.pl glib/guniprop.c
1415 glib/{gunibreak,gunichartables,gunidecomp}.h:
1416 Patch from Andrew Taylor to make much of the unicode
1417 table data const so that it can be made read-only
1420 Wed Sep 26 12:41:05 2001 Owen Taylor <otaylor@redhat.com>
1422 * glib/gstrfuncs.c (g_strdup_vprintf): Copy if
1423 !g_mem_is_system_malloc, not the other way around.
1424 (Found by James Antill.)
1426 Wed Sep 26 11:00:31 2001 Owen Taylor <otaylor@redhat.com>
1428 * glib/gstrfuncs.c (g_strnfill): Use memset; might be
1429 faster if someone used this for a biiig string.
1430 (Suggestion from Jakub Jelinek)
1432 2001-09-26 Tor Lillqvist <tml@iki.fi>
1434 * configure.in: (Win32:) Move the Win32 check closer to the start,
1435 after the BeOS checks. Preset some autoconf variables so that
1436 configure won't find those few headers and functions that gcc
1437 (mingw) pretends to implement (even if the actual C library
1438 doesn't), but MSVC doesn't. This because I want the same config.h
1439 and glibconfig.h to be usable both from gcc and MSVC (as they use
1440 the same C library). Some other minor hackery for this purpose.
1442 * glibconfig.h.win32.in
1443 * config.h.win32.in: Use versions generated by configure (and
1444 hand-edited slightly).
1446 2001-09-25 Darin Adler <darin@bentspoon.com>
1448 * glib/gtree.h: Use gboolean for return value of GTraverseFunc.
1450 Tue Sep 25 11:34:22 2001 Owen Taylor <otaylor@redhat.com>
1452 * configure.in: Version 1.3.9 (binary, interface == 0)
1454 * glib/gstrfuncs.c (g_ascii_strdown): Change g_ascii_strup/strdown
1455 to take a 'len' argument to match g_utf8_strup/strdown. This
1456 hopefully will also make it more obvious that they duplicate
1457 the string rather than acting like g_strup/strdown.
1458 (Suggestion from Matthias Clasen, #59550)
1460 2001-09-25 Tor Lillqvist <tml@iki.fi>
1462 * configure.in: More Win32 automake macros. For .def files:
1463 GLIB_DEF, GMODULE_DEF, GOBJECT_DEF and GTHREAD_DEF. For .exp
1464 files: TESTGMODULE_EXP (for programs that need to export symbols,
1465 just testgmodule here). A new conditional, MS_LIB_AVAILABLE to
1466 test whether the Microsoft librarian ("ar") is available to build
1467 MS import libraries.
1470 * gmodule/Makefile.am: Use above. New rule to build MS import
1473 * glib/makefile.msc.in
1474 * tests/makefile.msc.in
1475 * tests/makefile.mingw.in: Use same DLL and import library names as
1478 2001-09-24 Matthias Clasen <matthiasc@poet.de>
1480 * glib/gutf8.c, glib/gunibreak.c, glib/gunicollate.c,
1481 glib/gunidecomp.c, glib/guniprop.c: Inline doc consistency fixes.
1483 2001-09-24 Stanislav Visnovsky <visnovsky@nenya.ms.mff.cuni.cz>
1485 * configure.in: Added "sk" to ALL_LINGUAS.
1487 2001-09-22 Hans Breuer <hans@breuer.org>
1489 * glib/giowin32.c : simply setting is_readable and is_writeable
1490 to TRUE does make Gimp plug-ins work again. Still no API known
1491 to request this info on Win32 (see #57690)
1493 2001-09-21 Hans Breuer <hans@breuer.org>
1495 * makefile.msc : added rule for glibconfig.h
1497 * glib/giowin32.c (g_io_channel_new_file) : always open
1498 in binary mode (fix for #57695)
1500 * glib/glib.def : updated externals
1502 * glib/gwin32.c : re-added LANG_* and SUBLANG_* definitions,
1503 which are missing from the msvc 5.0 win32 sdk
1505 * glib/makefile.msc.in : added gbsearcharry
1507 Thu Sep 20 20:33:45 2001 Owen Taylor <otaylor@redhat.com>
1509 * Rename g_mem_vtable_is_set() to g_mem_is_system_malloc().
1511 2001-09-20 Tor Lillqvist <tml@iki.fi>
1513 * glib/gutils.c (g_path_is_absolute): (Win32:) Accept also forward
1514 slashes. (But still don't accept them in the other functions
1515 here. This is a thorny issue. Windows in fact does treat / like \
1516 on input (at least as local directory separators, dunno about
1517 server/share separators). But GLib only has the one
1518 G_DIR_SEPARATOR value, that apps should scan for, and use when
1519 building pathnames. To properly fix this would require totally
1520 abstracting pathnames, and don't having any path name scanning and
1521 building in applications at all. Fat chance.)
1522 (GLIB_LOCALE_DIR): Redefine only on "pure" Win32, not Cygwin. Use
1523 subdirectory "share\locale", as on Unix.
1525 * glib/gwin32.c: Don't need to define those langiage and
1526 sublanguage constants here, current mingw (w32api) headers have
1529 * glib/glib.def: Add a few missing entry points.
1531 * tests/testglib.c (main): Use same name for DLL as libtool does.
1532 Use G_DIR_SEPARATOR in g_path_get_basename tests.
1534 Wed Sep 19 16:35:22 2001 Owen Taylor <otaylor@redhat.com>
1536 * glib/gmain.c (g_main_context_find_source_by[_funcs]_user_data):
1537 Fix handling of user data when locating sources.
1538 (#60414, Katsuhiro Okuno)
1540 Wed Sep 19 14:17:31 2001 Owen Taylor <otaylor@redhat.com>
1542 Patch from Matthias Clasen (#59806)
1544 * configure.in: Check for vasprintf().
1546 * glib/gmem.[ch]: Add g_mem_vtable_is_set() to be used
1547 for efficiency hacks to avoid extra copies when not
1550 * glib/gstrfuncs.c: Use vasprintf() to implement
1551 g_strdup_printf() when available.
1553 * glib/gmessages.c (g_logv): Avoid using
1554 printf_string_upper_bound() when we have have vsnprintf.
1556 * glib/gmessages.c (printf_string_upper_bound): Don't
1557 segfault when warning about positional parameters.
1559 Wzed Sep 19 14:05:27 2001 Owen Taylor <otaylor@redhat.com>
1561 * glib/{gcache.c,gmem.c,grel.c,gstring.c,gtimer.c,gtree}:
1562 Patch from Darin Adler to remove GReal* structures in
1563 favor of simple opaque typedefs in cases where there
1564 were no non-private members. (#59693)
1566 Wed Sep 19 13:03:38 2001 Owen Taylor <otaylor@redhat.com>
1568 * glib/giochannel.c (g_io_channel_read/write_chars): Handle NUL
1569 bytes_written, bytes_read. (Suggested by Joshua N Pritikin, #59550)
1571 Wed Sep 19 12:49:11 2001 Owen Taylor <otaylor@redhat.com>
1573 * glib/gutils.c (g_get_any_init): Handle failure of
1574 sysconf and pick a fixed size buffer. (Happens on Cygwin
1577 Wed Sep 19 11:23:41 2001 Owen Taylor <otaylor@redhat.com>
1579 * configure.in: Error out if gettext support is not found. (#59386)
1581 2001-09-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1583 * glib/gthread.h (GThreadFunctions): Add thread_equal function to
1584 allow for platform defined function to compare two threads.
1586 * glib/gthread.c: Use g_thread_functions_for_glib_use.thread_equal
1587 when non-NULL instead of ==.
1589 Wed Sep 19 10:44:25 2001 Tim Janik <timj@gtk.org>
1593 Tue Sep 18 22:57:33 2001 Tim Janik <timj@gtk.org>
1595 * configure.in (GLIB_MICRO_VERSION): up version number to 1.3.8,
1596 interface age 0, binary age 0.
1600 Tue Sep 18 18:23:02 2001 Owen Taylor <otaylor@redhat.com>
1602 Fixes for compilation on Solaris (#59026, Frank Belew)
1604 * glib/gqsort.c (g_qsort_with_data): Use g_alloca().
1606 * glib/giochannel.c (g_io_channel_read_to_end): Fix use
1607 of ternary on left-hand-side.
1609 * configure.in: Handle the ac_cv_working_alloca_h variable
1610 set by autoconf-2.5x.
1612 Tue Sep 11 18:50:44 2001 Owen Taylor <otaylor@redhat.com>
1614 * m4macros/glib-gettext.m4 acinclude.m4: Remove commented
1615 out sections for clarity.
1617 Tue Sep 18 18:19:33 2001 Tim Janik <timj@gtk.org>
1619 * tests/testglib.c: add simple test for g_path_get_basename().
1621 * glib/gfileutils.c (g_file_open_tmp):
1622 * glib/gstrfuncs.c (g_strerror): scratch erroneous usages
1625 2001-09-18 Tor Lillqvist <tml@iki.fi>
1628 * glib/giowin32.c: Mark the _funcs tables for export.
1630 * glib/glib.def: Add here, too.
1632 * glib/gwin32.c (get_package_directory_from_module): No reason to
1633 check for the module being in a bin or lib directory only when
1634 module_name is non-NULL.
1636 * glib/gwin32.c (g_win32_get_package_installation_directory):
1637 Check first in HKEY_CURRENT_USER, then in HKEY_LOCAL_MACHINE.
1639 2001-09-17 Darin Adler <darin@bentspoon.com>
1641 * tests/strfunc-test.c: (main): Change so that it works
1642 on platforms where isalpha is a macro only, without the
1643 corresponding function that the C standard requires.
1644 Also eliminate the multiple lists of ctype functions.
1646 * tests/.cvsignore: Ignore the new test.
1648 2001-09-17 Tor Lillqvist <tml@iki.fi>
1650 * configure.in: Add variable for LT_CURRENT minus LT_AGE (the
1651 suffix used by libtool on Win32 for DLLs). Set variables for the
1652 compiled resource files on Windows. Handle the native Win32
1656 * gmodule/Makefile.am
1657 * gobject/Makefile.am: (Win32) Add hacks to link in the object
1658 file produced from the resource file. Use the lt-compile-resource
1659 script from the build module. The non-hack way would be to teach
1660 libtool, autoconf and automake about .rc files (which are a kind
1661 of source code, after all, that gets compiled to object
1662 files). But then there would be problems with those who don't have
1663 bleeding edge auto* and libtool.
1666 * gobject/gobject.def: Updates.
1669 * gmodule/gmodule.rc.in
1670 * gobject/gobject.rc.in
1671 * gthread/gthread.rc.in: Update InternalName and OriginalFilename to
1672 match libtool's naming convention for DLLs.
1674 * glib/gutils.c: Ditto when constructing the DLL name in the
1675 definition for GLIB_LOCALE_DIR.
1677 * glib/makefile.mingw.in
1678 * gmodule/makefile.mingw.in
1679 * gobject/makefile.mingw.in
1680 * gthread/makefile.mingw.in: Update import library names.
1682 Fri Sep 14 20:34:27 2001 Matthias Clasen <matthiasc@poet.de>
1684 * glib/gconvert.c (g_filename_from_uri): Replace `is contains'
1685 by `contains' in two error messages. (#60395)
1687 2001-09-10 Ron Steinke <rsteinke@w-link.net>
1689 * glib/giochannel.h glib/giochannel.c: Added a length argument
1690 to g_io_channel_[set,get]_line_term(), allowing embeded nulls
1691 and binary safe line termination strings
1693 * glib/giochannel.c: Got rid of a compile warning in
1694 g_io_channel_write_chars()
1696 Mon Sep 10 17:13:36 2001 Tim Janik <timj@gtk.org>
1698 * glib/gmessages.h: got rid of g_set_error_handler(),
1699 g_set_warning_handler(), g_set_message_handler().
1701 Mon Sep 10 11:42:58 2001 Owen Taylor <otaylor@redhat.com>
1703 * glib/gutf8.c glib/gstring.c glib/gfileutils.c glib/gmain.c:
1706 Sat Sep 8 17:14:51 2001 Owen Taylor <otaylor@redhat.com>
1708 * glib/gfileutils.[ch]: Add g_build_path(),
1709 g_build_filename(), to create separated paths,
1710 suppressing duplicate separators, from varargs
1713 * tests/strfunc-test.c: Add tests for g_build_path(),
1716 Sat Sep 8 14:11:53 2001 Owen Taylor <otaylor@redhat.com>
1718 * glib/Makefile.am (libglib_1_3_la_SOURCES): Add
1721 * glib/glib-object.h: Remove include of gbsearcharray.
1723 Mon Sep 3 23:29:51 2001 Owen Taylor <otaylor@redhat.com>
1727 * Makefile.am (EXTRA_DIST): Distribute po/po2tbl.sed.in
1729 * Makefile.am: Remove references to glib.rc[.in]
1731 * NEWS: Various additions.
1733 2001-09-04 Tor Lillqvist <tml@iki.fi>
1735 * README.win32: Update. Don't mention pthreads.
1737 * build-dll: Remove, moved to the build module.
1739 * glibconfig.h.win32.in: Don't mention pthreds here, either.
1741 * glib/gstrfuncs.c: Mark the correct variable for export from DLL.
1743 * glib/giowin32.c (g_io_win32_msg_create_watch): Owen forgot to
1744 rename the win32_watch_funcs variable here, too.
1746 * */makefile.mingw.in: Don't use version number in import library
1747 name. Use whole version number in DLL name. Use build-dll from the
1750 Tue Sep 4 01:50:24 2001 Tim Janik <timj@gtk.org>
1752 * NEWS: updates for 1.3.7 release.
1754 Mon Aug 27 14:56:12 2001 Owen Taylor <otaylor@redhat.com>
1756 * glib/gmain.h: Add closure_marshal/closure_callback
1757 fields to GSourceFuncs for use by g_source_set_closure().
1759 * glib/gmain.c glib/giounix.c glib/giowin32.c
1760 glib/gmain.h: Export the SourceFuncs vtables so GObject
1761 can use them to figure out closure callbacks/marshallers
1762 for the default source types.
1764 Sun Sep 2 13:05:53 2001 Owen Taylor <otaylor@redhat.com>
1766 * glib/gstrfuncs.c (g_strchomp): Replace some uses
1767 of isspace() with g_ascii_isspace().
1769 * glib/gutf8.c glib/gunicode.h glib/gstrfuncs.[ch]: Add
1770 extra indirections to g_utf8_skip and g_ascii_table to
1771 avoid great whopping copy relocs.
1773 Sun Sep 2 11:10:42 2001 Owen Taylor <otaylor@redhat.com>
1775 * glib/gen-unicode-tables.pl glib/gunicomp.h
1776 glib/gunichartables.h glib/giounix.c: Fix some variables that
1777 should have been static.
1779 2001-08-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1781 * glib/gthread.h, glib/gthread.c: Add 'want_to_read' to
1782 GStaticRWLock to avoid calling g_cond_broadcast, when no one is
1785 * glib/gmain.c (g_main_context_add_poll_unlocked): Don't free
1786 cached_poll_array, when adding new poll's. This is taken care for
1787 in g_main_context_iterate.
1789 2001-08-30 Tor Lillqvist <tml@iki.fi>
1791 After being away for about five months, I'm back working on
1792 this... For now, still using same build setup for Win32. Probably
1793 will change to not including version numbers in the import library
1794 names, though. (But the DLL names would still include them,
1795 possibly even also the micro version number.) That would be more
1796 Unix-like. Also, will have to check out newest mingw tool versions
1797 to see if the build-dll script now can be retired.
1800 * makefile.msc: New files, no need to generate from .in as
1801 they don't contain references to automake variables.
1804 * makefile.msc.in: Removed.
1806 * glib.rc.in: Remove
1807 * glib/glib.rc.in: Moved here.
1810 * glib/Makefile.am: Corresponding changes.
1812 * glib/glib.def: Fix typo, add new entries.
1814 * glib/gspawn-win32-helper.c: More debugging. Doesn't work
1815 currently (or then it never has on Win2k, which I now use?)
1818 * glib/gstrfuncs.h: Mark g_ascii_table for export/import on Win32.
1820 * */makefile.mingw.in: Reflect new location of glib library.
1822 2001-08-30 Michael Natterer <mitch@gimp.org>
1824 * glib/giochannel.h: (struct GIOChannel): "gboolean foo : 1"
1825 results in TRUE being -1 once assigned, use "guint foo : 1"
1828 2001-08-27 Darin Adler <darin@bentspoon.com>
1831 * glib/gconvert.c: (g_filename_from_uri):
1832 Updated name of error from G_CONVERT_ERROR_NOT_LOCAL_FILE to
1833 G_CONVERT_ERROR_NOT_ABSOLUTE_FILE_URI.
1837 Added a lot more test for the new URI functions, including a
1838 number that seem to indicate some minor bugs.
1840 2001-08-26 Alex Larsson <alexl@redhat.com>
1842 * glib/gconvert.[ch] (g_filename_from_uri,
1843 g_filename_to_uri): New functions to convert
1844 between local pahtnames and file: uris.
1846 * tests/Makefile.am:
1848 Tests for the new functions.
1850 2001-08-25 Alexander Larsson <alla@lysator.liu.se>
1852 * glib/gstrfuncs.[ch]:
1853 * docs/reference/glib/glib-overrides.txt:
1854 * docs/reference/glib/glib-sections.txt:
1855 * docs/reference/glib/tmpl/string_utils.sgml:
1856 Implement and document g_ascii_isxxx.
1858 * tests/strfunc-test.c:
1859 Add tests for g_ascii_isxxx
1861 * glib/guniprop.c (g_unichar_ispunct):
1862 include symbols, not just punctuation.
1863 (g_unichar_isspace): Vertical tab is not
1864 considered whitespace.
1866 * tests/shell-test.c:
1867 Output errors on stderr
1869 2001-08-24 Alexander Larsson <alla@lysator.liu.se>
1871 * glib/gconvert.[ch] (g_convert_with_iconv):
1872 New function, doing the same as g_convert but taking
1873 a GIConv argument. The old g_convert is just
1874 a call to this with a newly opened GIConv.
1876 2001-08-24 Darin Adler <darin@bentspoon.com>
1878 * tests/shell-test.c: (check_string_result): Fix bad indenting.
1879 I figured I should fix this since I just pointed Alex here to
1880 look at this as an example.
1882 2001-08-24 Ron Steinke <rsteinke@w-link.net>
1884 * glib/giochannel.c: Matthias Clasen's fix for
1885 the buffer corruption bug by setting outbuf _after_
1886 the call to g_string_set_size()
1888 * glib/giochannel.c: kept the buffers from perpetually
1889 growing by subtracting 1 from allocated_len in the calculation
1890 of available space to account for the null at the end of the
1893 * glib/giochannel.c: fixed g_io_channel_write_chars()
1894 to not write more than space_in_buf bytes for the UTF-8 case
1896 Fri Aug 24 11:15:46 2001 Owen Taylor <otaylor@redhat.com>
1898 * glib/gstrfuncs.c docs/Changes-2.0.txt: Patch from Darin
1899 Adler to restore Glib-1.2 handling of empty strings,
1900 and to fix off-by-one with @max_tokens. (#57663).
1903 * tests/strfunc-test.c: Change tests to correspond to
1904 new behavior of g_strsplit().
1906 Thu Aug 23 11:09:58 2001 Owen Taylor <otaylor@redhat.com>
1908 * glib/ghash.c (g_hash_table_foreach_remove_or_steal):
1909 Patch from Josh Pritikin to fix reversed key and value destroy
1912 * glib/giochannel.h (struct _GIOChannel): Mark structure
1915 Thu Aug 23 16:14:17 2001 Tim Janik <timj@gtk.org>
1917 * glib/gmacros.h (G_GNUC_NO_INSTRUMENT): new macro.
1919 2001-08-21 Abel Cheung <maddog@linux.org.hk>
1921 * configure.in: Added "zh_TW" to ALL_LINGUAS.
1923 2001-08-20 Sven Neumann <sven@gimp.org>
1925 * Makefile.am: added po to SUBDIRS
1927 Sun Aug 19 21:32:39 2001 Owen Taylor <otaylor@redhat.com>
1929 * glib/ghash.c: Eliminate use of floating point when
1930 determining if the hash table needs to be resized,
1931 and also factor out the test from g_hash_table_resize()
1932 to save function calls for the common case.
1935 * glib/gmain.c (g_main_context_query): Document the
1938 2001-08-19 Darin Adler <darin@bentspoon.com>
1940 * glib/gshell.c: (g_shell_quote): Added missing \ character.
1942 * tests/shell-test.c: (check_string_result), (test_shell_unquote),
1943 (main): Added tests for g_shell_quote and g_shell_unquote.
1945 2001-08-19 Fatih Demir <kabalak@gtranslator.org>
1947 * configure.in: Added "ta" to the languages list.
1949 2001-08-19 Havoc Pennington <hp@pobox.com>
1951 * glib/gshell.c (g_shell_unquote): add comment about shell quoting
1954 2001-08-16 Ron Steinke <rsteinke@w-link.net>
1956 * glib/giounix.c: fixed an error in setting close_on_unref
1957 in g_io_channel_new_file ()
1959 2001-08-16 Ron Steinke <rsteinke@w-link.net>
1961 * glib/giochannel.c glib/glib.def glib/giochannel.h: Added
1962 new functions g_io_channel_[set,get]_close_on_unref ()
1964 * glib/giochannel.c: glib/giochannel.h: Documentation fixes
1966 * glib/giochannel.c: Fixed g_io_channel_write_chars ()
1967 so that bytes_written is always set to an appropriate
1968 value when it returns
1970 * glib/giounix.c: changed g_io_channel_get_flags () to
1971 set the is_readable and is_writeable flags cached
1974 Wed Aug 15 11:09:56 2001 Tim Janik <timj@gtk.org>
1976 * Makefile.am: let the generated .pc files depend on config.status,
1977 so they get correctly remade.
1979 Sun Aug 12 21:05:13 2001 Tim Janik <timj@gtk.org>
1981 * glib/gmessages.h: fix g_return_if_fail, g_assert and friends to
1982 have a body for G_DISABLE_CHECKS and G_DISABLE_ASSERT.
1985 2001-08-12 Ron Steinke <rsteinke@w-link.net>
1987 * glib/giochannel.c: safer handling of errno, fixed
1990 Sun Aug 12 10:09:00 2001 Owen Taylor <otaylor@redhat.com>
1992 * tests/iochannel-test.c (main): Find test case for
1993 srcdir != builddir, miscellaneous cleanups.
1995 * tests/Makefile.am (EXTRA_DIST): Distribute casefold.txt,
1996 casemap.txt iochannel-test-infile.
1998 * glib-2.0-uninstalled.pc.in: Fix for move of glib files
1999 into subdir. (Pointed out by Steve Baker)
2001 Sat Aug 4 01:04:08 2001 Tim Janik <timj@gtk.org>
2003 * glib/gscanner.c (g_scanner_unexp_token): fix INT and FLOAT warnings
2004 for invalid token values.
2006 2001-08-10 Ron Steinke <rsteinke@w-link.net>
2008 * glib/giochannel.c: Fixed a "sense of comparison" bug,
2009 added an assert to check when g_io_channels_read_chars ()
2010 is looping endlessly due to encoded_read_buf being corrupted.
2012 2001-08-06 Sven Neumann <sven@gimp.org>
2014 * glib/gutils.[ch]: added new function g_nullify_pointer().
2016 2001-08-05 Ron Steinke <rsteinke@w-link.net>
2018 * glib/giochannel.c glib/giochannel.c glib/glib.def
2019 docs/reference/glib/glib-sections.txt: Added new functions
2020 g_io_channel_[read,write]_unichar ()
2022 * glib/giochannel.h: Finally remembered to remove the
2023 old error message G_IO_CHANNEL_ERROR_PCHAR_FLUSH
2025 * glib/giochannel.c: Some fixes to g_io_channel_fill_buffer ()
2026 and g_io_channel_write_chars ()
2028 2001-08-05 Ron Steinke <rsteinke@w-link.net>
2030 * glib/giochannel.c: Replaced the local use_buf variable with a macro
2031 in most places. This allows us to check some things without worrying
2032 whether we have allocated the read buffers yet, and allows us to allocate
2033 the buffers later in some cases.
2035 * glib/giochannel.c: Introduced a MAX_CHAR_SIZE macro, which is
2036 supposed to be greater than or equal to the length in bytes
2037 of the longest character in any encoding. This is necessary
2038 to get the minimum buffer size for successful writing.
2040 * glib/giochannel.c: Fixed g_io_channel_set_encoding () so
2041 that it just prints a warning if partial_write_buf isn't
2042 empty instead of failing.
2044 * glib/giochannel.c: Fixed several functions so they can accept
2045 NULL parameters for pointers to return values.
2047 * glib/giochannel.c: Altered the error handling for
2048 g_io_channel_read_chars () to only return an error if
2049 it doesn't have any buffered data.
2051 * glib/giochannel.c: Rewrote g_io_channel_write_chars ()
2052 to fix the error handling and remove duplicate sections
2055 * glib/giounix.c: Fixed g_io_channel_new_file () to
2056 call fstat () to set the is_seekable flag, in case someone
2059 Sun Aug 5 08:25:30 2001 Owen Taylor <otaylor@redhat.com>
2061 * glib/gmacros.h: Include stddef.h so that we use
2062 the system's definition of NULL. (#54730)
2064 2001-08-04 Alexander Larsson <alexl@redhat.com>
2067 Hacky script to fix up your .msc.in files on windows.
2068 Dunno if this is a good solution yet.
2070 * build/win32/module.defs:
2071 Back down libiconv version to 1.3, since that is what tor distributes.
2076 * gobject/makefile.msc.in:
2077 build gobject-query.exe and gmarshal.strings, add libiconv dependency to linklines.
2079 * gobject/marshal-genstrings.pl:
2080 New file. perl script to generate gmarshal.strings.
2082 2001-08-03 Ron Steinke <rsteinke@w-link.net>
2084 * glib/giochannel.c: Fixed g_io_channel_seek_position()
2085 so that G_SEEK_CUR can be used with UTF-8 encoding
2087 * glib/giochannel.c: Changed test to decide whether
2088 use_buf is encoded_read_buf or read_buf from
2089 "if (channel->do_encode)" to "if (channel->encoding)" to
2092 * tests/iochannel-test.c: Fixed so it doesn't output
2095 * glib/giochannel.c: Fixed g_io_channel_fill_buffer()
2096 so that encoded_read_buf is created for UTF-8 encoding
2098 2001-08-03 Darin Adler <darin@bentspoon.com>
2100 * tests/strfunc-test.c: (strv_check), (main):
2101 Improve strfunc test to test the split function in a way that
2102 demonstrates its idiosyncrasies.
2105 2001-08-03 Sven Neumann <sven@gimp.org>
2107 * configure.in: beautified configure help output.
2109 * glib/gtree.c: changed help for g_tree_insert(); it was misleading.
2111 Fri Aug 3 10:20:10 2001 Owen Taylor <otaylor@redhat.com>
2113 * glib/guniprop.c (g_unichar_xdigit_value): Fix computation
2114 (Fix from Cesar Rincon)
2116 2001-08-01 Christopher James Lahey <clahey@ximian.com>
2118 * glib/gutf8.c (g_utf8_find_prev_char): Made g_utf8_find_prev_char
2119 able to return the first character of a string.
2121 2001-07-31 Ron Steinke <rsteinke@w-link.net>
2123 * glib/giochannel.h: Committed this file, which is where
2124 the changes in my previous changelog entry happened,
2127 2001-07-31 Sven Neumann <sven@gimp.org>
2129 * glib/gmem.c: declare gboolean vtable_set static.
2131 2001-07-30 Ron Steinke <rsteinke@w-link.net>
2133 * glib/giochannel.c docs/reference/glib/glib-sections.txt
2134 tests/iochannel-test.c: removed G_IO_CHANNEL_*_LINE_TERM macros
2136 * glib/giochannel.c put /*<public>*/ and /*<private>*/ tags in
2137 the GIOChannel structure
2140 2001-07-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2142 * configure.in: #undef inline before testing whether it works to
2143 avoid false positives. Patch from Garry R. Osgood
2144 <grosgood@rcn.com>. Fixes bug #58272.
2146 * gmodule/gmodule.c (parse_libtool_archive): build the library
2147 name ourselfs ... so we can load the library specified and not
2148 mangle any name not beggining in 'lib'. Patch from Michael Meeks
2149 <michael@ximian.com>. Fixes bug #58226.
2151 2001-07-29 Ron Steinke <rsteinke@w-link.net>
2153 * glib/giochannel.c: Matthias Classen's patch to give
2154 g_io_channel_flush() the correct sense when testing
2155 whether the buffer is empty
2156 * glib/giounix.c: Matthias Classen's patch to set
2157 the mode of a file created with g_io_channel_new_file()
2159 Sun Jul 29 16:08:17 2001 Tim Janik <timj@gtk.org>
2161 * glib/gscanner.[hc]: removed deprecated g_scanner_stat_mode().
2163 * glib/gscanner.c (g_scanner_msg_handler): by default, print scanner
2164 errors and warnings to stderr.
2166 2001-07-27 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2168 * glib/gtypes.h: Use G_GNUC_EXTENSION instead of
2169 __extension__. Patch from Pavel Roskin <proski@gnu.org>.
2171 2001-07-26 Darin Adler <darin@bentspoon.com>
2174 * m4macros/glib-2.0.m4:
2175 Update location of pkgconfig from sourceforge.net to new
2176 location at freedeskop.org.
2178 2001-07-26 Michael Natterer <mitch@convergence.de>
2180 * gobject/glib-genmarshal.c: added a "release_check" to the
2181 OutArgument structure, which, if present, gets integrated in the
2182 marshaller code and protects us from stuff like
2183 g_object_unref(NULL) on marshaller return values.
2185 2001-07-23 Padraig O'Briain <Padraig.Obriain@sun.com>
2187 * gobject/gobjectnotifyqueue.c: fix unconditional check of
2188 first GParamSpec in g_object_notify_queue_thaw(); prevent
2189 property notification being lost
2191 2001-07-23 Ron Steinke <rsteinke@w-link.net>
2193 * glib/giochannel.c: fixed g_io_channel_seek_position() so that
2194 G_SEEK_CUR works for UTF-8 channel encoding, and unallocated
2195 converters are not flushed after the seek; fixed
2196 g_io_channel_get_buffer_condition() so that G_IO_IN is only
2197 set if the read buffer contains at least one full character
2199 2001-07-23 Sven Neumann <sven@gimp.org>
2201 * Makefile.am: removed glib.def from EXTRA_DIST ...
2202 * glib/Makefile.am: ... and added it here.
2204 2001-07-22 Hans Breuer <hans@breuer.org>
2206 * glib/giochannel.c (g_io_channel_get_buffer_condition) : make
2207 the code actually have an effect (Use |= to set bits). Not
2208 absolutely sure if is the right one.
2210 * glib/giowin32.c (g_io_win32_<check|prepare>) : don't modify
2211 watch->condition but restored the previous behaviour.
2212 Now gio-test as well as The Gimp work again ...
2214 2001-07-21 Hans Breuer <hans@breuer.org>
2216 * glib/giowin32.c (g_io_channel_new_file) : set the
2217 corresponding p(ermission)mode of the file when creating,
2218 otherwise a wronly file couldn't be overwritten (at least
2221 2001-07-21 Hans Breuer <hans@breuer.org>
2223 * glib/giowin32.c : intial implementation of new API functions.
2224 Not sure if it behaves as intended ...
2226 * glib.def : removed, glib/glib.def is the file used since moved
2227 * glib/glib.def : updated
2229 * tests/makefile.msc : added iochannel-test
2231 Fri Jul 20 19:19:10 (UTC) 2001 Ron Steinke <rsteinke@w-link.net>
2233 * glib/giochannel.c: API changes, fixes to
2234 error handling, some internal restructuring
2235 * glib/giochannel.h: API changes, documentation for
2236 elements in GIOChannel structure
2237 * glib/giounix.c: Matched API changes, implemented
2238 backend to set is_readable, is_writeable, is_seekable
2239 flags, added a test to catch large values of count
2240 for which the behavior of write() is undefined
2241 * glib/giowin32.c: Changed to match new prototypes for
2242 io_close() and io_seek(), removed references to
2243 G_IO_STATUS_INTR, set is_seekable flag in channel
2245 * glib.def: Renamed g_channel_error_quark() and
2246 g_channel_error_from_errno() to g_io_channel_error_quark() and
2247 g_io_channel_error_from_errno(); added new functions
2248 g_io_channel_get_buffered() and g_io_channel_set_buffered()
2249 * docs/reference/glib/glib-sections.txt: Modified iochannel
2250 section to reflect new functions and API changes
2251 * tests/iochannel-test.c: Fixed to work with API changes
2252 * tests/iochannel-test-infile: New file; input file
2254 * tests/unicode-collate.c tests/unicode-normalize.c:
2255 Changed G_IO_FILE_MODE_READ to "r" to match API change
2257 Fri Jul 20 19:16:24 (UTC) 2001 Ron Steinke <rsteinke@w-link.net>
2259 * gobject/glib-genmarshal.c: modified to create header files
2260 using G_[BEGIN,END]_DECLS instead of #ifdef __cplusplus ...
2262 Fri Jul 20 14:11:29 2001 Owen Taylor <otaylor@redhat.com>
2264 * glib/gutf8.c glib/gunidecomp.c: s/size_t/gsize/ to match
2267 Thu Jul 19 16:05:21 2001 Owen Taylor <otaylor@redhat.com>
2269 * glib/gcompletion.c (g_completion_complete): Fix memory
2270 leak and dubious list manipulation. (Found by
2271 Ron Koerner, #53408)
2273 * glib/gfileutils.c (get_contents_stdio): Call fclose()
2274 on FILE * on error. (#57057)
2276 2001-07-20 Hans Breuer <hans@breuer.org>
2278 * glib/glib/giowin32.c : make it compile again
2280 * glib/glib.def : updated exports
2282 * glib/makefile.msc.in :
2283 * glib/makefile.mingw.in :
2284 * tests/makefile.msc.in : reflect glib move
2286 * tests/mainloop-test.c : #include <io.h> for _pipe()
2288 * tests/gio-test.c : casts for strict compiler settings
2290 * makefile.msc.in : new master makefile reflecting the glib
2291 move. The '.in' isn't really needed anymore, because there
2292 is no version number in it
2294 2001-07-19 Darin Adler <darin@bentspoon.com>
2296 * glib/gstrfuncs.c: (g_ascii_strdown), (g_ascii_strup): Add
2298 (g_strsplit): Add g_return_val_if_fail for case of empty
2299 delimiter, which can result in an infinite loop otherwise.
2300 * glib/gstrfuncs.h: Add missing const.
2301 * tests/.cvsignore: Ignore a generated file.
2303 * tests/array-test.c:
2304 * tests/dirname-test.c:
2305 * tests/hash-test.c:
2306 * tests/list-test.c:
2307 * tests/node-test.c:
2308 * tests/relation-test.c:
2309 * tests/shell-test.c:
2310 * tests/slist-test.c:
2311 * tests/spawn-test.c:
2312 * tests/strfunc-test.c:
2313 * tests/string-test.c:
2315 * tests/tree-test.c:
2316 * tests/type-test.c:
2317 Add an #undef G_DISABLE_ASSERT so all tests will assert even if
2318 asserts are disabled inside glib itself.
2320 Fri Jul 13 19:20:06 2001 Owen Taylor <otaylor@redhat.com>
2322 * glib/gstring.c (g_string_insert/append/prepend_unichar):
2323 Add functions to insert a unichar as UTF-8, since this
2324 is reasonably common.
2326 * glib/gutf8.c glib/gunicode.h (g_utf8_get_char_validated):
2327 New function exposing iterating through possibly invalid/incomplete
2328 UTF-8 to unicode to the outside world.
2330 * glib/gutf8.c (g_utf8_get_char_extended): Fix max_len argument
2331 to be gssize, not gsize.
2333 2001-07-17 Kjartan Maraas <kmaraas@gnome.org>
2335 * configure.in: Added "nn" to ALL_LINGUAS.
2337 2001-07-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2339 * glib/gmain.c: Add some assertions. Simplify and fix
2340 g_main_context_release(). Fix some locking bugs in
2343 2001-07-12 Mark Murnane <Mark.Murnane@sun.com>
2345 * glib/gmessages.c: Changed prototype of printf_string_upper_bound
2346 to return gsize. Now matches the actual function body.
2348 * glib/gstrfuncs.c (g_strrstr_len): Changed type of parameter #2
2349 from gint to gssize. Now matches the prototype in gstrfuncs.h.
2351 2001-07-11 Darin Adler <darin@bentspoon.com>
2353 * .cvsignore: Add some generated files.
2355 * glib/gmain.c: (g_main_context_iterate): Comment out cruft
2356 after #endif to avoid gcc warning.
2357 * gmodule/gmodule.c: (g_module_set_error_unduped): Remove
2358 const from type to avoid gcc warning.
2359 * gobject/gsignal.c: (g_signal_emitv): ifdef variable used
2360 only if G_ENABLE_DEBUG to avoid gcc warning.
2361 * gobject/gtype.c: (type_iface_vtable_init_Wm),
2362 (type_iface_vtable_finalize_Wm): ifdef call needed only
2363 if !G_DISABLE_ASSERT to avoid gcc warning.
2364 * tests/testglib.c: (main): ifdef call needed only if
2365 !G_DISABLE_ASSERT to avoid gcc warning. Maybe later we
2366 should make the test to #undef G_DISABLE_ASSERT.
2367 * tests/unicode-collate.c: Add include of <string.h> to
2370 Wed Jul 11 11:13:50 2001 Owen Taylor <otaylor@redhat.com>
2372 * glib/Makefile.am (libglib_1_3_la_SOURCES): Add gunicomp.h
2373 (Reported by Sven Neumann).
2375 * glib/guniprop.c (g_utf8_str/updown) glib/gunicollate.c
2376 (g_utf8_collate_key): Fix shadowing problems reported by
2377 many (D. Adler, S. Neumann, M. Murmane, L. Peter)
2379 Fri Jul 6 00:02:41 2001 Tim Janik <timj@gtk.org>
2381 * glib/gmessages.c (printf_string_upper_bound): fix negative exponent
2382 handling (numbers<0).
2384 * glib/gutils.h (g_bit_storage): take a gulong as argument.
2385 same for g_bit_nth_lsf() and g_bit_nth_msf() as mask.
2387 2001-07-08 Martin Baulig <baulig@suse.de>
2389 * tests/unicode-normalize.c, tests/unicode-collate.c:
2390 Reflect latest g_io_channel_new_file() API changes, use
2391 G_IO_FILE_MODE_READ instead of "r".
2393 Fri Jul 6 22:34:32 2001 Owen Taylor <otaylor@redhat.com>
2395 * glib/gunicode.h glib/gunidecomp.c glib/guniprop.c
2396 glib/gunicollate.c: Add length arguments to
2397 g_utf8_{strup,strdown,casefold,collate_key}.
2399 * glib/gdate.c: Fix for above.
2401 2001-07-06 Pablo Saratxaga <pablo@mandrakesoft.com>
2403 * configure.in: added Basque (eu) to ALL_LINGUAS
2405 Mon Jul 2 19:48:52 2001 Andrew Lanoix <alanoix@umich.edu>
2407 *giowin32.c: g_source_remove()ing an socket iochannel closes
2408 the socket when it should not. Patch by Peter Zelezny
2411 *giowin32.c: Fix a few typos
2413 Mon Jul 2 16:03:21 2001 Owen Taylor <otaylor@redhat.com>
2415 * glib/giochannel.c (g_io_channel_get_buffer_condition): Fix.
2417 * glib/giunix.c: Fix prepare/check/dispatch for watches.
2419 * tests/unicode-normalize.c: #include <string.h>
2421 Sat Jun 30 23:14:32 2001 Tim Janik <timj@gtk.org>
2423 * glib/glist.[hc]: added g_list_insert_before().
2425 * glib/gslist.c (g_slist_insert_before): provide an implementation,
2426 prototype was already present...
2428 Sun Jul 1 20:16:25 2001 Owen Taylor <otaylor@redhat.com>
2430 * glib/guniprop.c (g_unichar_totitle): Use G_N_ELEMENTS
2431 rather than a custom macro.
2433 * glib/gen-unicode-tables.pl: Adapt to changes in table
2434 formats for Unicode 3.1
2436 * glib/gunicode.h glib/guniprop.c glib/gunichartables.h
2437 glib/gen-unicode-tables.pl: Add case conversion functions
2438 g_utf8_casefold, g_utf8_strup, g_utf8_strdown.
2440 * tests/unicode-caseconv.c tests/gen-casefold-txt.pl
2441 tests/gen-casemap-txt.pl tests/casefold.txt
2442 tests/casemap.txt: Test cases for case conversion.
2444 * glib/gunicode.h glib/gunidecomp.[ch] glib/gunicomp.h
2445 glib/gen-unicode-tables.pl: Add function to do Unicode
2446 normalization g_utf8_normalize().
2448 * tests/unicode-normalize.c: Test program for case conversion.
2450 * glib/gunicode.h glib/gunicollate.c: Add collation functions
2451 g_utf8_collate, g_utf8_collate_key.
2453 * test/unicode-collate.c: Test program for collation.
2455 * glib/gdate.c (g_date_fill_parse_tokens): Fix uninitialized
2458 * glib/gdate.c (g_date_strftime) docs/Changes-2.0.txt:
2459 Make work with UTF-8 even if the locale isn't UTF-8 based.
2460 Still somewhat of broken, if the format string contains
2461 characters not representable in the current locale, will warn
2464 * glib/gdate.c: Use UTF-8 normalization and casefolding.
2466 Sat Jun 30 16:03:16 2001 Owen Taylor <otaylor@redhat.com>
2468 * glib/giowin32.c glib/giounix.c glib/gmain.[ch]:
2469 Rename GSourceFuncs::destroy to GSourceFuncs::finalize.
2472 Sat Jun 30 15:49:10 2001 Owen Taylor <otaylor@redhat.com>
2474 * glib/gmain.[ch]: (Mostly patch from Sebastian Wilhemi)
2475 Make some changes to the way that GMainContext works:
2477 - a GMainContext is no longer associated with a single
2478 thread, but any thread can acquire ownership
2479 of thread and iterate.
2481 - There is a facility g_main_context_wait() for
2482 non-owner-threads to wait either for ownership
2483 or for a condition to be broadcast.
2485 - For efficiency, GMainLoop just piggybacks of
2486 of the loops mutex / condition instead of
2487 having a separate mutex/condition for each
2490 * glib/gthread.[ch]: Remove hacks to store the thread's
2491 GMainContext in the GThread structures, since we
2492 no longer have the GMainContext <=> GThread correspondence.
2494 * glib/gmain.[ch]: Make g_main_context_wakeup() public
2495 so someone could completely duplicate GMainLoop
2496 with the public API.
2498 * tests/mainloop-test: Fix up to the new API. Decidedly
2499 doesn't work at the moment, but that may be the IO
2500 channel changes, or preexisting locking problems.
2502 Sat Jun 30 13:18:28 2001 Owen Taylor <otaylor@redhat.com>
2504 * glib/gstrfuncs.c glib/gstring.h: Try compiling
2505 before committing, why don't you? Simple fixes
2506 for my stupid typos.
2508 Sat Jun 30 12:49:26 2001 Owen Taylor <otaylor@redhat.com>
2510 Patch from Darin Adler (#54166)
2512 * glib/gstrfuncs.[ch]: Add ascii-only, locale-insensitive
2513 g_ascii_to[lower/upper], g_ascii_str[down/up],
2514 g_ascii_is[upper/lower] and deprecate the locale-affected
2515 versions which break for UTF-8, etc. Make
2516 g_ascii_strup/strdown duplicating,
2517 not in-place for consistency with UTF-8 functions.
2519 * glib/gstring.[ch]: Add ascii-only, locale-insensitive
2520 g_string_ascii_[down/up], and deprecate the locale-affected
2521 versions which break for UTF-8, etc.
2523 * glib/gutils.c glib/gwin32.c test/testglib.c: Use
2524 the g_ascii_* functions where appropriate.
2526 Fri Jun 29 13:36:39 2001 Owen Taylor <otaylor@redhat.com>
2528 * glib/gstring.[ch] (g_string_set_size): Add function to
2529 allow setting the length of a string greater than the
2530 current length (for buffering usage)
2532 * glib/gstring.[ch]: Expose string->allocated_len, since
2533 that is useful when using GString simply as a buffer.
2534 (Renamed from string->alloc)
2536 * glib/giochannel.[ch] glib/giounix.c glib/giowin32.c:
2537 Major patch from Hidetoshi Tajima and Ron Steinke
2538 reworking GIOChannel to have:
2541 - Sane and useful error reporting
2542 - Streaming encoding conversion with iconv
2543 - Convenience functions to read by lines or
2546 Also fix remaining 64 bit cleanliness issues.
2548 * tests/iochannel-test.c tests/Makefile.am: Test case
2549 for IO channel streaming conversion. Still needs
2552 Thu Jun 28 16:57:44 2001 Tim Janik <timj@gtk.org>
2554 * configure.in (GLIB_MICRO_VERSION): up version number to 1.3.7,
2555 interface age 0, binary age 0.
2557 2001-06-27 Kjartan Maraas <kmaraas@gnome.org>
2559 * glib/gmarkup.c: Fix a typo.
2561 2001-06-27 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2563 * Makefile.am, configure.in: Removed glib-config-2.0, as we have
2566 * glib/Makefile.am: Added -I$(top_srcdir) for builddir != srcdir.
2568 * Makefile.am: Removed gen-unicode-tables.pl from EXTRA_DIST.
2570 Tue Jun 26 11:43:46 2001 Owen Taylor <otaylor@redhat.com>
2572 * configure.in Makefile.am *.[ch] glib/*.[ch] glib/Makefile.am:
2573 Move glib library into a subdirectory, make all GLib include
2574 files include as <glib/glist.h>
2576 * tests/testglib.c tests/testgdate.c tests/testgdateparser.c
2577 tests/timeloop.c tests/timeloop-basic.c: Move all tests into
2578 the tests/ subdirectory.
2580 Sat Jun 23 17:34:38 2001 Tim Janik <timj@gtk.org>
2582 * gmessages.c (g_logv): use G_BREAKPOINT() instead of raise(5).
2584 Wed Jun 20 12:00:54 2001 Owen Taylor <otaylor@redhat.com>
2586 Changes for 64-bit cleanliness, loosely based on patch
2589 * gconvert.c (g_convert/g_convert_with_fallback): Remove
2590 workarounds for since-fixed GNU libc bugs. Minor
2593 * gconvert.[ch]: Change gint to gsize/gssize as
2596 * gconvert.c (g_locale/filename_to/from_utf8): Fix incorrect
2597 computation of bytes_read / bytes_written.
2599 * gfileutils.[ch] (g_file_get_contents): Make length
2600 out parameter 'gsize *len'.
2602 * ghook.c (g_hook_compare_ids): Don't compare a
2605 * gmacros.h (GSIZE_TO_POINTER): Add GPOINTER_TO_SIZE,
2608 * gmain.c (g_timeout_prepare): Rewrite to avoid
2609 overflows. (Fixes bug when system clock skews
2610 backwards more than 24 days.)
2612 * gmarkup.[ch]: Make lengths passed to callbacks
2613 gsize, length for g_markup_parse-context_parse(),
2614 g_markup_escape_text() gssize.
2616 * gmessages.[ch] (g_printf_string_upper_bound): Change
2617 return value to gsize.
2619 * gmessages.c (printf_string_upper_bound): Remove
2620 a ridiculous use of 'inline' on a 300 line function.
2622 * gstring.[ch]: Represent size of string as a gsize,
2623 not gint. Make parameters to functions take gsize,
2624 or gssize where -1 is allowed.
2626 * gstring.c (g_string_erase): Make
2627 g_string_erase (string, pos, -1) a synonym for
2628 g_string_truncate for consistency with other G*
2631 * gstrfuncs.[ch]: Make all functions taking a string
2632 length, take a gsize, or gssize if -1 is allowed.
2633 (g_strstr_len, g_strrstr_len). Also fix some boundary
2634 conditions in g_str[r]str[_len].
2636 * gutf8.c tests/unicode-encoding.c: Make parameters that
2637 are byte lengths gsize, gssize as appropriate. Make
2638 character offsets, other counts, glong.
2640 * gasyncqueue.c gcompletion.c
2641 timeloop.c timeloop-basic.c gutils.c gspawn.c.
2642 Small 64 bit cleanliness fixups.
2644 * glist.c (g_list_sort2, g_list_sort_real): Fix functions
2645 that should have been static.
2647 * gdate.c (g_date_fill_parse_tokens): Fix extra
2648 declaration that was shadowing another.
2650 * tests/module-test.c: Include string.h
2652 Mon Jun 18 15:43:29 2001 Owen Taylor <otaylor@redhat.com>
2654 * gutf8.c (g_get_charset): Make argument
2655 G_CONST_RETURN char **.
2657 2001-06-22 Andrew Lanoix <alanoix@umich.edu>
2659 *giowin32.c: Debug and partial rewrite of async socket code
2660 on windows, which fixes major MT issues. Some test code kindly
2661 provided by wroberts1@home.com.
2663 Thu Jun 14 14:09:46 2001 Owen Taylor <otaylor@redhat.com>
2665 * gstrfuncs.c (g_strconcat): Fix a use of strcat that
2666 wasn't replaced with g_stpcpy in the original
2667 stpcpy-for-efficiency patch.
2669 2001-06-11 Havoc Pennington <hp@redhat.com>
2673 * configure.in (GLIB_MICRO_VERSION): increment version to 1.3.6
2675 2001-06-08 Alex Larsson <alexl@redhat.com>
2678 Added new functions g_strstr_len, g_strrstr and g_strrstr_len
2680 * tests/strfunc-test.c:
2681 Add some tests for the new functions.
2685 Add length argument to g_utf8_strchr and g_utf8_strrchr.
2687 2001-06-08 Havoc Pennington <hp@redhat.com>
2689 * gspawn.c: support G_SPAWN_FILE_AND_ARGV_ZERO specifying that
2690 the vector passed in to g_spawn_* contains a filename to
2691 execute in argv[0] then the actual argv begins at argv + 1.
2692 Kind of a lame hack, but this isn't something you commonly want
2693 to do, and avoids adding more function arguments.
2695 2001-06-08 Pablo Saratxaga <pablo@mandrakesoft.com>
2697 * configure.in: Added Azeri (az) to ALL_LINGUAS
2699 2001-06-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2701 * docs/Makefile.am, configure.in: Remove docs/glib-config.1.in.
2703 * gthread-2.0-uninstalled.pc.in (Cflags): Add @G_THREAD_CFLAGS@.
2705 2001-06-07 Havoc Pennington <hp@redhat.com>
2707 * m4macros/glib-2.0.m4: subst GLIB_GENMARSHAL, GOBJECT_QUERY,
2708 GLIB_MKENUMS variables
2710 * gmodule-2.0.pc.in: add gmodule_supported variable
2712 * glib-2.0.pc.in: add glib_genmarshal, gobject_query,
2713 glib_mkenums variables
2715 * configure.in: put G_MODULE_SUPPORTED value into
2718 * autogen.sh: support AUTOGEN_SUBDIR_MODE
2720 * Makefile.am: add -uninstalled.pc.in to EXTRA_DIST
2722 2001-06-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2724 * configure.in: Look for nanosleep function.
2726 * gtimer.c: Use nanosleep for g_usleep, when found.
2728 * gtimer.c, gtimer.h: Add g_time_val_add function. Closes #54271.
2730 * gasyncqueue.c: Documentation updates.
2732 * gthreadpool.c: Use g_time_val_add now that we have it.
2734 2001-06-01 Jon Trowbridge <trow@gnu.org>
2736 * gdate.c (g_date_update_julian): Changed to take a const
2737 argument, and then to cast out const.
2738 (g_date_update_dmy): Changed to take a const argument, and then
2740 (g_date_get_weekday): Changed argument to be const.
2741 (g_date_get_month): Changed argument to be const.
2742 (g_date_get_year): Changed argument to be const.
2743 (g_date_get_day): Changed argument to be const.
2744 (g_date_get_julian): Changed argument to be const.
2745 (g_date_get_day_of_year): Changed argument to be const.
2746 (g_date_get_monday_week_of_year): Changed argument to be const.
2747 (g_date_get_sunday_week_of_year): Changed argument to be const.
2748 (g_date_compare): Changed arguments to be const.
2749 (g_date_to_struct_tm): Changed GDate argument to be const.
2750 (g_date_strftime): Changed GDate argument to be const.
2751 (g_date_clamp): Added. The equivalent of the CLAMP macro for
2753 (g_date_order): Added. Ensure that the first GDate argument
2754 preceeds the second, swapping them if necessary.
2755 (g_date_days_between): Added. Computes the (signed) number of days
2758 Mon Jun 4 16:02:57 2001 Owen Taylor <otaylor@redhat.com>
2760 * gstrfuncs.c (g_strup/strdown): to match g_strcasecmp,
2761 check if it is lower/upper before converting to upper/lower
2762 [ not required by ISO... ] (#55682, Jon Trowbridge)
2764 Mon Jun 4 15:59:15 2001 Owen Taylor <otaylor@redhat.com>
2766 * gunicode.h: Make a bit more standalone by adding include
2767 of gerror.h. #54543.
2769 * gunicode.h: Change size_t to g_size. (Ugh)
2771 2001-05-31 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2773 * grand.h (g_random_boolean, g_rand_boolean): Fix to stupid bug in
2774 g_random_boolean, also both functions now return 1 or 0 instead of
2777 * tests/rand-test.c: Extended testcases.
2779 * configure.in: Remove G_HAVE_ISO_CXX_VARARGS and
2780 G_HAVE_ISO_C_VARARGS and define G_HAVE_ISO_VARARGS directly
2781 guarded by #if(n)def __cplusplus.
2783 2001-05-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2785 * gthread-2.0.pc.in: Add @G_THREAD_CFLAGS@ to Cflags.
2787 Tue May 29 18:17:11 2001 Owen Taylor <otaylor@redhat.com>
2789 * autogen.sh (have_libtool): Fix GNU sedism
2791 2001-05-29 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2793 * tests/Makefile.am, tests/qsort-test.c: Add test case for the
2794 g_qsort_with_data func. It works. This fixes bug #52605.
2796 * tests/Makefile.am, tests/cxx-test.C: Now that we check for a C++
2797 compiler in configure.in anyway, I added a test, that the GLib
2798 headers can be inclued into a C++ program. This fixes bug #52605.
2800 * configure.in: Don't bail out, if no C++ compiler is
2801 found. Define G_HAVE_ISO_VARARGS only if appropriate.
2803 * gmessages.h: Thus we can revert the previous patch.
2805 2001-05-29 James Henstridge <james@daa.com.au>
2807 * gmessages.h: "#ifdef G_HAVE_ISO_VARARGS" will always succeed
2808 even when we don't have ISO vararg support. Changed to
2809 "#if G_HAVE_ISO_VARARGS".
2811 Mon May 28 11:40:34 2001 Owen Taylor <otaylor@redhat.com>
2813 * configure.in: Check for __VARARGS__ separately for C and C++.
2815 2001-05-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2817 * configure.in: Fix typo.
2819 Sun May 27 05:09:18 2001 Tim Janik <timj@gtk.org>
2821 * gmain.c (g_main_context_prepare): unlock context when bailing
2823 (g_main_context_check): same here.
2825 * gmain.c (g_main_context_check): before returning due to
2826 changed pollfds, unlock context.
2828 Thu May 24 21:24:16 CEST 2001 Paolo Molaro <lupus@ximian.com>
2830 * gmarkup.c: back out change by mitch@convergence.de and apply patch in
2831 bug id #52067 that fixes the same problem in a more complete manner.
2832 This fixes also a segfault for a malformed XML file and adds a new
2835 2001-05-24 Hans Breuer <hans@breuer.org>
2837 * grel.c : reflect renaming of g_string_sprintfa to g_string_printfa
2839 * makefile.msc.in : create an additional static lib to be used from
2840 (at least) glib-genmarshal
2842 2001-05-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2844 * garray.c (g_array_remove_index_fast): Tiny speed improvement
2845 suggested by noon@users.sourceforge.net.
2847 2001-05-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2849 * config.h.win32.in: Removed POSIX_*. Defined G_THREAD_SOURCE to
2852 * glibconfig.h.win32.in: Define G_HAVE_ISO_VARARGS for gcc, don't
2853 know about MSC. Define G_THREADS_IMPL_WIN32 instead of
2854 G_THREADS_IMPL_POSIX and define the right static mutex macros and
2857 * glib.def: g_thread_create renamed to g_thread_create_full.
2859 * gthread.c: memcpy is not necessary here. We can simply use
2862 * gmessages.c: Fix compilation error on win32. Added
2863 GFileDescriptor, wich is gint on Unix and FILE* on win32.
2865 2001-05-21 Andrew Lanoix <alanoix@umich.edu>
2867 *giowin32.c: G_IO_WIN32_WINDOWS_MESSAGES channels
2868 not handled correctly in g_io_win32_check()
2870 Sun May 20 10:47:47 2001 Owen Taylor <otaylor@redhat.com>
2872 * configure.in: Fix some problems in writing out varargs
2873 tests in configure.in
2875 Fri May 18 10:52:23 2001 Owen Taylor <otaylor@redhat.com>
2877 * configure.in gmessages.h: Use compile checks for ISO C99 and GNU
2878 extension varargs macros syntax and store result in glibconfig.h
2879 (G_HAVE_ISO_VARARGS, G_HAVE_GNUC_VARARGS) rather than relying
2880 on checking predefined macros.
2882 2001-05-18 Michael Natterer <mitch@convergence.de>
2884 * gmarkup.c: don't g_strdup()/g_free() all parsed attributes and
2885 their values twice but simply copy the string pointers from the
2886 GMarkupAttribute struct to the string arrays before passing them
2889 2001-05-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2891 * gthread.c, gthread.h: Renamed g_thread_create to
2892 g_thread_create_full and added macro g_thread_create, which omits
2893 'stack_size', 'bound' and 'priority' parameters. Also removed
2894 'bound' from GThread struct.
2896 * gthreadpool.h, gthreadpool.c: Adapted GThreadPool to the above
2897 changes. GThreadPool lost the 'priority' and 'bound'
2898 members. g_thread_pool_new the 'stack_size', 'bound' and
2899 'priority' parameters.
2901 * tests/mainloop-test.c, tests/thread-test.c,
2902 tests/threadpool-test.c: Adapted to the above changes.
2904 * gmem.c (g_mem_profile): Fixed mutex deadlock.
2906 2001-05-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2908 * makefile.mingw.in: Add gpattern.o to objects.
2910 * glib.def: Export g_thread_exit as well.
2912 * Makefile.am: Fix BUILT_EXTRA_DIST exporting.
2914 Sun May 13 10:31:17 2001 Owen Taylor <otaylor@redhat.com>
2916 * glib/Makefile.am gobject/Makefile.am gmodule/Makefile.am:
2917 Add inter-library dependencies.
2919 * acinclude.m4: Remove libtool macros.
2921 * autogen.sh: Require libtool-1.4, automake-1.4p1.
2923 2001-05-15 Havoc Pennington <hp@redhat.com>
2925 * configure.in (AC_OUTPUT): m4macros/Makefile
2927 * m4macros/Makefile.am, m4macros/glib-2.0.m4,
2928 m4macros/glib-gettext.m4:
2929 m4 files moved here on server, Makefile.am added
2931 This is so you can aclocal -I m4macros while avoiding acinclude.m4
2933 * Makefile.am: add m4macros subdir, remove references to glib-2.0.m4
2935 2001-05-14 Havoc Pennington <hp@redhat.com>
2937 * gutf8.c (g_utf8_get_char): fix docs; they said we validated
2938 the UTF-8, but we can't possibly detect partial chars since
2939 there's no length arg here, so trying to use this function
2940 on invalid UTF-8 is a bad idea.
2942 Thu May 10 23:21:30 2001 Owen Taylor <otaylor@redhat.com>
2944 * gmessages.c (g_log_write_prefix): Avoid using stdio
2945 to be as robust as possible in out-of-memory.
2947 * gmessages.c (g_log_default_handler): Remove some dead
2950 * gutils.c (g_parse_debug_string): Fix to avoid mallocs.
2952 Fri May 11 18:25:23 2001 Tim Janik <timj@gtk.org>
2955 (g_dataset_foreach):
2956 (g_datalist_foreach): make these safe against removal of the
2959 2001-05-10 Havoc Pennington <hp@pobox.com>
2961 * gmessages.c (g_log_write_prefix): change env variable to
2962 G_MESSAGES_PREFIXED, suggested by Tim
2964 Thu May 10 15:19:01 2001 Tim Janik <timj@gtk.org>
2966 * gscanner.c (g_scanner_key_hash): use g_str_hash() algorithm
2969 * gmem.c (standard_calloc): free() doesn't return a value
2972 2001-04-26 Havoc Pennington <hp@redhat.com>
2974 * configure.in: Get rid of --enable-msg-prefix
2976 * gmessages.c: make whether to prefix the messages with
2977 appname/pid a runtime setting, not a compile-time setting. Change
2978 default to include prefix for debug/warning/error type messages.
2980 2001-05-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2982 * gthread.c, gthread.h: Renamed 'value' and 'arg' to 'data' and
2983 'thread_func' to 'func' to make it more consistent with the rest
2986 * gthreadpool.c, gthreadpool.h: Moved 'stack_size' from the public
2987 members of GThreadPool to the private ones. Renamed 'thread_func'
2988 to 'func' as above. Moved up 'user_data' in g_thead_pool_new
2989 argument list and in GThreadPool struct.
2991 Tue May 8 15:33:31 2001 Tim Janik <timj@gtk.org>
2993 * gcompletion.h: removed #include <unistd.h> sneaked in by
2994 sopwith in november.
2996 2001-05-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2998 * gmain.c, gthread.c, gthread.h: Moved func and arg members from
2999 GRealThread to GThread, such that they can be accessed by the
3002 * gthread.c, gthread.h: Due to popular demand (Tim being the
3003 populus here ;-) threads now have a 'return value', which is
3004 returned by g_thread_join and is either the return of the topmost
3005 thread function or the value given to g_thread_exit.
3007 * gthreadpool.c, tests/mainloop-test.c, tests/thread-test.c:
3008 Adapted to the above change.
3010 2001-01-06 Hans Breuer <hans@breuer.org>
3012 * glib.def : don't try to export g_strcpy, it is g_stpcpy;
3013 updated and added some tweaking for functions which got
3014 renamed recently, to avoid the update hassle if it can
3015 simply be done compatible. Should vanish if there is a
3016 stable version for win32.
3018 Fri May 4 11:49:18 2001 Owen Taylor <otaylor@redhat.com>
3024 * configure.in (GLIB_MICRO_VERSION): Up version to 1.3.5,
3025 interface/binary age 0.
3027 2001-05-04 Sven Neumann <sven@convergence.de>
3029 * ghash.c: fixed a typo in a comment.
3031 * gtree.[ch]: added new functions g_tree_new_full(), g_tree_replace(),
3032 g_tree_steal() and g_tree_foreach() to adapt GTree to the GHashTable
3033 API. Moved comments into the C file.
3035 * docs/reference/glib/glib-sections.txt
3036 * docs/reference/glib/tmpl/glib-unused.sgml
3037 * docs/reference/glib/tmpl/hash_tables.sgml
3038 * docs/reference/glib/tmpl/linked_lists_double.sgml
3039 * docs/reference/glib/tmpl/linked_lists_single.sgml
3040 * docs/reference/glib/tmpl/macros_misc.sgml
3041 * docs/reference/glib/tmpl/trees-binary.sgml: updated documentation
3043 Thu May 3 06:38:28 2001 Owen Taylor <otaylor@redhat.com>
3045 * g[s]list.c (g_[s]list_foreach) docs/Changes-2.0.txt: Make
3046 foreach() safe against removal of the _current_ element. While
3047 this could break some code, the new behavior is consistent with
3048 the rest of GLib/GTK+ and probably is what people expect in most
3049 cases. (Suggested by Paul Kuykendall, #50071)
3051 Wed May 2 11:10:22 2001 Owen Taylor <otaylor@redhat.com>
3053 * gutf8.c (g_utf8_to_ucs4_fast): Fix read past end of the string.
3054 (#50404, fix from Jonas Borgström)
3056 Sun Apr 29 00:37:34 2001 Tim Janik <timj@gtk.org>
3058 * ghook.[hc]: made hook ids a gulong.
3060 2001-04-20 Dan Winship <danw@ximian.com>
3062 * configure.in: Add a check for the Darwin dynamic linker. Use
3063 AC_TRY_LINK when checking for "nonposix getpwuid_r" so it notices
3064 "no getpwuid_r" correctly.
3066 * testglib.c (main): Make template[] bigger to prevent an overrun.
3067 Remove an unused variable. Initialize error to NULL.
3069 * tests/gio-test.c (main): Add a cast to prevent a warning when
3072 * tests/type-test.c (main): Add an #ifdef to prevent a warning
3073 when G_HAVE_GINT64 is defined and G_GINT64_FORMAT isn't.
3075 2001-04-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3077 * ghash.c, ghash.h: Remove definition of g_hash_table_freeze and
3078 g_hash_table_thaw. Instead added G_DISABLE_DEPRECATED-guarded
3079 macros to ghash.h to go along the lines of the standard.
3081 * gscanner.c, gscanner.h: Dito for g_scanner_freeze_symbol_table
3082 and g_scanner_thaw_symbol_table.
3084 * gutils.c, gutils.h: Dito for g_dirname. g_basename is still
3085 defined in gutils.c, but declared ing gutils.h only
3086 G_DISABLE_DEPRECATED-guarded.
3088 * configure.in: Removed bashism in test for the pkg-config
3091 * configure.in: Rewrote test for multithread flag. Now uses
3092 localtime_r, which hopefully has a consistent prototype across
3093 different platforms. Also it uses a clever double EGREP trick
3094 instead of compiling, which could give false positives. Thanks to
3095 Dan Winship <danw@ximian.com> for the hint.
3097 Wed Apr 18 17:35:38 2001 Owen Taylor <otaylor@redhat.com>
3099 * gutils.c (_glib_gettext): Add missing static pointed
3100 out by Michael Meeks.
3102 Wed Apr 18 09:37:07 2001 Owen Taylor <otaylor@redhat.com>
3104 * MAINTAINERS: Removed. Keeping README, README.cvs-commits
3105 HACKING, and AUTHORS up to date is plenty without extra
3106 random files that someone thought a module should have.
3107 (Actually, I believe this was used for debbugs in the past.)
3109 Tue Apr 17 11:47:07 2001 Owen Taylor <otaylor@redhat.com>
3115 Tue Apr 17 10:43:36 2001 Owen Taylor <otaylor@redhat.com>
3117 * gstrfuncs.c: Define _GNU_SOURCE for stpcpy
3119 * tests/mainloop-test.c (main): Wait for all threads
3120 to start before beginning tests.
3122 2001-04-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3124 * gthreadpool.c (g_thread_pool_thread_proxy): Until now every
3125 thread pool always had at least one tread waiting to avoid
3126 switching overhead in case a new task would be added soon after
3127 one finished. This however means a big waste of threads, if many
3128 mostly inactive thread pools are involved. Now such a waiting
3129 thread will only wait for half a second (This value is of course
3130 very randomly picked) and go to the global threadpool afterwards.
3132 Mon Apr 16 12:04:52 2001 Owen Taylor <otaylor@redhat.com>
3134 * configure.in: Remove warnings about conflicts with the
3137 * glib-2.0.m4: Fix some of the error text to be halfway
3140 * README.in INSTALL.in: Add these to generate README, INSTAL
3141 (as in the stable branch). Update.
3145 2001-04-16 Havoc Pennington <hp@redhat.com>
3149 * gfileutils.c: docs
3151 * gwin32.c: docs fixes
3159 2001-04-16 Havoc Pennington <hp@redhat.com>
3161 * glib-2.0.m4: put AC_PATH_PROG(pkg-config) before "Checking for
3162 glib" so the output looks right
3164 2001-03-23 Havoc Pennington <hp@redhat.com>
3166 * gutils.c (g_parse_debug_string): make GDebugKeys argument
3169 2001-04-14 Hans Breuer <hans@breuer.org>
3172 * makefile.msc.in : updated
3174 * gpattern.c : include "gutils.h" to resolve the inline hassle
3176 2001-04-11 Alexander Larsson <alexl@redhat.com>
3178 * glib-2.0.m4: Pass pkg-config options
3179 before the other args so it works even if
3180 POSIXLY_CORRECT is set.
3182 Mon Apr 9 18:57:44 2001 Tim Janik <timj@gtk.org>
3184 * configure.in: increment version to 1.3.4 (binary 0, interface 0).
3186 2001-04-05 Christian Rose <menthos@menthos.com>
3188 * configure.in: Added sv to ALL_LINGUAS.
3190 Wed Apr 4 09:18:55 2001 Tim Janik <timj@gtk.org>
3192 * Released GLib-1.3.3.
3194 Tue Apr 3 20:22:59 2001 Tim Janik <timj@gtk.org>
3198 * NEWS.pre-1-3: take over old news.
3200 Tue Apr 3 12:38:16 2001 Owen Taylor <otaylor@redhat.com>
3202 * glib-config-2.0.in: Exit with an error message that you
3203 should use pkg-config instead.
3205 * configure.in (PACKAGE): Require pkg-config.
3207 * tests/Makefile.am (EXTRA_DIST): Add utf8.txt.
3209 * configure.in (GLIB_MICRO_VERSION): Up MICRO to 3,
3210 leave interface/binary at 0.
3212 Tue Apr 3 13:46:22 2001 Tim Janik <timj@gtk.org>
3214 * glist.[hc]: added g_list_nth_prev() which walks ->prev instead
3217 * gpattern.[hc]: added shell-style pattern matching code from beast,
3218 derived from the gtk_pattern_*() code, but with a couple of bug fixes
3219 and a number of optimizations.
3221 2001-04-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3223 * gthreadpool.c: Added documentation.
3225 * gthreadpool.c: The global thread pool now also is seperated for
3226 bound and unbound threads. Only threads with standard stack size
3227 go to the global pool. g_thread_pool_new now protects the global
3228 setup of inform_mutex etc. with a lock. Fixed some typos. Unlock
3229 the queue after g_thread_pool_wakeup_and_stop_all in the proxy.
3231 2001-04-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3233 * gmain.c: Use the new GRealThread member "context" instead of a
3234 GStaticPrivate to store the thread specific main loop context.
3236 * gthread.c: Added "context" member to GRealThread and updated
3237 g_thread_create, g_thread_self and g_thread_cleanup accordingly.
3239 * gthread.c, gthread.h: Removed the functions
3240 g_static_private_(get|set)_for_thread and adapted
3241 g_static_private_(get|set) and g_static_private_free
3242 accordingly. This fixes Bug #51435.
3244 2001-03-30 Sven Neumann <sven@gimp.org>
3247 * docs/reference/glib/tmpl/hash_tables.sgml: added new functions
3248 g_hash_table_new_full, g_hash_table_replace, g_hash_table_steal and
3249 g_hash_table_foreach_steal. Moved most docs out of the template
3250 file into the C file. Please proofread the new documentation.
3252 2001-03-29 Tor Lillqvist <tml@iki.fi>
3254 * glib.def: Updates.
3255 * tests/makefile.mingw.in
3256 * tests/makefile.msc.in: Add module-test rules.
3258 Mon Mar 26 14:14:53 2001 Owen Taylor <otaylor@redhat.com>
3260 * Makefile.am (INCLUDES): -DG_DISABLE_DEPRECATED
3262 * gmain.h timeloop.c: Surround the cruftiest stuff with
3263 #ifndef G_DISABLE_DEPRECATED.
3265 * gcompat.h gdate.h: Move compat defines back to
3266 gdate.h, surround with #ifndef G_DISABLE_DEPRECATED.
3269 Mon Mar 26 13:34:50 2001 Owen Taylor <otaylor@redhat.com>
3271 [ Patch from DindinX <David.Odin@bigfoot.com>, added docs ]
3273 * gstrfuncs.c, gstrfuncs.h: Add g_stpcpy () for platform that
3274 don't have stpcpy ().
3275 * gstrfuncs.c (g_strjoin, g_strjoinv, g_strconcat):
3276 use g_stpcpy () so these functions run much faster.
3277 * config.h.win32.in, glib.def: add reference to g_stpcpy ()
3278 * configure.in: Add a test for the stpcpy () function.
3280 2001-03-20 Havoc Pennington <hp@redhat.com>
3282 * gutf8.c (g_utf8_strlen): rewrite, based on bug #52328 from
3285 2001-03-19 Havoc Pennington <hp@redhat.com>
3287 * gutf8.c (g_unichar_validate): added this function
3289 2001-03-18 Tor Lillqvist <tml@iki.fi>
3291 * gspawn-win32.c (SETUP_DEBUG): Add braces to silence gcc -Wall.
3293 * gspawn-win32-helper.c (write_no_error): Remove unused function.
3295 * tests/makefile.mingw.in (module-test.exe): Add rules for
3296 building module-test.
3298 Wed Mar 14 18:46:54 2001 Tim Janik <timj@gtk.org>
3300 * gscanner.[hc]: removed archaic gpointer derived_data; relict and
3301 added a GData member instead.
3303 * glist.[hc]: added g_list_remove_all().
3305 * gslist.[hc]: added g_slist_remove_all().
3307 Sat Mar 17 19:54:51 2001 Owen Taylor <otaylor@redhat.com>
3309 * timeloop.c: Reorder headers to make FreeBSD happy.
3311 2001-03-13 Tor Lillqvist <tml@iki.fi>
3313 From Edward M. Lee <tailbert@yahoo.com>:
3315 * gdate.c (g_date_set_parse): add support for dates that in the
3316 form "Wed Mar 14 2001". Running testgdate on cygwin requires this.
3318 Fri Mar 9 18:01:43 2001 Tim Janik <timj@gtk.org>
3320 * gscanner.[hc]: made config arg to g_scanner_new() const.
3322 2001-03-12 Tor Lillqvist <tml@iki.fi>
3324 * tests/Makefile.am (libmoduletestplugin_b_la_LIBADD,
3325 libmoduletestplugin_b_la_LIBADD): Link with the libgmodule la only
3328 2001-03-10 Tor Lillqvist <tml@iki.fi>
3330 * glibconfig.h.win32.in: Define G_PLATFORM_WIN32 here, too.
3332 * tests/Makefile.am: Use the _LIBADD dependency on libglib only on
3335 2001-03-09 Tor Lillqvist <tml@iki.fi>
3337 * README.win32: Update with some information about using configure
3340 2001-03-09 Hans Breuer <hans@breuer.org>
3342 * gobject/gobject.def : updated
3344 2001-03-08 Tor Lillqvist <tml@iki.fi>
3347 * gobject/gobject.def
3348 * gobject/makefile.mingw.in: Update.
3350 2001-03-08 Sven Neumann <sven@gimp.org>
3353 * docs/reference/glib/tmpl/trees-binary.sgml: added new function
3354 g_tree_lookup_extended().
3356 Thu Mar 8 16:23:34 2001 Tim Janik <timj@gtk.org>
3358 * ghook.[hc]: destruction cleanup. there's one
3359 ->finalize_hook member in the hooklist now that gets
3360 called when a hook should be destroyed, that's it.
3361 that function is guarranteed to be called only when
3362 all ref_counts to the hook vanished, thus also when
3363 the hook is not in call.
3365 2001-03-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3367 * configure.in (FLAG_DOES_NOT_WORK): Fix typo and thus bug #51862.
3369 Wed Mar 7 09:32:06 2001 Tim Janik <timj@gtk.org>
3371 * glib-object.h: add gvaluearray.h.
3373 * gstring.[hc]: fixup naming of g_string_sprint*.
3375 * gtypes.h: fixed GCompareDataFunc naming.
3377 2001-03-07 Christian Meyer <chrisime@gnome.org>
3379 * configure.in: Added de (German) to ALL_LINGUAS.
3381 2001-03-02 Christophe Merlet <redfox@eikonex.org>
3383 * configure.in: Added fr (French) to ALL_LINGUAS.
3385 2001-03-01 Tor Lillqvist <tml@iki.fi>
3387 * gutils.c (g_path_is_absolute): (Win32) Remove test for initial
3388 double backslash (UNC path), this will of course be matched by the
3389 test for an initial G_DIR_SEPARATOR right up front. Silly me.
3390 (g_find_program_in_path): Implement on Win32. Append the
3391 executable file name suffixes from PATHEXT in turn while looking
3393 (g_find_program_in_path): If the program we are looking for is a
3394 relative path in a subdirectory, don't do any path search.
3395 (g_get_any_init): (Win32) Also look for the USERPROFILE env var
3396 indicating the home directory equivalent.
3397 (g_find_program_in_path): (Win32): Use MAXPATHLEN, not PATH_MAX
3398 which isn't defined with MSVC.
3400 * testglib.c (main): Test g_find_program_in_path() on Win32 by
3401 looking for more.com and regedit.
3403 * glib.def: Add g_find_program_in_path.
3405 2001-02-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3407 * gthreadpool.c (g_thread_pool_thread_proxy): Make
3408 max_unused_threads work for -1 as well.
3410 2001-02-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3412 * gthread.h (struct _GThread): Change the order to match the order
3413 in g_thread_create().
3415 * gthread.c (g_static_rec_mutex_lock_full): Also do the right
3416 thing (behave like 'depth' calls to g_static_rec_mutex_lock) for a
3417 mutex, that is already locked.
3419 Thu Feb 22 10:31:36 2001 Owen Taylor <otaylor@redhat.com>
3421 * gmain.c (g_source_remove_poll): Add missing implementation
3422 of g_source_remove_poll. (Pointed out by Stefan Westerfeld)
3424 2001-02-21 Tor Lillqvist <tml@iki.fi>
3426 * gutils.c (g_find_program_in_path): Implement on Win32.
3428 Cygwin support contributed by Stefan Ondrejicka
3429 <ondrej@idata.sk>. Hopefully I got it all in while simultaneously
3430 adding support for auto*/libtool for mingw.
3432 * Makefile.am: Changes for auto* support on Cygwin and Win32. Do
3433 still distribute the hand-written makefiles and *.win32.in files,
3434 though. Use GIO, GSPAWN and PLATFORMDEP macros set by configure.
3435 Use -no-undefined. Pass -export-symbols glib.def to libtool.
3437 * configure.in: Define G_PLATFORM_WIN32 on both pure Win32 (mingw)
3438 and Cygwin. Add AC_CYGWIN, AC_EXEEXT and AC_LIBTOOL_WIN32_DLL
3439 calls for Cygwin and mingw support. Check for %I64u guint64
3440 format (in MS C library). Set G_MODULE_IMPL on mingw and
3441 Cygwin. Use ac_object and ac_exeext. Set GIO, GSPAWN, PLATFORMDEP
3442 and G_LIBS_EXTRA. Compile timeloop only on Unix. Define OS_WIN32
3443 automake conditional on Win32.
3445 * glib.h: Include gwin32.h also on Cygwin.
3447 * gfileutils.c (get_contents_posix): Use O_BINARY (defined as 0 on
3448 Unix) for Cygwin's sake.
3450 * gtimer.c (GETTIME): Reduce #ifdefs, use a macro GETTIME().
3455 * gutils.c: For code needed both on Cygwin and native Win32,
3456 test for G_PLATFORM_WIN32.
3458 * gmarkup.h: Use G_BEGIN_DECLS and G_END_DECLS.
3460 * gtypes.h: Refine GLIB_VAR definition. Also check for DLL_EXPORT
3461 in case compiling a static library on Win32 or Cygwin.
3463 * gwin32.c: No <direct.h> on Cygwin. No need for ftruncate() or
3464 dirent emulation on Cygwin.
3465 (get_package_directory_from_module) Convert return value from
3466 GetModuleFileName() to POSIX path on Cygwin.
3468 * tests/Makefile.am (progs_LDADD): Link with libglib, libgthread
3469 and libgmodule as appropriate. Use -no-undefined.
3471 * gbacktrace.c: Move #ifdefs around a bit on Win32.
3473 2001-02-21 Tor Lillqvist <tml@iki.fi>
3475 * gshell.c (unquote_string_inplace): Make static.
3477 * gthread.h: Include gtypes.h to be sure to get GLIB_VAR
3478 definition, remove definition from here.
3480 * gunicode.h: Remove duplicate GLIB_VAR definition from here, too.
3482 * gutils.c: (Win32) Use USERPROFILE as home dir if present. On
3483 Win2k, HOMEDRIVE and HOMEPATH aren't reliable.
3485 * Makefile.am (INCLUDES): Add -DGLIB_COMPILATION.
3487 * makefile.mingw.in: Remove install target, Windows isn't Unix.
3488 (DEFINES): Add -DDLL_EXPORT.
3492 * testglib.c: Undefine GLIB_COMPILATION.
3494 * testglib.c: Make some vars static. Add Cygwin path tests.
3496 * glib.def: Updates.
3499 * */.cvsignore: Ignore also .obj, .dll, .lib and .exe files.
3501 2001-02-19 Hans Breuer <hans@breuer.org>
3503 * glib/glib.def, gobject/gobject.def : added nissing symbols
3505 * gobject/makefile.msc : updated
3507 * glib/gmessages.c : call the "debug interrupt" before exiting the
3508 program, if build with msvc as debug version. Which gives the opportunity
3509 to see the callstack, etc.
3511 * glib/gthread.c : thread->pid is only defined #ifdef
3512 G_THREAD_USE_PID_SURROGATE
3514 Mon Feb 19 07:32:38 2001 Tim Janik <timj@gtk.org>
3516 * glib-config-2.0.in (lib_glib): my name is glib-config-2.0!
3517 don't exit with errorcode!=0 for --help or -h.
3520 * configure.in: build glib-config-2.0.
3522 2001-02-17 Havoc Pennington <hp@pobox.com>
3524 * gthread.c: include string.h
3526 Applied patch from Soeren Sandmann:
3528 * testglib.c: const fixes
3530 * gwin32.h: format cleanups
3532 * gutils.c (g_atexit): constify a variable
3533 (g_find_program_in_path): constification
3534 (g_basename): G_CONST_RETURN
3535 (g_path_skip_root): G_CONST_RETURN
3536 (g_getenv): G_CONST_RETURN
3537 (g_get_user_name): G_CONST_RETURN
3538 (g_get_real_name): G_CONST_RETURN
3539 (g_get_home_dir): G_CONST_RETURN
3540 (g_get_tmp_dir): G_CONST_RETURN
3541 (g_get_prgname): G_CONST_RETURN
3542 (_glib_gettext): G_CONST_RETURN
3544 * gunicode.h: formatting cleanups
3546 * gstrfuncs.c (g_strerror): G_CONST_RETURN
3547 (g_strsignal): G_CONST_RETURN
3549 * gspawn.c (g_execute): const on variables
3551 * gmessages.c (printf_string_upper_bound): fix const on a variable
3553 * gmem.c (g_mem_chunk_new): make the "name" arg const
3554 (struct _GRealMemChunk): make the "name" field const
3556 * gfileutils.c (g_file_open_tmp): store const return in a const
3559 * gdataset.c (g_quark_to_string): G_CONST_RETURN
3561 Sat Feb 17 07:26:33 2001 Tim Janik <timj@gtk.org>
3563 * configure.in (G_MODULE_HAVE_DLERROR): add check for broken RTLD_GLOBAL
3566 2001-02-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3568 * acconfig.h, configure.in: Reverted the changes necessary to
3569 enlarge the system thread for G_THREAD_USE_PID_SURROGATE.
3571 * gthread.c: Now implement G_THREAD_USE_PID_SURROGATE in gthread.c
3572 instead of gthread/gthread-posix.c. While the latter has the
3573 advantage, that it is conceptually cleaner, it makes
3574 g_thread_self_posix_impl _very_ slow and that hurts
3575 GStaticRecMutex and other things. So the new version is less
3578 2001-02-09 Havoc Pennington <hp@redhat.com>
3580 * gconvert.c (g_convert): don't overwrite errors
3582 * gerror.c (g_set_error): improve warning message if an error is
3584 (g_propagate_error): ditto
3586 2001-02-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3588 * gthread.c, gthread.h: Added functions g_static_rec_mutex_init,
3589 g_static_rec_mutex_free, g_static_private_init,
3590 g_static_private_free, g_static_rw_lock_init to allow the usage of
3591 all those types dynamically. (g_static_rw_lock_free already
3592 existed). Aditionally freed static_private indeces are reused
3593 now. Untill now the array would just grow if you would use more
3594 and more static_private. That required adding a slist of all
3595 running threads, which could potentially be of good use later. It
3596 is not exported however. Renamed a LOCK and small indentation
3599 * tests/thread-test.c: Test the new static_private index freing
3600 and reusing feature.
3602 Mon Feb 12 15:01:09 2001 Owen Taylor <otaylor@redhat.com>
3604 * configure.in (gtk_doc_min_version): Add check for gtk-doc version.
3606 2001-02-10 Tor Lillqvist <tml@iki.fi>
3609 * gutils.h: Move GLIB_VAR definition from gutils.h to gtypes.h
3612 * gmem.h: Mark glib_mem_profiler_table for export.
3614 * gwin32.c (get_package_directory_from_module): Don't store
3615 address of local variable in hashtable.
3617 2001-02-08 Fatih Demir <kabalak@kabalak.net>
3619 * configure.in: Added "tr" to ALL_LINGUAS.
3621 2001-02-04 Tor Lillqvist <tml@iki.fi>
3623 * gwin32.c (g_win32_getlocale): Use "nn" for Nynorsk, as nn.po
3624 files are appearing now. If the sublanguage starts with '@', don't
3625 use a '_' separator. South Africa is 'ZA', not 'SA'.
3627 Sun Feb 4 07:38:32 2001 Tim Janik <timj@gtk.org>
3629 * docs/debugging.txt: s/glib_trap_/g_trap_/. add comments on
3630 g_trap_instance_signals, g_trace_instance_signals and
3633 * gmem.c: s/glib_trap_/g_trap_/.
3635 2001-02-04 Tor Lillqvist <tml@iki.fi>
3637 * tests/Makefile.am (thread_LDADD): Change order of libs,
3638 put progs_LDADD last. Needed for cygwin, says jbdoll@kepri.re.kr.
3640 2001-02-02 Tor Lillqvist <tml@iki.fi>
3644 * gmain.c: Stylistic cleanups. Use G_STRLOC in g_warning() calls.
3646 * glib.def: Add missing functions.
3648 2001-02-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3650 * gthread.c, gthread.h: Added g_static_mutex_init to allow
3651 initialization of a GStaticMutex, that can not be initialized with
3652 G_STATIC_MUTEX_INIT, for example in allocated structures.
3654 Wed Jan 31 13:46:58 2001 Owen Taylor <otaylor@redhat.com>
3656 * acinclude.m4 glib-gettext.m4: Fix problem with --disable-nls.
3658 2001-01-31 Tor Lillqvist <tml@iki.fi>
3660 * glibconfig.h.win32.in: Corresponding change as below to
3663 2001-01-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3665 * gthread.c, gthread.h: Added g_static_mutex_free to allow using
3666 GStaticMutexes with limited lifetime without leaking.
3668 * configure.in: GStaticMutex doesn't have to provide extra space
3669 for debugging information for G_ERRORCHECK_MUTEXES, as then the
3670 non-default implementation (runtime_mutex) is used anyway.
3672 * gthread.h (g_cond_wait): Added debug information for
3673 g_mutex_free calls, if G_ERRORCHECK_MUTEXES is defined.
3675 2001-01-29 Tor Lillqvist <tml@iki.fi>
3677 * glibconfig.h.win32.in: Use the same GMutex structure as the
3678 configure-generated glibconfig.h does.
3680 * gstrfuncs.c (g_strsignal): Declare strsignal() on Cygwin, too,
3681 says jbdoll@kepri.re.kr.
3683 2001-01-29 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3685 * gthread.c: Broadcast the condition, if there are waiting
3686 readers, as all might read at the same time. Only signal the
3687 writer thread, if there are no more readers.
3689 2001-01-25 Tor Lillqvist <tml@iki.fi>
3692 * */makefile.mingw.in: Protect the rule to rebuild makefile.mingw
3693 if makefile.mingw.in has changed with a check if said .in file
3694 exists. (This rule is mainly a convenience for yours truly.)
3696 * giowin32.c: Socket support rewritten. It was utterly broken, and
3697 untested in fact. We still do use a thread for each socket being
3698 watched, but instead of blocking in recv() (which of course was
3699 plain stupid for sockets being listen()ed on in a server-type
3700 application), we block in select(). The read method for sockets
3701 calls recv(). It is now possible for the application to call
3702 accept(), recv() or send() in the callback, just like on
3703 Unix. Tested with code kindly provided by Andrew Lanoix.
3705 Rename g_io_channel_win32_new_stream_socket() to
3706 g_io_channel_win32_new_socket() as it isn't restricted to stream
3709 * gmain.c (g_poll): Related changes in the Win32 version of
3710 g_poll(). When polling for messages, always do a PeekMessage()
3711 first. We used to miss messages if several were posted between
3714 * giochannel.h: Improve Win32-related comments.
3716 * gutf8.c: (Win32) Include <stdio.h> for sprintf.
3718 * tests/gio-test.c: (Win32) Add tests for polling for Windows
3721 * tests/makefile.mingw.in: Remove superfluous compilation command
3724 2001-01-23 Alex Larsson <alexl@redhat.com>
3726 * gmain.c (g_source_callback_unref): Free the callback
3727 (g_source_set_callback): Initialize the callback refcount
3729 2001-01-20 Tor Lillqvist <tml@iki.fi>
3731 * gutils.c (g_get_codeset): (Win32) Even if g_get_codeset() is
3732 currently commented out from gutils.h, fix it to return the same
3733 CP%d value as g_get_charset().
3735 2001-01-19 Kjartan Maraas <kmaraas@gnome.org>
3737 * gconvert.c: Fix typo.
3738 * gfileutils.c: Same here.
3739 * configure.in: Added no to ALL_LINGUAS
3741 2001-01-17 Tor Lillqvist <tml@iki.fi>
3743 * gwin32.c (g_win32_getlocale, g_win32_error_message): Add doc
3745 (g_win32_get_package_installation_directory): Add one parameter,
3746 the name of a DLL in the package. Add possibility to use that to
3747 deduce the installation directory if not entered into the
3748 Registry. Make the return value dynamically allocated.
3749 (g_win32_get_package_installation_subdirectory): New convenience
3752 * gutils.c (GLIB_LOCALE_DIR)
3753 * gwin32.h: Adapt accordingly.
3755 * testglib.c (main): Adapt tests accordingly.
3757 Tue Jan 16 23:20:38 2001 Owen Taylor <otaylor@redhat.com>
3759 * gutils.c glibintl.h: Optimize for size rather than speed by
3760 making _() always call _glib_gettext() instead of conditionally
3761 calling gettext() or _glib_gettext_init. glib only uses translated
3762 strings in slow error handling code anyways.
3764 * glibintl.h: g'ify types.
3766 * Makefile.am: include glibintl.h in _SOURCES
3768 2001-01-17 Tor Lillqvist <tml@iki.fi>
3770 * config.h.win32.in: Define ENABLE_NLS and GETTEXT_PACKAGE.
3773 * makefile.msc.in: Use the GNU intl library.
3775 * gwin32.c (g_win32_get_package_installation_directory): New
3776 function. To be used by various GLib-using packages to get their
3777 installation directory, which should be stored in the Registry by
3780 * gwin32.h: Declare it.
3782 * testglib.c (main): Test it.
3784 * gutils.c: On Win32, define GLIB_LOCALE_DIR using
3785 g_win32_get_package_installation_directory().
3789 Mon Jan 15 21:39:06 2001 Owen Taylor <otaylor@redhat.com>
3791 * glib-2.0.pc.in (Libs) glib-config-2.0.in: Add @INTLLIBS@.
3793 Mon Jan 15 21:12:49 2001 Owen Taylor <otaylor@redhat.com>
3795 * configure.in acconfig.h glibintl.h gutils.c
3796 po/{Makefile.in.in,POTFILES.in,po2tbl.in}: Add gettext
3799 * glib-gettext.m4 acinclude.m4: Clean up the GTK+ gettext macros
3800 some more and put them in this file, though they also need
3801 to be included in acinclude.m4 due to the brokeness of
3804 * gspawn.c gspawn-win32.c gutf8.c gconvert.c gfileutils.c
3805 gshell.c: Remove dummy _() #defines, include glibintl.m4.
3807 2001-01-09 Tor Lillqvist <tml@iki.fi>
3809 * giowin32.c: Rework the changes needed to pass mainloop-test. Now
3810 we don't need to call TerminateThread() after all, which is a
3811 relief, as the docs have a BIG RED WARNING SIGN about using that
3812 API. Instead, when closing a fd channel that has a reader thread
3813 running, just mark it as non-running and additionally mark the fd
3814 as ripe for closing. When the reader thread hopefully eventually
3815 gets something (and EOF or some actual data), it will note that it
3816 shouldn't be running, break out of the loop, and close the fd.
3818 The socket channel closing code should probably be changed
3819 similarily, but that will have to wait until I have a test case.
3821 (g_pipe_readable_msg, g_io_channel_win32_new_pipe,
3822 g_io_channel_win32_new_pipe_with_wakeups,
3823 g_io_channel_win32_pipe_request_wakeups,
3824 g_io_channel_win32_pipe_readable): Remove these, have been
3825 obsolete for some time.
3827 * gutils.c (g_basename, g_dirname): Don't warn about deprecation
3828 on Win32. Code written for GLib 1.2 doesn't have much choice but
3829 to use GLib >= 1.3 on Win32.
3833 2001-01-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3835 * gmem.c: Made g_profile_mutex a GMutex* instead of
3836 G_LOCK_DEFINE_STATIC to avoid deadlock for thread implementations
3837 without native static mutexes. Contruct g_profile_mutex in
3840 2001-01-06 Tor Lillqvist <tml@iki.fi>
3842 * gconvert.c (g_locale_to_utf8, g_locale_from_utf8): Get len using
3843 strlen() if arg is negative in the Win32 code, too.
3845 * giowin32.c: Changes necessary to be able to run
3846 mainloop-test. We can't close the fd that our (internal) reader
3847 thread is sitting doing a blocking read() from. We must terminate
3848 the thread first. Keep track of thread handle, and close it when
3849 thread is dying. Start reader thread with the lower-level
3850 CreateThread() instead of _beginthreadex() from the C runtime, in
3851 order to be able to use TerminateThread(). Hopefuly this isn't
3856 * tests/makefile.{mingw,msc}.in (TESTS): Add mainloop-test and
3859 * tests/mainloop-test.c: Portability: <unistd.h>, need <fcntl.h>
3862 * tests/unicode-encoding.c (process): Add missing "line" argument
3863 to fail(). On Win32, convert UTF-16LE, as libiconv'c ivonf always
3864 converts to UTF-16BE if we ask for unspecific UTF-16.
3865 (main) Handle also '\r'.
3867 Fri Jan 5 11:25:42 2001 Owen Taylor <otaylor@redhat.com>
3869 * configure.in (PACKAGE): move $enable_debug down below
3870 checks for GCC to avoid setting CFLAGS prematurely,
3871 change checks to avoid adding -g twice.
3873 * gutf8.c (g_ucs4_to_utf8): Support len < 0 to mean
3876 * gutf8.c (g_utf8_to_ucs4): Terminate result with 0.
3878 * tests/mainloop-test.c (main): Fix uses of
3879 g_main_loop_destroy().
3881 * tests/unicode-encoding.c tests/Makefile.am tests/utf8.txt:
3882 Tests for unicode-conversion code.
3884 * gconvert.c (g_convert, g_convert_with_fallback): work around
3885 a couple of GNU libc bugs.
3887 * gconvert.[ch] (g_{locale,filename}_{to,from}_utf8): Standardize
3888 arguments to match g_convert(). Document.
3891 - Implement conversion functions to and from UTF-16
3892 - Standardize unicode conversion functions on prototype like
3894 - Add a lot of error checking to unicode conversion functions.
3896 * gunicode.[ch] (g_utf8_to_ucs4_fast): Add fast, non-checking
3897 variant of g_utf8_to_ucs4.
3899 * gutf8.c (g_utf8_validate):
3900 - add g_return_if_fail (str != NULL).
3901 - add checks for overlong strings, non-valid Unicode characters (>= 110000)
3902 and single surrogates.
3904 2001-01-05 Tor Lillqvist <tml@iki.fi>
3906 * testglib.c (main): Add test for g_path_skip_root().
3908 * gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
3909 forward slashes in the template.
3911 * gutils.c (g_path_skip_root): On Win32, skip the \\server\share
3912 part of UNC paths. On all platforms, skip several initial
3913 slashes. Add a few comments.
3914 (g_get_any_init): On Win32, in case HOME is Unix-style with
3915 (forward) slashes (some other applications apparently set it up
3916 this way, convert to backslashed form.
3918 * configure.in (glib_os): Remove stray 'v'. Add case for mingw,
3919 although using configure for mingw surely doesn't work yet.
3923 2001-01-02 Havoc Pennington <hp@redhat.com>
3925 * configure.in: remove glib-config-2.0
3927 * Makefile.am: remove glib-config-2.0
3929 2001-01-03 Havoc Pennington <hp@pobox.com>
3931 * tests/Makefile.am (INCLUDES): -I$(top_srcdir)/gmodule,
3932 fix from Michael Meeks
3934 * Makefile.am (INCLUDES): DISABLE was spelled wrong
3936 Wed Jan 3 14:10:49 2001 Owen Taylor <otaylor@redhat.com>
3938 * gmain.[ch]: Switch GMainLoop to be ref/unref, use to
3939 make dropping reference to running loop safe.
3941 Wed Dec 13 20:41:49 2000 Owen Taylor <otaylor@redhat.com>
3943 * gmain.c (g_source_unref_internal): Unref callback->cb_data
3944 if it was still set when the source is freed. (Usually, this
3945 will be done by g_source_destroy.)
3947 2001-01-02 Dan Winship <danw@helixcode.com>
3949 * garray.h (g_array_append_val, g_array_prepend_val,
3950 g_array_insert_val): Use parentheses around an argument to make
3951 these cause an error if you pass a non-lvalue for the value,
3952 rather than silently doing the wrong thing.
3954 2000-12-29 Tor Lillqvist <tml@iki.fi>
3956 * glibconfig.h.win32.in: Add GLIB_SIZEOF_VOID_P and GLIB_SIZEOF_LONG.
3960 * {.,*}/makefile.{mingw,msc}.in: Add -DG_ENABLE_DEBUG.
3962 Fri Dec 29 14:53:18 2000 Tim Janik <timj@gtk.org>
3964 * configure.in: we can't grow _cv_ variables by using a backticked
3965 expr that refers back to the variable (glib_cv_sizeof_system_thread for
3966 G_THREAD_USE_PID_SURROGATE), that'd keep the variable growing every time
3967 it's evaluated. quantum states, anyone?)
3969 Thu Dec 28 10:21:46 2000 Tim Janik <timj@gtk.org>
3971 * gmem.[hc]: got rid of outdated dmalloc support. provide g_try_malloc()
3972 and g_try_realloc() which _may_ fail and return NULL.
3973 nuked g_mem_check(), provided GMemVTable for memory function
3974 virtualization, alterable at program startup with g_mem_set_vtable().
3975 provided glib_mem_profiler_table and g_mem_profile() to support limited
3976 profiling information out of the box (uses mprotect() for free()ed areas
3978 provide globally visible G_MEM_ALIGN.
3981 * docs/macros.txt: file to get a clue about the various configuration
3984 * docs/debugging.txt: explain debugging traps.
3986 * configure.in: got rid of --enable-mem-check and --enable-mem-profile,
3987 define GLIB_SIZEOF_VOID_P and GLIB_SIZEOF_LONG. check malloc prototypes
3988 and define SANE_MALLOC_PROTOS is we can use them.
3989 <boy, is this file a mess>
3991 * gutils.c, gscanner.c: fix up compatibility warnings, use g_message().
3993 2000-12-27 Tor Lillqvist <tml@iki.fi>
3995 * README.win32: Update.
3997 2000-12-25 Tor Lillqvist <tml@iki.fi>
3999 * gmessages.c: (Win32) Use a MessageBox for fatal
4000 messages. Collect eror message into a buffer, and display that.
4004 * glibconfig.h.win32.in: Update. Remove unused wchar and wctype
4005 macros, add G_MODULE_SUFFIX.
4007 2000-12-24 Ali Abdin <aliabdin@aucegypt.edu>
4009 * Makefile.am, gcompat.h, glib.h: New gcompat.h header file
4010 as recommended by Havoc.
4012 * gdate.c, gdate.h, testgdate.c,
4013 docs/reference/glib/glib-sections.txt,
4014 docs/reference/glib/tmpl/date.sgml, tests/date-test.c: Rename some
4015 of the gdate functions to use the '_get' in their name. Patch
4018 2000-12-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4020 * configure.in: Determine the suffix of the shared librarries for
4021 this system. This is done analogous to
4022 ltconfig.sh. G_MODULE_SUFFIX in glibconfig.h is set to either
4023 "sl", "dll", or (most often) "so".
4025 * tests/Makefile.am, tests/module-test.c,
4026 tests/libmoduletestplugin_a.c, tests/libmoduletestplugin_b.c:
4027 Added new testcase for gmodule. This is mostly copied from
4028 gmodule/testgmodule.c, but unlike that is is quiet. (Why BTW are
4029 some tests that verbose, not to say loquacious...)
4031 2000-12-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4033 * grand.c: Updated G_RAND_DOUBLE_TRANSFORM to be more
4034 accurate. Redid g_rand_double() such that it returns 52 bits after
4035 the point instead of 32 as before. That OTOH requires calling
4036 g_rand_int() twice. Overhauled g_rand_int_range(), which is easier
4037 now thanks to the new precision of g_rand_double(). Thanks to
4038 Sverre Johansen <sj@ifi.uio.no> for the hint.
4040 * grand.h: Added g_rand_boolean() and g_random_boolean()
4041 macros. While they could be omitted due to extreme simplicity,
4042 they make intention clearer in code and are therefore good to have.
4044 * grand.c, grand.h: Renamed all 'min' and 'max' parameters to'
4045 begin' and 'end' resp. to avoid making people think, that 'max' is
4046 included in the interval. 'end' now isn't, whereas 'begin'
4047 is. That's similar to the use in the STL.
4049 * gslist.c, glist.c: Ok, I'm a moron. When I originally
4050 implemented ENABLE_GC_FRIENDLY, I forgot to include config.h into
4051 the affected files. Now that Alex did that for those two,
4052 inevitable typos surfaced, which are now fixed.
4054 * garray.c, ghash.c, gqueue.c, gtree.c: Include config.h as well,
4055 as ENABLE_GC_FRIENDLY should be known.
4057 2000-12-19 Alexander Larsson <alexl@redhat.com>
4060 Added --disable-mem-pools option.
4066 Disable free list and memory chunks if DISABLE_MEM_POOLS is defined.
4068 2000-12-17 Tor Lillqvist <tml@iki.fi>
4070 * gutf8.c (g_utf8_get_charset_internal): (Win32) Use GetACP to get
4071 the current ANSI codepage.
4073 * gunicode.h: Add comment that the static string g_get_charset
4074 sets the parameter to point to should be copied in case the
4075 charset might be changed later in the program.
4077 2000-12-14 Tor Lillqvist <tml@iki.fi>
4079 * makefile.{mingw,msc}.in: No need to -DGSPAWN_HELPER when
4080 compiling gspawn-win32-helper any longer.
4082 * giowin32.c (g_io_win32_dispatch): Warn if no callback. Call
4084 (g_io_win32_create_watch): Fix typo.
4085 (g_io_win32_fd_create_watch): Ditto.
4086 (g_io_channel_unix_new): If it is a file descriptor (i.e., a Unix
4087 fd lookalike provided by the C library), call
4088 g_io_channel_win32_new_fd(). If it is a socket (from WinSock),
4089 call g_io_cahnnel_win32_new_stream_socket(). Hopefully sockets and
4090 fds don't overlap. TODO: Implement also datagram sockets.
4091 (g_io_channel_win32_poll): Call g_main_context_get_poll_func().
4093 * gcompletion.h: Include <unistd.h> only on Unix. Is this
4094 inclusion really needed here? OTOH, do include <stddef.h>, for
4097 * gmessages.c: (Win32) Don't define a function called "write" that
4098 might clash with the prototype from <io.h>, use a #define.
4102 * gmain.c (g_source_add_poll): Don't return a value from void
4104 (g_main_context_get_poll_func): Compile also for non-Win32, as
4105 presumably was intended. The result var is a GPollFunc, not a
4106 GPollFunc*. Return the result!
4108 2000-12-13 Havoc Pennington <hp@redhat.com>
4110 * gconvert.c (open_converter): make static
4112 * gutf8.c (g_utf8_validate): Simplify logic a bit, maybe
4113 speeding it up - now we just return FALSE if we had to bail out
4114 for any reason before getting to the end of the string, as defined
4115 by a nul byte if len was -1, defined by the len otherwise. This
4116 also fixes a bug where nul bytes were not treated as invalid
4117 when the length was specified.
4119 2000-12-12 Havoc Pennington <hp@pobox.com>
4121 * gmain.c (g_main_context_destroy): don't try to use thread stuff
4122 unless G_THREADS_ENABLED
4123 (g_main_context_query): ditto
4124 (g_main_context_check): ditto
4125 (g_main_loop_quit): ditto
4127 Tue Dec 12 18:58:22 2000 Tim Janik <timj@gtk.org>
4129 * ghash.c (g_hash_table_remove): return whether a value
4132 Tue Dec 12 15:18:10 2000 Owen Taylor <otaylor@redhat.com>
4134 * gmain.[ch]: Revert unauthorized changes.
4136 2000-12-12 Elliot Lee <sopwith@redhat.com>
4138 * gmain.c, gmain.h (g_main_context_new, g_main_context_destroy):
4139 GMainContext useful in implementing some additional styles of
4140 main loop usage. To do this, however, Joe Hacker needs to be able
4141 to create/destroy GMainContext's at will. This is just an export
4142 of existing functionality, rather than any new functionality.
4144 They are listed in the "Low level functions for implementing custom
4145 main loops" section of the header file, to avoid confusing people.
4147 Sun Dec 10 10:47:11 2000 Owen Taylor <otaylor@redhat.com>
4149 * gmain.c (g_source_destroy_internal): Remove pollfds
4150 from the context here, not when actually freeing the
4153 * gmain.c (g_source_unref_internal): Free source list
4154 and source, call source->source_funcs->destroy().
4156 * giochannel.c: Unreference io_channel properly.
4158 Thu Dec 7 15:22:30 2000 Owen Taylor <otaylor@redhat.com>
4160 * tests/mainloop-test.c (recurser_start): Add a bunch
4163 * gmain.c (g_source_attach): Reference the source
4164 when adding (pointed out by Elliot)
4166 2000-12-08 Raja R Harinath <harinath@cs.umn.edu>
4168 * acglib.m4 (GLIB_AC_DIVERT_BEFORE_HELP):
4169 Rename from GLIB_DIVERT_BEFORE_HELP.
4170 Update to track autoconf 2.49b.
4171 * configure.in: Reflect above change.
4172 (AC_EGREP_HEADER): Rename from really obselete AC_HEADER_EGREP.
4173 (debug_default): Replace "if test `expr ...`" with "case".
4175 * tests/Makefile.am (TESTS): Rearrange into other variables, and
4176 include run-markup-tests.sh.
4177 (TESTS_ENVIRONMENT): New. Pass $srcdir to tests.
4178 (noinst_PROGRAMS): Rename to ...
4179 (check_PROGRAMS): ... this. 'automake' ensures that these are
4180 built before running the tests.
4181 * tests/run-markup-tests.sh: Support $srcdir != $builddir.
4183 2000-12-08 Havoc Pennington <hp@pobox.com>
4185 * tests/Makefile.am (TESTS): move markup-test to noinst_PROGRAMS;
4186 it isn't a proper test, the proper test would be
4187 run-markup-tests.sh, but that can't go in tests, so we need
4188 a manual make check rule. Didn't do that yet.
4190 2000-12-07 Raja R Harinath <harinath@cs.umn.edu>
4192 * gmain.h: Don't put anything after an #endif.
4193 * gmain.c: Likewise.
4195 2000-12-06 Havoc Pennington <hp@pobox.com>
4197 * tests/strfunc-test.c (main): add g_strdupv test
4199 * gstrfuncs.c (g_strdupv): Add a function to copy
4202 Tue Dec 5 12:23:04 2000 Owen Taylor <otaylor@redhat.com>
4204 * gmain.[hc]: Major change in API for creating sources
4205 to handle multiple main loops (GMainContext *).
4207 GSources are now exposed as GSource * and implemented
4208 with structure derivation.
4210 * giochannel.[ch]: Changed vtable for GIOChannel to correspond
4211 to the new mainloop API, add g_io_channel_create_watch().
4213 * gtypes.h: Move GTimeVal here.
4215 * gthread.h: Remove gmain.h include to avoid circularity.
4217 * giounix.c: Update for new GMain API.
4219 * giowin32.c: Update for new GMain API. (No check for
4220 proper compilation or working.)
4222 * timeloop.c timeloop-basic.c: A benchmarking program for
4223 the main loop comparing the main loop against a
4224 hand-written (timeloop-basic.c) variant.
4226 * tests/mainloop-test.c: New torture test of mainloop.
4228 * docs/Changes-2.0.txt: Started. Added text about
4231 * gmain.c (g_main_add_poll_unlocked): Initial fd->revents
4232 to zero. (#8482, Benjamin Kahn)
4234 2000-12-01 Tor Lillqvist <tml@iki.fi>
4236 * {.,*}/makefile.msc.in: Include make.msc from GLib's build subdir.
4238 * makefile.{mingw,msc}.in (glib_OBJECTS): Add gunibreak.
4240 * glib.def: Update correspondingly.
4242 2000-11-21 Havoc Pennington <hp@pobox.com>
4244 * gmacros.h: Provide G_CONST_RETURN which is 'const' by default,
4245 and nothing when G_DISABLE_CONST_RETURNS is defined.
4247 2000-11-29 Havoc Pennington <hp@redhat.com>
4249 * gunidecomp.c (COMBINING_CLASS):
4250 s/UNICODE_LAST_CHAR/G_UNICODE_LAST_CHAR/
4252 * gunichartables.h: Update for data in Unicode 3.0.1
4254 * gunidecomp.h: Ditto
4256 * gunicode.h (GUnicodeBreakType): Enum for line break properties
4257 (g_unichar_break_type): Get the break property for a char
4259 * gunibreak.h: Autogenerated line break property tables
4261 * gunibreak.c (g_unichar_break_type): added
4263 * Makefile.am (EXTRA_DIST): dist gen-unicode-tables.pl
4265 * Makefile.am (libglib_1_3_la_SOURCES): Add gunibreak.h, gunibreak.c
4267 * gen-unicode-tables.pl: Include the script to update the unicode
4270 2000-11-28 Elliot Lee <sopwith@redhat.com>
4272 * gmarkup.c: Fix warnings.
4274 * guniprop.c, gunidecomp.c: Make warnings go away by using
4275 GPOINTER_TO_INT() instead of (int).
4277 * gcompletion.[ch]: Add g_completion_set_compare(),
4278 to allow (for example) using case-insensitive completion.
4280 2000-11-28 Tor Lillqvist <tml@iki.fi>
4282 Patches by Hans Breuer:
4284 * gspawn-win32.c: Move the code for gspawn-win32-helper to its own
4287 * makefile.{mingw,msc}.in: Change accordingly.
4289 * gspawn-win32-helper.c: New file.
4291 * Makefile.am (EXTRA_DIST): Add it.
4293 * gmarkup.c (find_current_text_end): Fix assertion not to check an
4294 uninitialised variable.
4296 2000-11-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4298 * gthread.c: Set the thread data before locking the mutex, because
4299 the locking call might use g_thread_self ().
4301 * gthread.h: Do only show the location of the locking/unlocking
4302 for -DG_ERRORCHECK_MUTEXES and not the name of the mutex. Add the
4303 errorcheck capability for g_cond_wait and g_cond_timed_wait as
4306 2000-11-27 Havoc Pennington <hp@redhat.com>
4308 * gthread.h: Add void in empty function arg list
4310 2000-11-22 Tor Lillqvist <tml@iki.fi>
4312 * makefile.{mingw,msc}.in: Add gqsort.
4316 2000-11-21 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4318 * configure.in: Add a surrogate for thread priorities using PID
4319 niceness for systems with no thread priorities and different PIDs
4320 for threads of the same process (most notably: Linux). Define
4321 G_THREAD_USE_PID_SURROGATE in that case, as used by
4322 gthread-posix.c. Also make the system thread bigger by
4323 sizeof (long) to contain the thread's PID.
4325 * gfileutils.c: Include stdlib.h for mkstemp prototype.
4327 * gthread.c: Add priority range checks to the affected functions.
4329 * gthreadpool.c: Remove unused variable.
4331 Mon Nov 20 18:55:17 2000 Jonathan Blandford <jrb@redhat.com>
4333 * gtree.[hc]: Patch from David Benson <daveb@idealab.com> to add
4334 user_data support to gtree functions.
4336 Mon Nov 13 18:35:52 2000 Jonathan Blandford <jrb@redhat.com>
4338 * gtypes.h (GCompareFuncData): new func type to let you use user
4339 data when comparing nodes.
4341 * gslist.c (g_list_sort_with_data): new function to sort with
4344 * glist.c (g_list_sort_with_data): new function to sort with
4347 * garray.[ch]: Added convenience functions to sort arrays.
4349 2000-11-16 Havoc Pennington <hp@redhat.com>
4351 * guniprop.c (g_unichar_isspace): Use a switch here, maybe helps
4352 the compiler optimize things. Also, ' ' is a SPACE_SEPARATOR,
4353 so don't special case it.
4355 2000-11-17 Tor Lillqvist <tml@iki.fi>
4357 * glib.def: Add g_trash_stack entry points.
4359 Fri Nov 17 15:43:00 2000 Owen Taylor <otaylor@redhat.com>
4365 * tests/Makefile.am (dist-hook): Add code to distribute
4368 2000-11-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4370 * configure.in: Check for the sched.h header and include it on
4371 gthread/gthread-posix.c if available.
4373 * configure.in: Add -D_POSIX4_DRAFT_SOURCE to
4374 GTHREAD_COMPILE_IMPL_DEFINES. Also add -D_POSIX4A_DRAFT10_SOURCE
4375 to G_THREAD_CFLAGS. Really deploy GTHREAD_COMPILE_IMPL_DEFINES,
4376 when searching for thread libs. Look for sched_* functions in
4377 -lrte as well. All of that is necessary on DG/UX.
4379 * configure.in: Use AC_TRY_COMPILE instead of AC_EGREP_HEADERS in
4380 various places to make it work more reliable, to make it accept
4381 macros instead of functions etc.
4383 * configure.in: Replace some NULL's for checks with 0 to make it
4384 work without stdio.h everywhere.
4386 * configure.in, gutils.c: changed the test for getpwuid_r to first
4387 test for a posix version and then for a non-posix version. No code
4388 change in gutils.c. Again this change deals better with getpwuid_r
4389 being a macro and not a function. Most of the above with kind help
4390 from Tethys <tet@isengard.europe.dg.com>. This fixes Bug #13403.
4392 2000-11-14 Tor Lillqvist <tml@iki.fi>
4394 * gwin32.h: Make #endif comment match #ifdef.
4396 Mon Nov 13 14:00:20 2000 Owen Taylor <otaylor@redhat.com>
4398 * configure.in: Up version to 1.3.2
4400 * gconvert.h (enum GConvertError): Remove trailing ,
4402 * gfileutils.c (g_file_open_tmp): Fix comment to
4403 properly describe return value.
4405 2000-11-13 Tor Lillqvist <tml@iki.fi>
4407 * config.h.win32.in: Add USE_LIBICONV.
4409 * gconvert.c: Check G_OS_WIN32 only after including glib.h.
4413 2000-11-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4415 * gthread.c (g_static_rec_mutex_*): Made recursive mutexes also
4416 work when the thread system is not (yet) initialized.
4418 Sun Nov 12 18:34:32 2000 Owen Taylor <otaylor@redhat.com>
4420 * gconvert.[ch]: Create wrapper functions for iconv()
4421 so that we can transparently use the native iconv,
4422 libiconv, or (in the future) a mini-iconv included
4425 * glib-config-2.0.in glib-2.0.pc.in: Include @ICONV_LIBS@
4427 * INSTALL: Added note about libiconv.
4429 * configure.in: Add checks for libiconv from pango. If
4430 EILSEQ is not defined in errno.h add define for it into
4431 glibconfig.h so g_iconv can use it. (Note, recompiling
4432 from a system without EILSEQ to a system with EILSEQ
4433 will break binary compatibility)
4435 2000-11-12 Robert Brady <robert@suse.co.uk>
4437 * gstrfuncs.c, gstrfuncs.h: Remove g_filename_{to,from}_utf8
4439 * gconvert.c, gconvert.h: Add g_filename_{to,from}_utf8 and
4440 g_locale_{to.from}_utf8. The locale_ variant honours
4441 nl_langinfo(CODESET), the filename_ variant uses UTF-8 unless
4444 (g_convert): Add G_CONVERT_ERROR_PARTIAL_INPUT error, if bytesread
4445 != length and no bytesread pointer passed.
4447 Sun Nov 12 15:29:53 2000 Owen Taylor <otaylor@redhat.com>
4449 * gfileutils.[ch]: template is a reserved word in
4450 C++ s/template/tmpl/.
4452 2000-11-11 Havoc Pennington <hp@pobox.com>
4454 * gmarkup.c (g_markup_parse_context_parse): Handle a long stream
4455 of bytes containing no UTF-8 character starts
4457 2000-11-11 Tor Lillqvist <tml@iki.fi>
4459 * glib.def: Add missing entry points.
4461 * gfileutils.c (g_mkstemp): Improve chance to generate unique
4462 names with less effort a bit.
4464 * gfileutils.h: Add g_file_open_tmp() declaration.
4466 * testglib.c: Include <io.h> on Win32.
4468 * makefile.mingw.in: Correct the way to invoke sub-makes.
4470 Sun Nov 5 13:20:54 2000 Owen Taylor <otaylor@redhat.com>
4472 * glib-object.h: Add gtypemodule.h
4474 2000-11-11 Tor Lillqvist <tml@iki.fi>
4476 * gfileutils.c (g_file_open_tmp): New function, suggested by Havoc
4478 (g_mkstemp): Use only one case for letters in temp file name, as
4479 this will be used on systems with case-insensitive file systems.
4481 * testglib.c (main): Test g_mkstemp() and g_file_open_tmp().
4483 2000-11-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4485 * gthreadpool.c: Don't take other threads with other priorities
4486 into account as changing the priority is highly
4487 unportable. (Actually using it at all already is unportable, but
4488 even sometimes where that works, changing priority is not
4491 2000-11-05 Havoc Pennington <hp@pobox.com>
4493 * gmarkup.h: rename G_MARKUP_FOO to
4494 G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG
4496 * gmarkup.c: don't start doc comments with "Returns"
4498 2000-11-05 Havoc Pennington <hp@pobox.com>
4500 * gmarkup.c: inline docs
4501 (unescape_text): properly check strtoul for failure.
4503 * gerror.c (g_propagate_error): Free the src error if the dest
4504 location is NULL - I'm pretty sure that's what this function was
4507 2000-11-05 Havoc Pennington <hp@pobox.com>
4509 * gutils.c (g_find_program_in_path): cleanup docs, sync param
4510 names to those in the header
4512 * gfileutils.c (g_mkstemp): clean up docs
4514 * gshell.h: sync param names with param names in .c file
4516 * gfileutils.h (enum GFileTest): remove trailing comma from last
4517 member, confuses gtk-doc
4519 * gmarkup.h: s/GMarkupErrorType/GMarkupError/g; to follow
4522 2000-11-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4524 * gasyncqueue.c: Added documentation for asyncronous queues.
4526 * gspawn.c: Include sys/select.h (some platforms need it for
4529 * gspawn.c: Changed unportable __FUNCTION__ to the verbatim
4532 2000-10-31 Tor Lillqvist <tml@iki.fi>
4537 * gfileutils.h: Actually, g_mkstemp() is better suited in gfileutils.
4539 2000-10-30 Tor Lillqvist <tml@iki.fi>
4541 * configure.in: Check for mkstemp.
4543 * gutils.c (g_mkstemp): New function. If HAVE_MKSTEMP, just call
4544 it, otherwise use code lifted from glibc.
4546 * gutils.h: Declare it.
4548 * glib.def: Here, too. Plus two missing functions.
4550 2000-10-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4552 * gcache.h, gcache.c, ghash.h, ghash.c, grel.c, grel.h, gtypes.h:
4553 Introduced new function type GEqualFunc to return TRUE for equal
4554 params. This is now used instead of GCompareFunc (which should
4555 work akin to strcmp) here. This kind of fixes Bug #14412. Note
4556 that technically GCompareFunc and GEqualFunc are still the same
4557 types, as gint == gboolean.
4559 * ghash.h, gutils.c: g_int_equal and g_direct_equal now return
4560 gboolean to be really become GEqualFunc.
4562 * gscanner.c, testglib.c, tests/hash-test.c: Some tiny changes to
4563 follow the above change.
4565 2000-10-27 Tor Lillqvist <tml@iki.fi>
4567 * makefile.{mingw,msc}.in (glib_OBJECTS): Add gmarkup.
4569 * glib.def: Add missing functions.
4571 * tests/makefile.{mingw,msc}.in (TESTS): Add markup-test.
4573 2000-10-24 Havoc Pennington <hp@pobox.com>
4575 * gmarkup.h, gmarkup.c: New module to parse a simple
4578 * Makefile.am: add gmarkup.h, gmarkup.c
4580 * tests/Makefile.am: add markup-test
4582 * gstring.h (g_string_new_len): new function to create a string
4584 (g_string_new): avoid a gratuitous realloc
4586 2000-10-26 Tor Lillqvist <tml@iki.fi>
4588 * makefile.{mingw,msc}.in: Cosmetics.
4590 2000-10-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4592 * gstrfuncs.c (g_strsplit): When the string is ended by a
4593 delimiter, return an extra empty string just like for a delimiter
4594 at the start of the string. This makes the function behave more
4595 consistent and also fixes Bug #15026.
4597 Tue Oct 24 22:09:14 2000 Tim Janik <timj@gtk.org>
4599 * glib-object.h: added newly added gobject/ headers.
4601 * gmesage.c: print g_message() output to stderr instead of stdout.
4603 2000-10-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4605 * configure.in: Use one = instead of two, which is plainly wrong.
4607 2000-10-19 Tor Lillqvist <tml@iki.fi>
4609 * makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
4613 * gfileutils.c: Make them compile with picky MSVC.
4615 * gwin32.h: New file. Move Win32-only stuff that isn't related to
4616 GIOChannels here from giochannel.h.
4618 * Makefile.am: Add it here.
4620 * giochannel.h: Move stuff to gwin32.h.
4622 * glib.h: On Win32, include gwin32.h.
4624 Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
4626 * glib.h convert.c (g_convert_with_fallback): Change
4627 ERROR_OTHER to ERROR_FAILED, add some dummy marking with _().
4629 * docs/reference/glib/glib-sections.txt
4630 docs/reference/glib/glib-docs.sgml Update for g_convert,
4633 2000-10-16 Tor Lillqvist <tml@iki.fi>
4635 * glibconfig.h.win32.in: Remove alloca stuff from here. galloca.h
4636 takes care of it, correctly.
4638 * giowin32.c (reader_thread): Some more debugging output.
4639 (g_io_channel_win32_poll): Remove unused vars.
4641 * gfileutils.c: Changes for Win32, with no unistd.h and no
4644 * gspawn-win32.c: Implementation of the g_spwan_* functions for
4645 Win32. Due to the general non-Unixness of Win32, much of the
4646 functionality that is relatively clean to implement on Unix, is
4647 hard to do on Win32. We must use a separate helper program to
4648 change directory, close extra file descriptors, redirect the std
4649 ones, as needed, and only then start the child process. No child
4650 process pid can be returned, unfortunately. Or if we used
4651 CreateProcess directly, it probably could. (Now we use the spawnv*
4652 functions from msvcrt.)
4654 * Makefile.am (EXTRA_DIST): Add gspawn-win32.c
4656 * glib.def: Add new entry points.
4659 * giowin32.c: Remove g_io_channel_win32_wait_for_condition(),
4660 g_io_channel_win32_poll() subsumes it.
4662 * gbacktrace.h: G_BREAKPOINT for MSVC (on the ix86).
4664 * gwin32.c (g_win32_getlocale): Use "sp" for
4665 LANG_CROATIAN+SUBLANG_SERBIAN_LATIN.
4667 * makefile.{mingw,msc}.in (glib_OBJECTS): Add new files.
4668 Add gspawn-win32-helper.exe rule.
4670 * tests/makefile.{mingw,msc}.in (TESTS): Add shell-test and
4673 * tests/spawn-test.c: (run_tests): On Win32, don't try to run
4674 /bin/sh, but ipconfig (no special significance in choosing that,
4675 just a program that outputs something to stdout).
4677 2000-10-15 Raja R Harinath <harinath@cs.umn.edu>
4679 Remove need for acconfig.h, and misc. cleanups.
4680 * acglib.m4 (GLIB_SIZEOF): Add 'autoheader' comment to
4682 (GLIB_BYTE_CONTENTS): Likewise.
4684 * configure.in: Add 'autoheader' comments to all AC_DEFINE(...)
4685 and AC_DEFINE_UNQUOTED(...) lines.
4686 Replace AC_MSG_CHECKING/AC_CACHE_VAL with AC_CACHE_CHECK.
4687 (AM_PROG_LIBTOOL): Move after AC_PROG_CC.
4689 * acconfig.h: Empty out.
4691 * Makefile.am (BUILT_EXTRA_DIST): New variable. List 'dist'able
4692 files that are created in the builddir.
4693 (dist-hook): Handle those files.
4694 (libglib_1_3_la_SOURCES): Remove @ALLOCA@. @ALLOCA@ should only
4695 be used in an _LDADD or _LIBADD, since it expands (if necessary)
4698 * tests/Makefile.am (BUILT_EXTRA_DIST): New variable.
4699 (dist-hook): Handle $(BUILT_EXTRA_DIST).
4701 2000-10-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4703 * grand.c: Added inline documentation.
4705 * gtypes.h, gnode.h, gutils.h: Readded GFreeFunc,
4706 g_node_insert_after and g_find_program_in_path resp., which
4707 mysteriously disappeared during the glib.h dissection.
4709 2000-10-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4711 * glibconfig.h.win32.in: Adapted accordingly to header separation
4712 and GLIB_HAVE_ALLOCA_H renaming.
4714 * Makefile.am: Added the new headers to glibinclude_HEADERS.
4716 * glib.h: Forgot to include gerror.h.
4718 * glib.h, galloca.h, garray.h, gasyncqueue.h, gbacktrace.h,
4719 gcache.h, gcompletion.h, gconvert.h, gdataset.h, gdate.h, ghash.h,
4720 ghook.h, giochannel.h, glist.h , gmacros.h, gmain.h, gmem.h,
4721 gmessages.h, gnode.h, gprimes.h, gquark.h, gqueue.h, grand.h,
4722 grel.h, gscanner.h, gslist.h, gstrfuncs.h, gstring.h, gthread.h,
4723 gthreadpool.h, gtimer.h, gtree.h, gtypes.h, gutils.h: Split glib.h
4724 into many header files mostly according to the resp. *.c-files.
4726 * gmacros.h: Added G_BEGIN_DECLS and G_END_DECLS to mean: 'in case
4727 of C++: extern "C" { ... }' analogous to glibc __BEGIN_DECLS and
4730 * configure.in, gerror.h, gfileutils.h, gshell.h, gspawn.h,
4731 gunicode.h, : Changed guard-macro names to something more
4734 * configure.in, *.h: Use G_BEGIN_DECLS and G_END_DECLS.
4736 * configure.in: Defined GLIB_HAVE_ALLOCA_H instead of including
4737 alloca.h in glibconfig.h, GLIB_HAVE_ALLOCA_H is used in glib.h.
4739 * configure.in: Removed cruft from old threading code.
4741 2000-10-09 Raja R Harinath <harinath@cs.umn.edu>
4743 Work with beta autoconf 2.50.
4744 * configure.in (GLIB_MAJOR_VERSION): Use GLIB_DIVERT_BEFORE_HELP
4745 instead of AC_DIVERT_PUSH(),AC_DIVERT_POP.
4746 (AC_CHECK_HEADERS): Remove redundant AC_DEFINE(HAVE_...).
4747 (REALLOC_0_WORKS): Move AC_DEFINE outside AC_CACHE_VAL.
4748 (dlopen): Quote nested AC_CHECK_... calls.
4750 * acglib.m4 (GLIB_TR_SH, GLIB_TR_CPP): Utility macros copied from
4752 (GLIB_DIVERT_BEFORE_HELP): New macro that works both with autoconf
4753 2.13 and beta autoconf 2.50.
4754 (GLIB_SIZEOF, GLIB_BYTECONTENTS): Use GLIB_TR_*.
4756 * Makefile.am (CONFIGURE_DEPENDENCIES): Use this to specify
4757 that 'configure' depends on acglib.m4.
4759 2000-10-09 Havoc Pennington <hp@redhat.com>
4761 * Makefile.am, tests/Makefile.am: Add new files.
4763 * tests/spawn-test.c, tests/shell-test.c: new tests for
4764 the shell/spawn stuff
4766 * gutils.c (g_find_program_in_path): convert a relative
4767 program name into an absolute pathname to an existing
4770 * gspawn.h, gspawn.c: New fork/exec API
4772 * gshell.h, gshell.c: Shell-related utilities, at the moment
4773 simply routines to parse argv and quote/unquote strings
4775 * guniprop.c (g_unichar_isspace): Return TRUE for the
4776 ASCII space characters isspace() returns TRUE for.
4778 * gfileutils.c (g_file_get_contents): Convenience function
4779 to slurp entire file into a string and return it. Partially
4780 written by Joel Becker.
4781 (g_file_test): file test function
4783 2000-10-06 Tor Lillqvist <tml@iki.fi>
4785 * makefile.msc.in: Revamp to be like makefile.mingw.in, make
4786 the MSVC build actually work again.
4788 * gmodule/makefile.msc.in
4789 * gobject/makefile.msc.in
4790 * gthread/makefile.msc.in: New files, like their mingw counterparts.
4792 * gmodule/Makefile.am
4793 * gobject/Makefile.am
4794 * gthread/Makefile.am: Make and distribute them.
4796 * */makefile.mingw.in: Allow override of GLib version number from
4797 the build/win32/module.defs file.
4799 * glib.def: Add new entry point.
4801 * tests/gio-test.c (main): Fix the Win32-only code to use current
4802 API, g_io_channel_win32_make_pollfd() and g_io_channel_win32_poll().
4804 Fixes from Hans Breuer:
4806 * glib.h (struct DIR): Keep the last readdir result cached inside
4807 the DIR struct, to enable several DIRs being open simultaneously.
4809 * gwin32.c (g_win32_readdir): Use the above instead of static.
4811 * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
4814 2000-10-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4816 * glib.h: Changed alloca stuff a bit: when we have a working
4817 alloca.h, we're not messing with alloca any further. Should fix a
4818 bug reported by Bernd Demian <wega@csc-dd.de>.
4820 2000-09-29 Jonathan Blandford <jrb@redhat.com>
4822 * gnode.c (g_node_insert_after): Added function to keep symmetry
4823 with g_node_insert_before.
4825 2000-09-29 Martin Baulig <baulig@suse.de>
4827 Several minor ANSI C fixes.
4829 Added missing casts:
4830 * gdate.c (g_date_fill_parse_tokens): `s = (guchar *) str'.
4831 * gmain.c (g_idle_dispatch): `func = (GSourceFunc) source_data'.
4832 (g_idle_add_full): `(gpointer) function' in call to g_source_add().
4833 * gstrfuncs.c (g_strdown): `s = (guchar *) string' and
4834 `return (gchar *) string'.
4835 (g_strup): Likewise.
4836 (g_strchug): `start = (guchar*) string' in 1st for() argument;
4837 `strlen ((gchar *) start)' in call to g_memmove().
4838 * gstring.c (g_string_down): `s = (guchar *) string->str'.
4839 (g_string_up): Likewise.
4840 * gthreadpool.c (stop_this_thread_marker):
4841 `(gpointer) &g_thread_pool_new'.
4842 * gunidecomp.h (decomp_table[]): Cast all the strings to
4845 Put text following #endif into comments:
4848 2000-09-29 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4850 * configure.in, glib.h: Added errorcheck mutexes. These are
4851 activated through the preprocessor symbol
4852 G_ERRORCHECK_MUTEXES. Need to add an extra word to StaticMutex in
4853 order to achieve this. g_(static_)mutex_* functions instrument the
4854 mutex operations with mutex name and location, when compiled with
4855 -DG_ERRORCHECK_MUTEXES. g_thread_init activates the errorcheck
4856 mutexes, when compiled with -DG_ERRORCHECK_MUTEXES.
4858 2000-09-28 Havoc Pennington <hp@pobox.com>
4860 * glib.h (GThreadPriority): fix indentation
4861 (GConvertError): generic error is conventionally called
4862 _FAILED rather than _OTHER, at least at the moment,
4863 according to GError docs in docs/reference.
4865 * gconvert.c: s/_OTHER/_FAILED/
4867 2000-09-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4869 * configure.in: Adjusted the test for an unimplemented
4870 getpwuid_r. Info from Michael Pruett. This is just a forward
4871 merge from glib-1-2.
4873 * configure.in: Moved determination of G_THREAD_FLAGS before
4874 G_THREAD_LIBS. Check for UnixWare systems and set the right cflags
4875 and libs there (it needs -Kthread for the native compiler and
4876 -pthread for gcc). Thanks to Boyd Lynn Gerber <gerberb@zenez.com>
4879 * configure.in: Fail immediately, when no thread library is found,
4880 instead of continuing searching for rt libs etc. Changed almost
4881 all occurances of $enable_threads to $have_threads, as that's,
4884 * tests/threadpool-test.c: Define vars inside the guard to avoid
4887 * configure.in, tests/type-test.c: Some platforms support 64 bit
4888 'long long', but you can not printf or scanf them. In that case,
4889 don't define G_G{UINT|INT}64_FORMAT. Changed the type-test program
4892 * gutils.c (g_get_current_dir): max_len can't be initialized
4893 statically as it might call a function. So do it at first call.
4895 Tue Sep 26 2000 Elliot Lee <sopwith@redhat.com>
4897 * glib.h: Add G_GNUC_PURE macro (but don't use it anywhere).
4899 Mon Sep 25 2000 Elliot Lee <sopwith@redhat.com>
4901 * garray.c, glib.h, gmem.c: Add a few missing G_GNUC_CONST's.
4903 2000-09-21 Tor Lillqvist <tml@iki.fi>
4905 * makefile.mingw.in: Add gconvert.o. Use libiconv.
4907 * config.h.win32.in: Define HAVE_GETCWD.
4909 * glib.def: Add new entry points.
4911 2000-09-21 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4913 * configure.in: The last released automake (1.4) still requires
4914 AM_PROG_LIBTOOL instead of AC_PROG_LIBTOOL, so use that for the
4917 2000-09-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4919 * acconfig.h, configure.in, gutils.c: Test for the existence of
4920 getcwd, and use it only when found.
4922 * glib.h: Only use the gcc-variable-macro-argument-extension for
4923 gcc >= 2.4. Both patches from Jonas Oberg <jonas@gnu.org>.
4925 Mon Sep 18 10:58:21 2000 Owen Taylor <otaylor@redhat.com>
4927 * gutf8.c: Implement g_ucs4_to_utf8 which was in
4928 the header file but not implemented.
4930 Sun Sep 17 2000 Elliot Lee <sopwith@redhat.com>
4932 * glib.h configure.in: Define g_alloca() as an
4933 alloca-that-works-anywhere.
4935 * gconvert.c: Fix warnings which could have caused problems on
4938 Sun Sep 10 12:37:40 2000 Owen Taylor <otaylor@redhat.com>
4940 * glib.h gconvert.c (g_convert): Havoc Pennington's implementation
4941 of convenient character set conversion using iconv, with
4942 the addition of GError. We probably need a fallback that
4943 just does conversions between, say UTF-8,16,32 and ISO-8859-1
4944 for targets without iconv at all.
4946 Also add g_convert_with_fallback() to take care of conversions
4947 where we accept some loss going to the target encoding.
4949 2000-09-10 Havoc Pennington <hp@redhat.com>
4951 * gutf8.c (g_utf8_validate): Add this function.
4953 Sat Sep 9 18:50:42 2000 Owen Taylor <otaylor@redhat.com>
4955 * gstrfuncs.c (g_strescape): Add a missing g_return_if_fail().
4957 Mon Aug 21 03:57:46 2000 Tim Janik <timj@gtk.org>
4959 * glib.h (G_BREAKPOINT): for non-i386 and non-alpha, or non gcc,
4960 implement BREAKPOINT() as raise (5 /* SIGTRAP */);
4962 * glib.h: provide user-definable switch G_IMPLEMENT_INLINES,
4963 to turn on compilation of inline function implementations provided
4964 in header files with extern linkage.
4965 wrap inline function implementations into ifdef __G_UTILS_C__, so we
4966 really only compile them for gutils.c and not also into arbitrary user
4967 code that wants to make use of G_IMPLEMENT_INLINES.
4968 adjusted comment apropriately.
4970 * gutils.c: to turn on compilation of inline functions, provide
4971 #define G_IMPLEMENT_INLINES 1 and #define __G_UTILS_C__.
4973 2000-09-06 Havoc Pennington <hp@redhat.com>
4977 * docs/reference/glib/tmpl/error_reporting.sgml: docs
4979 Wed Sep 6 10:28:34 2000 Owen Taylor <otaylor@redhat.com>
4981 * guniprop.c gunicode.h gutf8.c: Some inline docs fixes.
4983 2000-09-06 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4985 * glib.h, gtimer.c, tests/thread-test.c:
4986 s/G_MICROSEC/G_USEC_PER_SEC/
4988 * glib.h: Removed G_G{U}{SHORT|INT|LONG}_FORMAT from glib.h, as
4989 they are really superfluous.
4991 Tue Sep 5 20:16:27 2000 Owen Taylor <otaylor@redhat.com>
4993 * configure.in docs/Makefile.am: Add gtk-doc checks
4994 for newly added docs/reference/ subdir.
4996 2000-09-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4998 * gthread.c (g_thread_error_quark): Don't use a G_LOCK, as it
5001 2000-09-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5003 * gstring.c (g_string_free): Use g_return_val_if_fail instead of
5004 g_return_if_fail, as the function now is supposed to return
5007 * gerror.c, gerror.h (g_propagte_error): Added function
5008 g_propagte_error to hand over local errors to the calling
5011 * glib.h: Include gerror.h before it is used for some g_thread_*
5014 * gthread.c, gthreadpool.c, glib.h: Enable error reporting for
5015 thread creation, namely for g_thread_create, g_thread_pool_new,
5016 g_thread_pool_push and g_thread_pool_set_max_threads.
5018 * tests/thread-test.c, tests/threadpool-test.c: Adapted
5021 2000-08-31 Tor Lillqvist <tml@iki.fi>
5025 * giowin32.c (g_io_channel_win32_make_pollfd): New function, to
5026 make a GPollFD from a GIOChannel. Creates the events and starts
5027 the reader thread if necessary.
5030 * giowin32.c (g_io_channel_win32_poll): No use for separate
5031 condition parameter.
5033 * gmain.c (g_get_current_time): (Win32): Simplify, use
5034 GetSystemTimeAsFileTime().
5036 2000-08-27 Tor Lillqvist <tml@iki.fi>
5038 * giowin32.c (g_io_channel_win32_poll): New function, otherwise
5039 like g_io_channel_win32_wait_for_condition(), but accept several
5041 (g_io_channel_win32_wait_for_condition): Call
5042 g_io_channel_win32_poll().
5044 * glib.h: Declare g_io_channel_win32_poll().
5046 * gwin32.c (g_win32_error_message): Don't believe return value
5049 2000-08-25 Elliot Lee <sopwith@redhat.com>
5051 * glib.h, gunicode.h, gmodule/gmodule.h:
5052 Mark the following functions G_GNUC_CONST (to allow optimization)
5053 because their results are a function of only their parameters:
5054 g_int_hash, g_int_equal, g_direct_hash, g_direct_equal,
5055 g_quark_to_string, g_date_is_leap_year, g_date_days_in_month,
5056 g_date_monday_weeks_in_year, g_date_sunday_weeks_in_year,
5057 g_spaced_primes_closest, g_unichar_is*, g_unichar_to*,
5058 g_unichar_*digit_value, g_unichar_type
5060 2000-08-21 Elliot Lee <sopwith@redhat.com>
5062 * gobject/Makefile.am, gobject/gobject-query.c,
5063 gobject/gparamspecs.c: Fix inclusion of config.h
5065 Mon Aug 21 14:46:23 2000 Owen Taylor <otaylor@redhat.com>
5067 * tests/gio-test.c: Fix a couple of trivial bugs that
5068 were causing warnings.
5070 Mon Aug 21 14:39:36 2000 Owen Taylor <otaylor@redhat.com>
5072 * glib.h: Use C99 varargs macros where possible
5073 (check __STDC_VERSION__), otherwise, on gcc, use an alternate
5074 form of gcc varargs which is more likely
5075 to be supported going forward. (Based on some code
5078 2000-08-17 Darin Adler <darin@eazel.com>
5081 * garray.c: (g_array_free), (g_ptr_array_free),
5082 (g_byte_array_free): Return the data left behind.
5083 * gstring.c: (g_string_free): Return the data left behind.
5085 Changed the free calls that leave data behind so they
5086 return a pointer to the left-behind data, NULL if told not
5087 to leave anything behind. This makes these calls easier
5088 to use correctly, without any incompatible API change for
5089 callers that don't know about the return value. Of course,
5090 it would be even clearer if the free calls weren't dual-purpose
5093 2000-08-12 Tor Lillqvist <tml@iki.fi>
5095 * giowin32.c: Some indentation and spacing fixes. Add some more
5097 (g_io_win32_add_watch): New function, with common code from
5098 g_io_win32_fd_add_watch and g_io_win32_sock_add_watch. Don't start
5099 more than one reader thread for a GIOChannel. We should obviously
5100 have just one reader thread reading a file descriptor or socket.
5102 2000-08-10 Havoc Pennington <hp@redhat.com>
5104 * gthread-2.0.pc.in (Cflags): don't duplicate glib Cflags
5106 * gmodule-2.0.pc.in (Cflags): don't duplicate glib Cflags
5108 * gobject-2.0.pc.in (Cflags): don't duplicate Cflags from glib
5111 2000-08-10 Havoc Pennington <hp@redhat.com>
5113 * glib-2.0.pc.in (Cflags): Look in glib-2.0/include for
5116 2000-08-07 Tor Lillqvist <tml@iki.fi>
5118 * tests/gio-test.c (shutdown_source): New function, that calls
5119 g_source_remove(). Check return value of g_source_remove(), and
5120 decrement running subprocess counter only if g_source_remove()
5121 actually did remove the source.
5123 (recv_message): Call shutdown_source() on EOF condition. Return
5124 FALSE on G_IO_HUP and G_IO_ERR condition. Fix printf format typo.
5126 Sun Aug 6 20:06:02 2000 Tim Janik <timj@gtk.org>
5128 * gmessages.c (g_log_domain_check_free): keep *last updated while
5129 running through the domain list, so we don't screw up the removal,
5130 patch provided by Gady Kozma <gadykozma@hotmail.com>.
5132 Sun Aug 6 20:03:41 2000 Tim Janik <timj@gtk.org>
5134 * gmessages.c (g_log_remove_handler): keep *last updated while running
5135 through the handler list, so we don't screw up the removal.
5137 Sun Jul 30 16:54:13 2000 Owen Taylor <otaylor@redhat.com>
5139 * gunicode.h: Fix stray character
5141 * gutf8.c (g_unichar_to_utf8): Allow outbuf to be NULL, in
5142 which case we just compute the length.
5144 2000-07-31 Havoc Pennington <hp@redhat.com>
5146 * Makefile.am (EXTRA_DIST): forgot to add .pc.in to EXTRA_DIST
5148 2000-07-31 Havoc Pennington <hp@redhat.com>
5150 * glib-2.0.pc.in, gobject-2.0.pc.in, gmodule-2.0.pc.in,
5151 gobject-2.0.pc.in: pkg-config data files
5153 * Makefile.am: Install/dist the .pc files
5155 * configure.in: Output the .pc files
5157 2000-07-31 Tor Lillqvist <tml@iki.fi>
5159 * giowin32.c (buffer_read): The code didn't compile (must
5160 have been sleepy when committing). "return" instead of "break"
5162 (g_io_win32_fd_add_watch): Cannot check if the file descriptor is
5163 readable by calling ReadFile to read zero bytes. ReadFile blocks
5164 on NT even if trying to read nothing at all. So, don't check if
5165 file descriptor is readable; assume this function isn't called
5168 Sun Jul 30 10:44:16 2000 Tim Janik <timj@gtk.org>
5170 * gmain.c (g_get_current_time): fix tor's recent changes which
5171 got rid of a required variable in the non-windows path.
5173 2000-07-30 Tor Lillqvist <tml@iki.fi>
5175 Finally, a new and improved IO Channel and condition watch
5176 implementation for Win32. Based on code provided by Craig Setera.
5178 When watching file descriptors, for which there is no select()
5179 like functionality on Win32 that would work on all Win32 platforms
5180 for all types of file descriptors (including anonymous pipes), we
5181 start a new thread that blocks while trying to read from the file
5182 descriptor. When the read returns, a Win32 Event is signalled that
5183 the polling routine eventually notices. Meanwhile, the data being
5184 read is stored in a circular buffer, from where the IO channel's
5185 read() method picks it up.
5187 If the buffer fills up the reading thread has to wait for space
5188 becoming available. For this another Win32 Event is used. The IO
5189 Channel's read() method signals this when it has read some data
5192 The separate reader thread(s), and the circular buffer(s) with
5193 associated events mean lots of possibilities for fun parallelism
5194 errors. But it seems to work OK, i.e. GIMP runs.
5196 * gmain.c: Small changes to the Win32 polling function.
5197 (g_main_win32_get_poll_func): New function. Perhaps it would be a
5198 good idea to provide this on all platforms.
5200 * giowin32.c: The bulk of the new implementation.
5201 (g_io_channel_win32_wait_for_condition): New function. To be used
5202 where on Unix one does a select() on the channel's fd, like
5203 libgimp's gimp_extension_process(). Could be provided on all
5206 * glib.h: Update documentation for IO Channels on Win32. Remove
5207 the declarations for the as of now obsolete old functions related
5208 to IO Channels for pipes with "wakeup" messages.
5210 * glib.def: Some new functions.
5212 * tests/gio-test.c: New file, to test GIOChannel and main loop.
5215 * tests/makefile.mingw.in: Add it.
5217 (Later the same night:)
5219 * giowin32.c: Compile in the debugging code all the time, but only
5220 output debug messages if told so. Add (unadvertised) function to
5221 turn on/off debug messages for a channel.
5223 (buffer_read): Don't loop. It is expected behaviour to return a
5224 short read occasionally, for instance when reading from
5225 pipes. It's the calling code that should loop if it *knows* how
5226 much the writer has written.
5228 * tests/gio-test.c: Correct the program's name in the output.
5229 (recv_message): Loop calling g_io_channel_read() (in a new
5230 function read_all()) until we have all the bytes we want (that we
5231 know the writer has written/will write).
5233 Thu Jul 27 05:15:11 2000 Tim Janik <timj@gtk.org>
5235 * gstrfuncs.c (g_strlcpy, g_strlcat): completed tor's fix
5236 to cover both #ifdef branches.
5238 2000-07-26 Tor Lillqvist <tml@iki.fi>
5240 * gstrfuncs.c (g_strlcpy, g_strlcat): Return 0 on error, not NULL.
5242 * glib.def: Add g_strlcpy, g_strlcat.
5244 * glibconfig.h.win32.in: Add gsize and gssize.
5246 Wed Jul 26 12:59:31 2000 Tim Janik <timj@gtk.org>
5248 * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
5249 updates the license headers to the GNU Lesser General Public License,
5250 as well as updating the copyright year to 2000.
5252 Wed Jul 26 05:47:48 2000 Tim Janik <timj@gtk.org>
5257 * glib.h: added g_strlcat() and g_strlcpy() wrappers, supplied by
5258 David Wheeler <dwheeler@ida.org>:
5260 * glib.h, gstrfuncs.c: added g_strlcpy and g_strlcat to support
5261 safe manipulation of fixed-length string buffers.
5262 These functions were originally developed by Todd Miller to simplify
5263 development of security-related programs, and
5264 are available on many (but not all) Unix-like systems,
5265 including OpenBSD, FreeBSD, and Solaris. See
5266 ftp://ftp.openbsd.org/pub/OpenBSD/src/lib/libc/string/strlcpy.3
5267 and http://www.openbsd.org/security.html.
5268 If there's a strlcpy/strlcat on the system, it's called, otherwise
5269 an implementation is provided.
5271 * testglib.c: Added tests for g_strlcpy, g_strlcat.
5273 Wed Jul 26 05:03:24 2000 Tim Janik <timj@gtk.org>
5275 * acglib.m4 (GLIB_SIZEOF): include <stdlib.h> and <stddef.h> if
5276 STDC_HEADERS is defined.
5279 * glibconfig.h: define gsize and gssize in terms of GLIB_SIZEOF_SIZE_T
5281 * glib.h (g_return_if_reached): applied darin's fix for copy'n
5282 paste error in the macro implementation.
5284 Wed Jul 26 00:46:03 2000 Tim Janik <timj@gtk.org>
5286 * glib.h: applied patch from Darin Adler <darin@eazel.com> which
5287 supplies g_return_if_reached(), g_return_val_if_reached() and
5290 2000-07-22 Tor Lillqvist <tml@iki.fi>
5292 * build-dll: Fix resource handling, the resource file got left out
5293 from the DLL after all... Remove the WIN32APIHEADERS, not needed
5294 with current windres.
5296 * glib.def: Add new functions.
5298 2000-07-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5300 * gutils.c, glib.h: Mark the functions g_basename and g_dirname
5301 deprecated. They will issue an warning once, when compiled with
5302 G_ENABLE_DEBUG, but continue to work as before. Instead the
5303 functions g_path_get_basename and g_path_get_dirname should be
5304 used, which BOTH return newly allocated memory, that has to freed
5305 by g_free. The new g_path_get_basename now strips trailing slashes
5306 from the path. This fixes #5097. For discussion see
5307 http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
5309 * gwin32.c, testglib.c, tests/dirname-test.c: Use the new
5310 functions instead of the old ones.
5312 * ghash.c, gscanner.c, glib.h: Mark the functions
5313 g_hash_table_freeze, g_hash_table_thaw and thus
5314 g_scanner_freeze_symbol_table and g_scanner_thaw_symbol_table
5315 deprecated. They will issue an warning once, when compiled with
5316 G_ENABLE_DEBUG. This fixes Bug #3883. For discussion see
5317 http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
5319 2000-07-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5321 * configure.in, glib.h: glibconfig.h and glib.h now include files
5322 outside of the extern "C" block. Makes some C++ compiler
5323 happy. Reported by Denis Vakatov <vakatov@peony.nlm.nih.gov>.
5325 Sat Jul 15 23:49:03 2000 Owen Taylor <otaylor@redhat.com>
5327 * glib/glib.texi: Remove incomplete start of info file -
5328 real docs are in RDP.
5330 Sat Jul 15 22:44:22 2000 Owen Taylor <otaylor@redhat.com>
5332 * configure.in: Add build/Makefile and
5333 build/win32/Makefile to AC_OUTPUT() so things build
5336 Sat Jul 15 09:11:46 2000 Tim Janik <timj@gtk.org>
5338 * gstrfuncs.c (g_strncasecmp): fixed an off by 0 error (yeah,
5339 the function went off when the while (n--) loop failed due to
5340 n==0 ;), reported by Jean-Louis HAMEL <jlhamel@club-internet.fr>.
5342 2000-07-15 Tor Lillqvist <tml@iki.fi>
5344 * Makefile.am (SUBDIRS): Include the "build" module in GLib, too,
5345 to make it more self-contained. If your CVS client doesn't
5346 automatically get it, do a cvs get build in glib.
5348 * */makefile.mingw.in: Include make.mingw from build in the glib
5351 Fri Jul 14 16:26:35 2000 Owen Taylor <otaylor@redhat.com>
5355 Fri Jul 14 12:22:49 2000 Owen Taylor <otaylor@redhat.com>
5357 * configure.in Makefile.am glib-config.m4 glib.m4: Move
5358 glib-config to glib-config-2.0 move glib.m4 to
5361 * Makefile.am gobject/Makefile.am gmodule/Makefile.am
5362 gthread/Makefile.am tests/Makefile.am: Change
5363 library names to libglib-1.3.la, etc, so that we
5364 can distinguish glib-1.2 and glib-2.0 on the linkline.
5366 * Makefile.am gobject/Makefile.am gmodule/Makefile.am:
5367 Move include files into /usr/include/glib-2.0.
5369 Thu Jul 6 18:54:49 2000 Owen Taylor <otaylor@redhat.com>
5371 * docs/Makefile.am (EXTRA_DIST): Remove info files
5374 2000-07-14 Tor Lillqvist <tml@iki.fi>
5376 * glib.def: Add g_error functions.
5378 * makefile.mingw.in: Add gbacktrace.o.
5380 * gbacktrace.c: No need to include <process.h>.
5382 2000-07-12 Havoc Pennington <hp@redhat.com>
5384 * glib.h: #include <gerror.h>
5386 * Makefile.am (include_HEADERS): Add gerror.h
5387 (libglib_la_SOURCES): Add gbacktrace.c
5389 * gbacktrace.c: Move g_on_error_query() in here (moved on the
5390 server, so history is preserved)
5392 * gerror.h: GError interface
5394 * gerror.c: GError implementation replaces stuff that's now in
5397 Sun Jul 9 21:20:45 2000 Owen Taylor <otaylor@redhat.com>
5399 * gunicode.h: Include stddef.h instead of stdlib.h
5401 2000-07-08 Tor Lillqvist <tml@iki.fi>
5403 * glib.h (GLIB_VAR): Rename the GUTILS_C_VAR macro to GLIB_VAR.
5405 * gunicode.h: Mark the g_utf8_skip array with GLIB_VAR.
5407 * glib.def: Add two missing entry points.
5409 Thu Jul 6 15:35:28 2000 Owen Taylor <otaylor@redhat.com>
5413 * Makefile.am (EXTRA_DIST): Dist fixes.
5415 * configure.in: Moderate the warnings just a little bit.
5417 2000-07-05 Tor Lillqvist <tml@iki.fi>
5419 * README.win32: Update.
5421 Mon Jul 3 17:58:02 2000 Owen Taylor <otaylor@redhat.com>
5423 * gutf8.c (g_utf8_get_charset_internal): Fix up
5424 to correspond to configure.in checks.
5426 Mon Jul 3 17:18:19 2000 Owen Taylor <otaylor@redhat.com>
5428 * glib.h: Comment g_get_codeset() out of the header file
5429 temporarily. (Very similar to g_get_charset(), need
5430 to resolve the two.)
5432 2000-07-01 Tor Lillqvist <tml@iki.fi>
5434 * glib.def: Add new entry points.
5436 * makefile.{mingw,msc}.in: Add the new Unicode object files.
5438 Thu Jun 29 15:57:28 2000 Owen Taylor <otaylor@redhat.com>
5442 * Makefile.am: added snapcheck target to go along with snapshot
5444 * gstring.c glib.h (g_string_hash): Add g_string_hash to
5445 go along with g_string_equal.
5447 Tue Jun 27 12:40:23 EDT 2000 David A. Wheeler <dwheeler@dwheeler.com>
5449 * glib.h: Added g_string_equal for comparing GStrings;
5450 changed g_str_equal so it returns gboolean (instead of gint).
5452 * gstring.c: Modified GString implementation to support embedded
5453 ASCII NUL ('\0') characters, and implemented g_string_equal.
5455 * testglib.c tests/string-test.c: Added tests for g_string_equal
5456 and tests for proper handling of embedded ASCII NUL characters.
5458 Wed Jun 28 22:52:00 2000 Owen Taylor <otaylor@redhat.com>
5460 * Makefile.am (libglib_la_SOURCES): Fix
5461 gunichartable.h => gunichartables.h. (From Eric Limings)
5463 Fri Jun 23 17:20:26 2000 Tim Janik <timj@gtk.org>
5465 * glib.h: define gstring in terms of gchar*. this typedef reflects
5466 the type name of the primitive G_TYPE_STRING in the gobject module.
5468 Wed Jun 21 12:09:03 2000 Owen Taylor <otaylor@redhat.com>
5470 * gunicode.h gutf8.c guniprop.c gunidecomp.[ch] gunichartables.h
5471 Makefile.am glib.h: Initial pass at adding unicode support
5472 functions. A few things still need to be implemented, a bit
5473 of cleanup needs to be done, tests need to be added, and
5474 the docs need to be finished, but this should allow replacing
5475 most or all use of libunicode.
5477 2000-06-06 Tor Lillqvist <tml@iki.fi>
5479 * giowin32.c (g_io_channel_win32_pipe_readable): If we are
5480 watching the same pipe for different conditions (with different
5481 callbacks), check them all. Only call the callback for G_IO_IN
5482 from here. (This bug popped up when a watch for G_IO_ERR|G_IO_HUP
5483 was added to gimplib.)
5485 2000-05-30 Tor Lillqvist <tml@iki.fi>
5487 * gutils.c (g_locale_get_codeset): Implement on Win32.
5489 * glib.def: Add g_get_codeset.
5491 * tests/Makefile.am (EXTRA_DIST): makefile.cygwin* has been
5492 renamed to makefile.mingw*.
5494 Tue May 30 16:01:32 2000 Owen Taylor <otaylor@redhat.com>
5496 * glib.h gutils.c: Move the g_locale_get_codeset() up in the
5497 header file to correspond to to comments about memory
5498 management. Rename to g_get_codeset() to avoid
5499 polluting the g_locale_* namespace, which probably
5500 would have g_locale_get_codeset (GLocale *locale).
5503 Mon May 29 14:10:35 2000 Owen Taylor <otaylor@redhat.com>
5505 * gutils.c (g_locale_get_codeset): Add function to get the
5506 codeset name for the current locale.
5508 * configure.in acconfig.h: Add check for nl_langinfo(CODESET);
5510 Fri May 19 11:39:29 2000 Tim Janik <timj@gtk.org>
5512 * gutils.c (g_snprintf):
5513 (g_vsnprintf): added argument assertments.
5515 * gstring.c (g_string_assign): added argument assertments.
5516 (g_string_truncate): make len a guint.
5518 Fri May 19 09:00:44 2000 Tim Janik <timj@gtk.org>
5520 * gmem.c (g_free): fixed SIZEOF_LONG==4 assumption with
5521 ENABLE_MEM_CHECK, from Art Haas <ahaas@neosoft.com>.
5523 * gslist.c (g_slist_reverse): shut up compiler.
5525 * gscanner.c (g_scanner_get_token_ll): removed inline assignment.
5527 * garray.c: remove index>=0 checks for unsigned indices.
5529 * gmain.c (g_idle_prepare): timeout assignment fix.
5531 * gtree.c (g_tree_node_rotate_right): shut up compiler.
5533 2000-05-13 Tor Lillqvist <tml@iki.fi>
5536 * tests/makefile.mingw.in
5537 * build-dll: Rename makefile.cygwin(.in) to
5538 makefile.mingw(.in), which better describes what it is. Move the
5539 build of gmodule, gthread and gobject DLLs to makefiles in those
5540 directories. Move resource file handling and build number bump to
5541 build-dll, where it sits much cleaner.
5544 * Makefile.am (EXTRA_DIST): Update accordingly.
5546 * glib.h: Add G_PI, G_PI_2, G_PI_4, G_E, G_LN2, G_LN10 and
5547 G_SQRT2. M_PI etc aren't necessarily in <math.h> in strict ISO C
5550 * glib.def: Add g_strcanon.
5552 * gtree.c (g_tree_node_rotate_left): Remove unused variables.
5554 * gwin32.c (g_win32_opendir): Remove unneeded statement.
5556 Thu May 4 02:04:46 2000 Tim Janik <timj@gtk.org>
5558 * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
5559 broken and require an empty arg, give it to them.
5561 Fri Apr 28 23:54:35 2000 Tim Janik <timj@gtk.org>
5563 * setup things for a new sub-library libgobject:
5565 * Makefile.am (SUBDIRS): added gobject
5567 * glib-config.in: feature -lgobject.
5569 * configure.in (AC_OUTPUT): generate gobject/Makefile.
5571 * glib.m4 (AM_PATH_GLIB): feature gobject module.
5573 * glib.spec.in: added %{prefix}/lib/libgobject-1.3.so.*
5575 Fri Apr 28 21:41:49 2000 Tim Janik <timj@gtk.org>
5577 * glib.h: added G_STRLOC macro.
5578 G_STRUCT_OFFSET(): signedness corrections.
5579 (G_CSET_DIGITS): list 0-9.
5580 * gscanner.c (g_scanner_config_template): use G_CSET_DIGITS.
5586 (g_strreverse): return the modified string instead of void, so
5587 calls to these functions can be nested.
5588 (g_strcanon): new function, canonicalizes string according to
5589 a given character set.
5591 Fri Apr 28 19:45:16 2000 Tim Janik <timj@gtk.org>
5593 * gasyncqueue.c (g_async_queue_unref): get rid of an unused variable.
5595 Wed May 10 19:52:44 2000 Owen Taylor <otaylor@redhat.com>
5597 * glib.m4: Print found version when test succeeds.
5599 2000-05-04 Tor Lillqvist <tml@iki.fi>
5601 * makefile.cygwin.in
5602 * tests/makefile.cygwin.in: Include the common makefile snippet
5603 from ../build/win32.
5605 Maybe CVSROOT/modules should be changed so that the 'build' module
5606 is included within the glib module (and gtk+, and gimp, and maybe
5607 others later), in the same way as the 'macros' module is included
5608 in lots of GNOME CVS modules?
5610 2000-05-02 Tor Lillqvist <tml@iki.fi>
5612 * glib.def: Add new functions.
5614 * makefile.{cygwin,msc}.in (glib_OBJECTS): Add new object files.
5616 * tests/makefile.{cygwin,msc}.in: Add threadpool-test.
5618 2000-04-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5620 * gasyncqueue.c: New File implementing an asynchronous queue to be
5621 used for asynchronous inter-thread communication.
5623 * gthreadpool.c: New File implementing a thread pool to be used
5624 for distributing work among several threads.
5626 * glib.h: Added the type and function declarations for these two
5629 * tests/threadpool-test.c: New File implementing a test for the
5630 thread pool. This also checks the asynchronous queue underlying
5633 * tests/Makefile.am: Changed accordingly.
5635 2000-04-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5637 * configure.in: Look for both pthread_create and pthread_join in
5638 the thread library. Some systems define one of them, but not both
5639 in libc. Arghh. Now we really start a thread and join it later and
5640 check, whether the thread to actually ran.
5642 * glib.h, gcache.c, gtree.c: Changed the 'value' parameter of
5643 g_cache_remove from gpointer to gconstpointer. Dito for the 'key'
5644 parameter of g_tree_lookup and g_tree_remove and the 'data'
5645 parameter of g_tree_search. This function now takes a function of
5646 type GCompareFunc instead of GSearchFunc. This fixes Bug
5647 #8267. Thanks to Juan Toledo <toledo@users.sourceforge.net> for
5650 * glib.h: Removed declaration of GSearchFunc.
5652 * gmem.c: s/GSearchFunc/GCompareFunc/.
5654 2000-04-19 Tor Lillqvist <tml@iki.fi>
5656 * glib.def: Update entry point list.
5658 2000-04-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5660 * glib.h (G_TRYLOCK): Made the debugging G_TRYLOCK call also work
5661 for compilers with funny G_STMT_(START|END) macros.
5663 * tests/thread-test.c: Implemented a check for that.
5665 * gutils.c (g_getenv): Changed the win32 part of this function to
5666 be thread safe and to make the returned environment string
5667 persistent to match the UN*X behavior. This is again a response to
5670 * glib.h (G_LOCK_NAME): Removed parentheses around the lock name,
5671 as that seems to cause problems for some compilers and really
5674 Wed Apr 19 08:32:32 2000 Tim Janik <timj@gtk.org>
5676 * gscanner.c (g_scanner_new): make sure that
5677 scanner->config->cset_skip_characters is "" instead of NULL, so we
5678 don't segfault further on.
5680 2000-04-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5682 * glib.h, glist.h, gslist.h: Changed the 'data' parameters from
5683 gpointer to gconstpointer for the functions
5684 g_(list|slist)_(remove|find|find_custom|index), as they do not
5685 change this parameter. This fixes bug #4836.
5687 * glib.h: Changed comment for g_getenv to reflect, that the
5688 returned memory must not be freed. Fixes bug #8983.
5690 2000-04-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5692 * configure.in, acconfig.h: Add configure test for garbage
5693 collector friendliness for GLib. If enabled, ENABLE_GC_FRIENDLY
5696 * garray.c, ghash.c, glist.c, gmain.c, gmem.c, gnode.c, gqueue.c,
5697 gslist.c, gtree.c: If ENABLE_GC_FRIENDLY is defined, NULLify all
5698 memory released by the user, but cached by GLib. This lets a
5699 garbage collector have a more correct view of the actually used
5702 * garray.c, glib.h: Added g_(array|ptr_array|byte_array)_sized_new
5703 functions, that reserve a certain amount of memeory for the array
5704 at creation time to avoid reallocation. Fixes bug #6707 from
5705 Charles Kerr <ckerr@osserver1.nssl.noaa.gov>.
5707 * glib.h, gqueue.c, tests/queue-test.c (main): Renamed
5708 g_queue_create to g_queue_new in conformance to all other GLib
5711 2000-04-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5713 * grand.c (g_rand_new): Fixed bug. Thanks to Marko Kreen
5714 <marko@l-t.ee> for reporting that.
5716 2000-03-26 Tor Lillqvist <tml@iki.fi>
5718 * README.win32: Tell about using the mingw-based gcc, which is
5719 much easier than modifying the cygwin gcc to product mingw code
5720 for the msvcrt runtime.
5722 * makefile.cygwin.in (WIN32APIHEADERS): Kludge to make it work
5723 with a "pure" mingw gcc, too.
5725 2000-03-24 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5727 * garray.c: Made GArray behave correctly. Now zero_terminated
5728 really means, that the element array->data[array->len] exists and
5729 is zeroed, and clear means that any unassigned elements obtained
5730 through g_array_set_size (the only way to get unassigned elements
5731 AFAICT) are zeroed. Added some macros to make the code more
5732 obvoius. Also made GPtrArray zero elements after
5733 g_ptr_array_set_size. This is done in a portbale way (assignment
5734 of NULL instead of just memsetting it to zero), though that might
5735 be more portability than we actually want.
5737 * Makefile.am, gthread/Makefile.am, gmodule/Makefile.am,
5738 tests/Makefile.am: Added various win32 related *.in files to
5739 EXTRA_DIST to let 'make distcheck' procude all the corresponding
5740 files, which it silently fails to do currently.
5742 2000-03-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5744 * configure.in: After finding the right thread library (containing
5745 e.g. pthread_create) we now search for the right realtime library
5746 (containing e.g. sched_get_priority_max). Makes the output of the
5747 thread related libraries correct.
5749 * gtimer.c (g_usleep): The current implementation of g_usleep
5750 (simply calling select) doesn't work reliable for multi-threaded
5751 programs on some platforms (bad omen for the main loop....), so I
5752 changed the implementation for thread-using programs to wait for a
5753 GCond for the specified amount of time (NB: sleep and usleep are
5754 not MT-safe in general, because they often use signals).
5756 Wed Mar 22 16:49:57 2000 Owen Taylor <otaylor@redhat.com>
5758 * gmem.c (g_mem_chunk_area_compare): Fix indentation.
5760 2000-03-22 Elliot Lee <sopwith@redhat.com>
5762 * gmem.c (g_mem_chunk_area_compare): Fix 64-bitness bug in
5763 comparing two pointers more than 4G apart.
5765 2000-03-22 Tor Lillqvist <tml@iki.fi>
5767 * gutils.c: Move Win32-only includes after inclusion of glib.h, so
5768 that G_OS_WIN32 is defined.
5770 * glibconfig.h.win32.in: Add GSystemThread.
5772 2000-03-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5774 * gutils.c (g_get_current_dir): Ok, Marcus Brinkmann
5775 <Marcus.Brinkmann@ruhr-uni-bochum.de> convinced me, that 128 KB
5776 path length might not be enough for the HURD. So I changed the
5777 loop to at least avoid an integer overflow, which could happen at
5780 * configure.in: Test for sched_yield as the native yield function
5781 first. Corrected typo g_thread_sleep -> g_usleep. Corrected
5782 message for the pthread_create test. Negative Priorities are
5783 allowed (and used on Solaris), so consider
5784 sched_get_priority_min failed only if it returns -1, not <0. Check
5785 for sched_get_priority_min also in -lrt, if not found in -lpthread
5786 alone and add -lrt to G_THREAD_LIBS then. Remove special case
5787 handling of priorities for older solaris versions and posix
5788 threads. Thanks to Wan-Teh Chang <wtc@netscape.com> for suggesting
5789 some of those changes.
5791 * config.guess, config.sub, ltconfig, ltmain.sh:
5792 Upgrade to libtool 1.3.4.
5794 2000-03-21 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5796 * glib.h, configure.in, gutils.h: always define G_GNUC_EXTENSION,
5797 even when not needed by GLib. That's actually also the way, the
5798 GLib reference manual describes that macro. Therefore I had to
5799 remove the lonesome #include <glibconfig.h> in gutils.c, which
5800 doesn't seem to be needed there however. This change should make
5801 Ben Gertzfield <che@debian.org> happy.
5803 * gutils.c: Furthermore two warnings in gutils.c were voided,
5804 which crept in due to my last change.
5806 * gutils.c (g_get_current_dir): Allocate only up to 128KB for a
5807 pathname. While this is an arbitrary value just like 2048, it
5808 seems to be enough (after all, even 4GB is an arbitrary value).
5810 2000-03-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5812 * gmain.c (g_main_poll): Warn in case of an error during the call
5813 to poll(2). Closes Bug#7564 as reported by David Helder
5814 <dhelder@umich.edu>.
5816 * gutils.c (g_get_current_dir): Make g_get_current_dir work on
5817 systems with unlimited pathname length like the HURD (It worked
5818 there before, but only for pathes shorter than 2048). Closes
5819 Bug#4525 as reported by Marcus Brinkmann
5820 <Marcus.Brinkmann@ruhr-uni-bochum.de>.
5822 2000-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5824 * giounix.c (g_io_unix_write, g_io_unix_read): Interpret EINTR as
5827 2000-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5829 * configure.in: Added the missing POSIX_NO_YIELD and
5830 POSIX_NO_PRIORITIES warning messages.
5832 * configure.in: Use AC_TRY_RUN instead of AC_TRY_LINK, to test for
5833 real thread support. On solaris pthread_create can be linked to
5834 even in -lc, but it doesn't work then.
5836 * configure.in: Don't use priorities for threads, when the
5837 minimal/maximal priorities couldn't be determined at configure
5840 * configure.in, gthread.c: Always define GSystemThread in
5841 glibconfig.h to represent a system thread.
5843 * configure.in: Do not use native recursive threads, when
5844 possibe. We use some features, that they do not expose (namely the
5847 * glib.h, gthread.c: Redefined GStaticRecMutex. The functions are
5848 now implemented in a different way, which should be way
5849 faster. Alsothere are now functions g_static_rec_mutex_unlock_full
5850 and g_static_rec_mutex_lock_full to leave/enter a recursive mutex
5853 * gthread.c (g_thread_self): Do not test the system_thread to be
5854 non-zero to speed things up.
5856 * gthread.c (g_mutex_init): Therefore set the system_thread of the
5859 * tests/thread-test.c: Rerun all tests once again, but this time
5860 we fool the system into thinking, that the available thread system
5861 is not native, but userprovided.
5863 2000-03-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5865 * gqueue.c (g_queue_push_tail_link, g_queue_push_head_link): We
5866 want the next and prev pointer of the inserted link to be NULL.
5868 2000-03-06 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5870 * configure.in: Another small change to the pthread_.. search
5871 pattern. Should work *now* for AIX.
5873 2000-03-04 Tor Lillqvist <tml@iki.fi>
5875 * gwin32.c (g_win32_error_message): New function that returns the
5876 message string for a Win32 error code.
5878 * glib.h: Declare it.
5880 * glib.def: Export it, plus g_node_copy.
5882 2000-03-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5884 * configure.in: Make the search for pthread_attr_... prototypes
5885 find names at the start of a line also, like it is on AIX. Thanks
5886 to Valdis Kletnieks <Valdis.Kletnieks@vt.edu> for the info.
5888 Wed Mar 1 10:39:39 2000 Tim Janik <timj@gtk.org>
5890 * gslist.c (g_slist_reverse): minor optimization.
5892 * testglib.c (g_node_test): added a couple of tests for
5896 * gnode.c (g_node_copy): new function to copy subtrees,
5897 supplied by dbsears@ix.netcom.com.
5898 changed iterator to walk the children list backwards, so
5899 we get down from O(n^2) to O(n).
5901 * gnode.c (g_node_first_sibling): applied patch from
5902 dbsears@ix.netcom.com to optimize access if node->parent
5905 * gutils.c (g_get_any_init): backed out HAVE_PW_GECOS check around
5906 assignment of g_real_name, sicne HAVE_PW_GECOS is never defined and
5907 thus breaks the original code.
5909 * merged changes from 1.2.7.
5911 Fri Jan 28 11:37:41 2000 Owen Taylor <otaylor@redhat.com>
5913 Bug #4156 - Changes vaguely modelled after Scott Gifford's patch
5915 * gtimer.c (g_timer_elapsed): Never report negative times -
5918 * gmain.c (g_timeout_prepare): Guard against unexpected
5919 clock shifts by never setting a timeout of more than
5920 data->interval msecs.
5922 2000-02-27 Tor Lillqvist <tml@iki.fi>
5924 * glib.def: Add new functions.
5926 2000-02-23 Tor Lillqvist <tml@iki.fi>
5928 * README.win32: Add a missing step to the setup instructions for
5929 gcc-2.95.2. Thanks to Arnaud Charlet.
5931 * glib.def: Add missing entry point.
5933 2000-02-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5935 * configure.in: Changed GCC version test to also accept major
5936 versions > 2. Thanks to Ben Gertzfield <che@debian.org> for
5939 Thu Feb 17 12:53:44 2000 Tim Janik <timj@gtk.org>
5941 * gstring.c: changed g_str_hash() to a 31 bit version based on
5942 a submission by Karl Nelson and hand optimized ad absurdum by
5945 * gstring.c: applied patch from havoc for new gstring functions,
5946 added some more sanity checks, coding style fixups.
5948 2000-02-13 Havoc Pennington <hp@pobox.com>
5950 * tests/string-test.c (main): Add tests for the new GString
5953 * testglib.c (main): Add tests for the new GString features
5955 * gstring.c (g_string_insert_len): New function; insert
5956 a given length of string at a given position.
5957 (g_string_append): reimplement in terms of g_string_insert_len
5958 (g_string_append_len): new function
5959 (g_string_insert_c): accept -1 for "pos" arg to mean "append"
5960 (g_string_append_c): reimplement in terms of g_string_insert_c
5961 (g_string_prepend): reimplement in terms of g_string_insert_len
5962 (g_string_prepend_len): new function
5963 (g_string_prepend_c): reimplement in terms of g_string_insert_c
5964 (g_string_insert): reimplement in terms of g_string_insert_len
5966 * glib.h: Declare g_string_insert_len, g_string_append_len,
5967 g_string_prepend_len
5969 Sun Feb 13 08:16:47 2000 Tim Janik <timj@gtk.org>
5971 * configure.in: wtf??? someone destroyed the configure.in, reverting to
5972 an older version from Feb 4 which apears to still work.
5974 2000-02-07 Tor Lillqvist <tml@iki.fi>
5976 * gmodule.rc.in gthread.rc.in: Move to corresponding subdirectories.
5979 * gmodule/Makefile.am
5980 * gthread/Makefile.am: Change accordingly.
5982 * makefile.cygwin: Corresponding changes, some cleanup.
5984 2000-02-05 Tor Lillqvist <tml@iki.fi>
5986 * glib.rc.in gmodule.rc.in gthread.rc.in: New files, for putting
5987 version info in the DLLs on Win32.
5989 * Makefile.am: Generate corresponding *.rc files and distribute
5992 * makefile.cygwin.in: Add rules to automatically bump a "build
5993 number" in the version info in the rc files each time the DLL is
5994 built. But do this only for the person who releases binaries. If
5995 others build the DLLs, the build number is set to zero.
5997 Fri Feb 4 19:36:05 2000 Tim Janik <timj@gtk.org>
6000 * gdataset.c: return stolen data from g_datalist_id_remove_no_notify()
6001 and g_dataset_id_remove_no_notify() to avoid second lookup for common
6004 2000-02-01 Tor Lillqvist <tml@iki.fi>
6007 * gstrfuncs.c (g_filename_to_utf8, g_filename_from_utf8): New
6008 functions for conversion between UTF-8 and the encoding expected
6009 by C runtime functions like open() and stat(), and returned by
6012 Implement them on Win32 where we use the system "ANSI" codepage,
6013 which might be single-byte or double-byte. On Unix, just skip the
6014 issue for now and provide dummy implementations that return a copy
6019 * glib.def: Minor updates.
6021 Wed Jan 26 05:24:38 2000 Tim Janik <timj@gtk.org>
6024 * gmain.c: s/current_time/dispatch_time/ for the dispatch() handlers.
6025 refetch the current time after invocation of poll() to cover up for
6026 the time spent in that function call.
6028 Fri Jan 21 10:18:24 2000 Owen Taylor <otaylor@redhat.com>
6030 * glib.h (G_N_ELEMENTS): Added G_N_ELEMENTS macro to determine
6031 the number of elements in an array.
6033 Sun Jan 9 13:28:36 2000 Tim Janik <timj@gtk.org>
6035 * gstrfuncs.c (g_strtod): correctly fetch the current locale,
6038 1999-12-16 Tor Lillqvist <tml@iki.fi>
6040 * gmodule/gmodule-win32.c: Use FormatMessage to translate system
6041 error codes into textual messages.
6043 1999-11-25 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6045 * glib.h (G_TRYLOCK): This of course should return TRUE in a
6046 program with a thread-disabled GLib.
6048 1999-11-18 Tor Lillqvist <tml@iki.fi>
6050 * glib.def: g_strjoin was missing.
6052 1999-11-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6054 * acconfig.h, config.h.win32.in, configure.in: Renamed
6055 GLIB_SIZEOF_PTHREAD_T to GLIB_SIZEOF_SYSTEM_THREAD to reflect
6058 * configure.in: Cope with systems, that have a pthread_t type,
6059 that is not a pointer. Hint from Karl Nelson
6060 <kenelson@ece.ucdavis.edu>. Define GLIB_SIZEOF_SYSTEM_THREAD to 4
6061 for Solaris. Cope with systems, that have no default mutex
6062 initialize, like obviously most DCE systems.
6064 * glib.h, gthread.c: Changed the prototype of thread_create and
6065 thread_self to return the system thread into provided memory
6066 instead of a return value. This is necessary, as HPUX has a
6067 pthread_t, that is bigger than the biggest integral type there.
6069 * gthread.c: system_thread is no longer a pointer, but an memory
6070 area of size GLIB_SIZEOF_SYSTEM_THREAD. Changed the
6071 zeroinitialization and the tests for zeroness accordingly.
6073 1999-11-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6075 * configure.in: Create docs/glib-config.1 from
6076 docs/glib-config.1.in. Makes 'make distcheck' happy (and me too).
6078 * glib-config.1: Removed from CVS, as it is a generated file.
6080 1999-11-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6082 * configure.in: Make the test for getpwuid_r work on newer AIX
6083 versions, too. Still works on Solaris and Linux. Patch from Craig
6084 Rodrigues <rodrigc@mediaone.net>.
6086 1999-11-08 Tor Lillqvist <tml@iki.fi>
6088 * gwin32.c (g_win32_getlocale): Look at env vars LC_ALL, LC_CTYPE
6089 and LANG first. Some refinements to the sublanguage logic.
6091 1999-11-04 Tor Lillqvist <tml@iki.fi>
6093 * makefile.{cygwin,msc}.in: Add gwin32 object. Add rule to make .i
6094 (preprocessed source) files.
6096 1999-11-01 Tor Lillqvist <tml@iki.fi>
6099 * glib.def: Rename Win32-only functions from gwin_* to g_win32_*
6100 to match the GLib naming conventions.
6105 * Makefile.am: Move the Win32-only functions to the new
6108 1999-10-31 Tor Lillqvist <tml@iki.fi>
6110 * gutils.c (gwin_getlocale): New Win32-specific function, returns
6111 a Unixish current locale string (en, zh_TW etc).
6113 * glib.h: Declare it.
6115 * glib.def: Export it.
6117 * testglib.c: Test it.
6119 * gmessages.c (Win32: ensure_stdout_valid): Some improvements,
6120 make sure we don't call AllocConsole several times, which I think
6123 Sun Oct 31 18:55:01 1999 ape@spacetec.no (Asbjorn Pettersen)
6125 * gcache.c (g_cache_remove): Test if node is NULL.
6126 If not tested, GIMP's script-fu will crash.
6128 Sun Oct 17 18:11:40 1999 Tim Janik <timj@gtk.org>
6130 * gdataset.c (g_data_set_internal): remove g_dataset_global_lock around
6131 destroy() notification here as well.
6133 1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6135 * gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
6136 is called recursivly. Reported by Ola Andersson <rand@ling.umu.se>.
6138 Tue Oct 12 14:17:12 1999 Tim Janik <timj@gtk.org>
6140 * glib.h: removed useless g_string(x) macro that cluttered the namespace
6141 and was just a poor wrapper around the cpp '#' symbol, use #x if you
6142 need to work around this.
6143 added new macro G_STRINGIFY(arg) that will convert arg to a string,
6144 no matter whether it contains macros or not.
6146 1999-10-12 Tor Lillqvist <tml@iki.fi>
6148 * config.h.win32.in: Define the new GLIB_SIZEOF_* constants here,
6151 * glib.h: Small Win32 comments improvement.
6153 Tue Oct 12 12:16:12 1999 Tim Janik <timj@gtk.org>
6155 * gmessages.c (g_printf_string_upper_bound): completly new
6156 implementation for printf string upper bounds calculation.
6157 we handle all glibc 2.1 format specifiers now, except for positional
6158 parameters (%nn$...) and wide char strings, plus some obscure upper
6159 case variants of the standard conversions. this fixes a lot of
6160 bugs in the old code, i.e.
6161 - NULL format strings
6162 - floats with exponents >+24
6164 - precision specifications in general
6165 - negative field widths
6166 - %p for SIZEOF_VOID_P > 4 platforms
6167 we now issue warnigns in places where the old code would have
6168 caused buffer overruns anyways. warnings are suppressed when invoked
6169 from glogv(), to avoid infinite recursions if someone passes a log
6170 message that comes with really obscure format specifications.
6172 Tue Oct 12 11:49:00 1999 Tim Janik <timj@gtk.org>
6174 * gstrfuncs.c: nuked old g_printf_string_upper_bound() version.
6176 Tue Oct 12 03:34:40 1999 Tim Janik <timj@gtk.org>
6178 * glib.h: added GFloatIEEE754 and GDoubleIEEE754 unions to access sign,
6179 mantissa and exponent of IEEE floats and doubles (required by the new
6180 version of g_printf_string_upper_bound). the unions are endian specific,
6181 we handle G_LITTLE_ENDIAN and G_BIG_ENDIAN as of currently. ieee floats
6182 and doubles are supported (used for storage) by at least intel, ppc and
6184 http://twister.ou.edu/workshop.docs/common-tools/numerical_comp_guide/ncg_math.doc.html
6186 Mon Oct 11 18:01:49 1999 Tim Janik <timj@gtk.org>
6188 * configure.in: added additional checks to figure sizes of size_t,
6189 ptrdiff_t and intmax_t (required by g_printf_string_upper_bound).
6191 Wed Oct 6 12:44:23 PDT 1999 Manish Singh <yosh@gimp.org>
6193 * configure.in: blah. use G_WITH_CYGWIN instead of G_HAVE_CYGWIN
6195 1999-10-05 Tor Lillqvist <tml@iki.fi>
6197 * glib.h: (Win32) Drop the mapping of POSIX function names to the
6198 underscored versions, it's unnecessary after all. With MSVC we get
6199 them from oldnames.lib, with gcc-2.95 and mingw32 from
6200 -lmoldname-msvc. Add comment about what headers to include for
6203 * glibconfig.h.win32.in: Don't define WIN32 and NATIVE_WIN32.
6205 * gerror.c (g_on_error_query): (Win32) Slightly increased verbosity.
6207 * build-dll: Don't strip.
6209 * tests/string-test.c tests/dirname-test.c: Use G_OS_WIN32.
6211 * glib.def: Add g_thread_use_default_impl.
6213 Sun Oct 3 19:46:55 PDT 1999 Manish Singh <yosh@gimp.org>
6215 * configure.in: use G_HAVE_CYGWIN instead of G_OS_FEATURE_CYGWIN
6217 Sun Oct 3 19:25:42 PDT 1999 Manish Singh <yosh@gimp.org>
6221 * glibconfig.h.win32: G_OS_FOO #defines. I *think* I got the cygwin
6222 and beos stuff right, but I haven't tested it. The respective
6223 porters should fix any screwups
6233 * testglib.c: use G_OS stuff
6235 Wed Sep 22 01:53:18 1999 Tim Janik <timj@gtk.org>
6237 * glib.h (NULL): define NULL as (0L) if __cplusplus is defined, to
6238 avoid "ANSI C++ forbids implicit conversion from `void *' in argument
6239 passing" errors upon NULL usage in C++ programs (gcc-2.95 is on crack
6240 for erroring out on this, instead of just issueing a warning).
6242 * glib.h (g_trash_stack_pop): use uncasted NULL again.
6244 Fri Sep 17 10:24:45 1999 Tim Janik <timj@gtk.org>
6246 * gmem.c (g_mem_chunk_compute_size) (g_mem_chunk_new): applied
6247 patch from Soeren Sandmann <sandmann@daimi.au.dk>, to force mem
6248 chunk's area sizes to be a multitiple of atom_size, and to
6249 eliminate the MAX_MEM_AREA restriction of 65536 bytes. we also
6250 catch cases where users pass an area size < atom size with a
6251 return_if_fail statement now (which is ok, because previously this
6252 lead to memory corruption anyways).
6254 Thu Sep 16 13:19:54 1999 Tim Janik <timj@gtk.org>
6256 * glib.h (g_trash_stack_pop): add explicit (GTrashStack*) cast for NULL
6257 pointer to cure ANSI C++ error.
6259 Mon Sep 13 23:25:59 1999 Tim Janik <timj@gtk.org>
6261 * gmessages.c (g_logv): in case we have to abort the program,
6262 debugging is enabled and we are not called recursively, try
6263 to abort with raise (SIGTRAP) first, so developers may ignore
6264 certain failure conditions during debugging stage.
6266 Thu Aug 26 15:09:36 1999 Tim Janik <timj@gtk.org>
6269 * gmodule/Makefile.am:
6270 * gthread/Makefile.am: added --export-dynamic so we can load dynmic
6271 modules, (required, according to the libtool 1.3.3 docu).
6273 1999-07-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6275 * grand.c (g_rand_new): Use /dev/urandom, as it doesn't block,
6276 which /dev/random might do. Do not XOR the time, when getting the
6277 seed form /dev/urandom, as this is good itself. Prevent the
6278 initial seed from being zero, which causes the PRNG to produce
6279 only zeros. Hints from Colin Plumb <colin@pgp.com>.
6281 1999-08-17 Tor Lillqvist <tml@iki.fi>
6283 * glib.h (g_trash_stack_push): Add a cast.
6286 * glist.c: Make the inline functions static inline, and add
6287 separate extern wrappers. Not all compilers produce callable entry
6288 points for inline functions, even if gcc does.
6290 Sun Aug 15 02:47:14 1999 Tim Janik <timj@gtk.org>
6292 * glib.h (g_trash_stack_pop): eliminate memset() call, since string.h
6293 has not neccessarily been included prior to glib.h.
6295 Mon Aug 2 21:03:10 1999 Tim Janik <timj@gtk.org>
6297 * configure.in: added --enable-msg-prefix option.
6299 * gmessages.c (g_log_default_handler): feature "prg_name (pid:%u): "
6300 if --enable-msg-prefix was selected (use "(process:%u): " if
6301 g_get_prgname () returns NULL, along the lines of g_on_error_query).
6303 1999-08-03 Tor Lillqvist <tml@iki.fi>
6307 * tests/strfunc-test.c: Rename g_strccpy to g_strcompress and
6308 g_strecpy to g_strescape per Tim Janik's suggestion. Dropped the
6309 destination parameter, always g_malloc a new string. Fix bug in
6310 g_strcompress, octal digits were gobbled up without limit, should
6313 Sources that use g_strescape must have ifdefs to be compilable
6314 both with GLib 1.2 and 1.3.
6316 Sat Jul 31 17:52:03 PDT 1999 Manish Singh <yosh@gimp.org>
6319 * gstrfuncs.c: the #define for g_strescape interfered with the
6320 compilation of the function, so just remove the function and
6321 note that it's deprecated in the header
6323 1999-08-01 Tor Lillqvist <tml@iki.fi>
6325 * gstrfuncs.c (g_strccpy, g_strecpy): New functions.
6327 * glib.h: Declare and document them. Define the deprecated
6328 g_strescape as a macro that calls g_strecpy.
6330 * tests/strfunc-test.c (main): Test them.
6332 * makefile.{cygwin,msc}.in
6333 * tests/makefile.{cygwin,msc}.in: Remove gstack and its test
6336 * glib.def: Additions and removals.
6338 * README.win32: Improve gcc build instructions.
6340 * build-dll: Also build import library for MSVC.
6342 Sat Jul 24 20:11:35 1999 Tim Janik <timj@gtk.org>
6344 * merged GLib 1.3.0 with glib-1.2.3 from Fri Jul 16 22:18:36.
6345 * incorporated proposed cleanups from gtk-devel-list.
6347 * bumped version number to GLib-1.3.1
6353 removed string tokenisation (we got g_strsplit() and g_strjoin()
6354 already) and readline functions.
6355 s/g_list_delete/g_list_delete_link.
6356 implemented g_slist_delete_link.
6357 removed notion of g_ATEXIT() macro in glib.h, this is an *internal*
6358 macro, g_atexit() is provided for public consumption.
6359 added GTrashStack inline utility functions.
6360 reimplement double eneded queues.
6361 removed GStack implementation, people can use a queue or a (singly)
6362 linked list for this task.
6363 deprecated g_strescape(), we need the SunOS variants here.
6365 * gdate.c: added DEBUG_MSG() macro to wrap old messages.
6369 * upgrade to libtool 1.3.3.
6371 1999-07-21 Tor Lillqvist <tml@iki.fi>
6373 Win32: With the latest gcc (2.95, pre-release), we can have binary
6374 compatibility with MSVC by using the switch -fnative-struct. No
6375 longer build DLLs with .gcc in the name when using gcc.
6377 * README.win32: Renew gcc build instructions.
6379 * build-dll: Comments change, handle also .a files.
6381 * makefile.cygwin.in
6382 * tests/makefile.cygwin.in: Remove .gcc from DLL name.
6384 1999-07-13 Tor Lillqvist <tml@iki.fi>
6386 * README.win32: Correct URL for mingw runtime sources.
6388 * build-dll: Combine commands with &&.
6390 * glib.h: Map also rmdir() and hypot() for MSVCRT library.
6392 * makefile.cygwin.in
6393 * tests/makefile.cygwin.in: New DLL naming style. GCC-compiled DLLs are
6394 now called *.gcc.dll, to avoid binary incompatibilities with
6395 MSVC-compiled versions.
6397 * makefile.msc.in: Cosmetics.
6399 1999-07-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6401 * configure.in: Test for pthread_join rather than for
6402 pthread_create to determine the right thread-lib. Makes it work on
6403 mips-sgi-irix6.5. Hitn from to Jari Vuoksenranta
6404 <javu@piano.ux.phys.jyu.fi>.
6406 1999-07-02 Tor Lillqvist <tml@iki.fi>
6408 * README.win32: Note about need to fix another bug in the mingw32
6411 * makefile.msc.in: Debugging turned on via an nmake variable,
6412 no need to edit the makefile.
6414 1999-07-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6416 * configure.in, acconfig.h, gutils.c: Added a g_memmove
6417 replacement for platforms without memmove, where bcopy can't
6418 handle overlapping copies and the corresponding checks, which is
6419 taken form the PERL Configure routine.
6421 * glib.h: Updated the commentary about g_memmove to be right and
6424 * configure.in: Removed test for rand_r, as it isn't used anymore.
6426 1999-06-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6428 * glib.h, grand.c: Finally removed the g_random_normal and
6429 g_rand_normal functions.
6431 1999-06-28 Tor Lillqvist <tml@iki.fi>
6433 * glib.def: Add missing export of g_strncasecmp.
6435 1999-06-21 Jose Mercado <jmercado@mit.edu>
6437 * glib.spec.in: Changed version number (1.1->1.3) in files section
6438 to allow rpm to build packages again.
6440 1999-06-21 Tor Lillqvist <tml@iki.fi>
6442 * README.win32: Update the pthreads snapshot version we want.
6443 Advice how to hand-expand the makefile.*.in files.
6445 * config.h.win32.in: Define values needed by Sebastian Wilhelmi's
6448 * glib.def: Add new functions.
6450 * glibconfig.h.win32.in: Update the pthreads snapshot version.
6453 * gthread.c: Include config.h, guard inclusion of unistd.h. When
6454 using gcc on Win32, g_thread_functions_for_glib_use must be marked
6455 for export here, too.
6457 * gtimer.c: Implement g_usleep on native Win32 using Sleep (which
6458 only has millisecond granularity, though).
6460 * makefile.cygwin.in
6461 * makefile.msc.in: Update pthreads snapshot version. File
6462 name changes. Remove testgthread.
6464 * tests/makefile.cygwin.in
6465 * tests/makefile.msc.in: Add thread-test. Link with gthread lib.
6467 1999-06-18 Jeff Garzik <jgarzik@pobox.com>
6469 * tests/Makefile.am: Re-order tests in alpha order.
6471 1999-06-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6473 * configure.in: Changed test for pthread_attr_setstacksize from
6474 AC_TRY_COMPILE to AC_TRY_LINK.
6476 1999-06-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6478 * configure.in, acglib.m4, acconfig.h, glib.h, gthread.c:
6479 Completed the thread support in GLib. Thread creation,
6480 prioritizing threads, yielding, joining threads as well as
6481 reader/writer locks and recursive mutexes are now in place. Please
6482 test heavily on your platform. It is so far tested on
6483 Linux/i386/pthreads, Solaris/Sparc/pthreads and
6484 Solaris/Sparc/solaristhreads.
6486 * gtimer.c, glib.h: Implement g_usleep (gulong microseconds) for
6487 thread safe sleeping. (sleep() is not MT-safe at all!)
6489 * gutils.c: Avoid compiler warning.
6491 * tests/Makefile.am, tests/thread-test.c: New program to test some
6492 aspects of the thread implementation.
6494 * gthread.c, Makefile.am: Renamed from gmutex.c to reflect the
6497 * configure.in: Purged all appearances of nspr.
6499 Wed Jun 2 11:42:46 PDT 1999 Manish Singh <yosh@gimp.org>
6505 * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
6507 1999-05-29 Tor Lillqvist <tml@iki.fi>
6509 * gstrfuncs.c (g_strescape): Backslashify also '"' characters.
6511 * glib.h: Document g_strescape.
6513 1999-05-12 Tor Lillqvist <tml@iki.fi>
6515 * glib.h (Win32): Map fileno to _fileno for mingw32. Map fstat to
6518 * README.win32: Advice also to remove -lmoldname in the
6519 patch to the egcs-1.1.2 spec file.
6521 Wed May 12 00:23:55 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
6523 * gmodule/Makefile.am: Another small fix.
6525 1999-05-08 Tor Lillqvist <tml@iki.fi>
6527 * Makefile.am tests/Makefile.am: Correct rules for making the
6528 win32-related files that are made from corresponding .in files.
6529 Is there a cleaner way than explicitly writing rules that invoke
6532 Fri Jul 16 22:18:36 PDT 1999 Manish Singh <yosh@gimp.org>
6535 * ltmain.sh: upgrade to libtool 1.3.3
6537 1999-06-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6539 * gdate.c, gstrfuncs.c, gstring.c: Fixed the use of the
6540 is..... and to..... macros, which take unsigned chars, not chars!
6541 Thanks to Morten Welinder <terra@diku.dk> for pointing this out.
6543 Thu Jun 3 16:30:31 PDT 1999 Manish Singh <yosh@gimp.org>
6545 * gerror.c (g_on_error_query): check isatty() before querying so
6546 we don't loop endlessly
6548 Sat May 29 11:16:29 PDT 1999 Manish Singh <yosh@gimp.org>
6554 * ltmain.sh: upgrade to libtool 1.3.2
6556 1999-05-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6558 * gmain.c: provide a poll prototype for SunOS, as they do not do
6559 it self. Hint from Christian Parg <cparg@fs-design.de>.
6561 Tue May 25 12:23:07 1999 Owen Taylor <otaylor@redhat.com>
6563 * gstrfuncs.c (g_strchug): Use g_memmove() not memmove().
6564 (Reported by Charles Levert <charles@comm.polymtl.ca>)
6566 Mon May 10 22:03:52 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
6568 * Released GLib 1.2.3
6570 1999-05-08 Tor Lillqvist <tml@iki.fi>
6572 * Makefile.am tests/Makefile.am: Correct rules for making the
6573 win32-related files that are made from corresponding .in files.
6574 Is there a cleaner way than explicitly writing rules that invoke
6577 Sat May 1 10:18:01 PDT 1999 Manish Singh <yosh@gimp.org>
6583 * ltmain.sh: upgrade to libtool 1.3
6585 1999-04-30 Tor Lillqvist <tml@iki.fi>
6587 * Makefile.am: Don't distribute glibconfig.h.win32.in, but
6588 glibconfig.h.win32. Generate it when making a dist. Also generate
6589 makefile.msc and config.h.win32 from corresponding .in files when
6592 * configure.in: Also substitute @GLIB_INTERFACE_AGE@ and
6593 @GLIB_BINARY_AGE@ (needed in config.h.win32).
6595 * glibconfig.h.win32.in: Use static mutex structure and initial
6596 value corresponding to the 1999-04-07 snapshot of pthreads-win32.
6598 * tests/Makefile.am: Distribute makefile.msc. Generate it when
6601 * tests/makefile.msc.in: New file.
6603 * tests/node-test.c: Include <stdlib.h> for exit().
6605 Thu Apr 29 02:16:36 1999 Tim Janik <timj@gtk.org>
6607 * gstrfuncs.c: minor code cleanups.
6609 Tue Apr 27 13:11:29 1999 Owen Taylor <otaylor@redhat.com>
6611 * gmain.c (g_main_poll): Mask out ERR HUP and NVAL from
6612 the events field so we don't give IRIX fits.
6614 Tue Apr 20 08:42:22 1999 Tim Janik <timj@gtk.org>
6616 * gscanner.c (g_scanner_unexp_token): behave conservative with
6617 G_TOKEN_IDENTIFIER_NULL and always assume scanner->value.v_string
6618 to be "null" in that case.
6620 1999-04-20 Havoc Pennington <hp@pobox.com>
6622 * gutils.c (g_vsnprintf): When using the vsnprintf()
6623 implementation, '\0'-terminate the resulting string
6624 and return its length rather than -1.
6626 Mon Apr 19 13:42:21 1999 Owen Taylor <otaylor@redhat.com>
6628 * gmain.c (g_main_iterate): Added missing
6629 #ifdef G_THREADS_ENABLED. (I never liked G_THREADS_ENABLED in
6632 1999-04-18 Havoc Pennington <hp@pobox.com>
6634 * gutils.c (g_snprintf): When using the vsnprintf()
6635 implementation, '\0'-terminate the resulting string
6636 and return its length rather than -1.
6638 Fri Apr 16 06:52:07 1999 Tim Janik <timj@gtk.org>
6640 * gscanner.c (g_scanner_unexp_token): feature G_TOKEN_EOF as a valid
6641 expected token as well, so we get "- expected end of file" instead of
6642 "- expected (unknown) token <0>".
6644 Tue Apr 13 16:16:14 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
6646 * Released GLib 1.2.2
6648 1999-04-12 Elliot Lee <sopwith@mh69.mh.cuc.edu>
6650 * g_strchug(): s/strcpy/memmove/
6652 1999-04-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6654 * configure.in: Adjusted the test for an unimplemented
6655 getpwuid_r. Info from Michael Pruett <mikep@ugcs.caltech.edu>.
6657 Sun Apr 11 15:07:34 1999 Tim Janik <timj@gtk.org>
6659 * configure.in: bumped versin number to GLib 1.2.2, interface 2,
6664 Sun Apr 11 14:37:06 1999 Tim Janik <timj@gtk.org>
6666 * gstrfuncs.c (g_strcasecmp): always check for s1, s2 != NULL.
6668 Sat Apr 10 19:30:50 1999 Tim Janik <timj@gtk.org>
6670 * glib.h: removed braces around inline strings for the G_GNUC_FUNCTION
6671 and G_GNUC_PRETTY_FUNCTION macros, so the macros can be used for
6672 compile time string concatenation.
6674 Thu Apr 8 19:53:19 1999 Owen Taylor <otaylor@redhat.com>
6676 * gmain.c (g_main_iterate): Check for two threads
6677 calling g_main_iterate at once.
6679 * gmain.c: If the set of poll file descriptors changes
6680 during a call to poll(), abort that call, and start
6681 a new poll. My test program still segfaults
6682 obscurely on glibc 2.0 (in read()!!!), but now it works on
6683 glibc 2.1, so I'll blame something else for the other segfault.
6685 1999-03-31 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6687 * configure.in: Fixed slight bug, that made configure hang on some
6688 systems. Please do not merge this into 1.3 branch. It's taken care
6689 of differently there. Info from J. Rhett Aultman
6690 <cuplan@alley.gator.net>
6692 Wed Mar 24 21:23:47 CST 1999 Shawn T. Amundson <amundson@gtk.org>
6694 * Released GLib 1.2.1
6699 sanity_check: updated
6701 * glibconfig.h.win32.in:
6703 docs/glib-config.1.in:
6704 docs/Makefile.am: Added files used to generate new files.
6706 * glibconfig.h.win32:
6707 docs/glib-config.1: Removed, now generated.
6709 * configure.in: Added to output now-generated files.
6711 Tue Mar 23 13:43:39 PST 1999 Manish Singh <yosh@gimp.org>
6713 * giounix.c: add user_data param to check and prepare functions
6715 Mon Mar 22 03:54:43 1999 Tim Janik <timj@gtk.org>
6718 * gmain.c: add user_data to the GSource ->check and ->prepare
6719 functions, so it can be used to e.g. pass a GPollFd.
6720 (g_main_poll): only add poll records with an events mask != 0 to the
6721 fd_array. don't even bother calling poll_func() if fds=timeout=0.
6722 added debugging printouts around poll_func() invokation that can be
6723 enabled with #define G_MAIN_POLL_DEBUG.
6725 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
6731 * ltmain.sh: upgrade to libtool 1.2f
6733 * autogen.sh: libtool is not required to autogen glib
6735 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
6738 1999-03-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6740 * gmem.c: Fixed another stupid fault of mine: Did
6741 s/g_static_/g_private_/g
6743 Wed Mar 17 03:17:42 1999 Tim Janik <timj@gtk.org>
6745 * configure.in bumped versin number to GLib 1.2.1, interface 1,
6750 * glib.h: added GLIB_CHECK_VERSION() macro similar to
6751 GTK_CHECK_VERSION().
6753 Sun Mar 14 17:50:35 1999 Tim Janik <timj@gtk.org>
6755 * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
6756 to g_return_if_fail().
6758 (g_mem_chunk_print):
6759 (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
6762 * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
6763 to g_return_if_fail().
6764 * grel.c (g_*): changed a bunch of g_assert() statements to
6765 g_return_if_fail() and added some extra ones to check relation != NULL.
6767 1999-03-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6769 * configure.in: Also accept _Pctime_r instead of ctime_r, while
6770 seraching for the right `_REENTRANT' flag. This is for Digital
6771 UNIX 4.0d. Thanks to Sascha Brawer <sb@adasys.ch>.
6773 Tue Mar 9 23:25:50 1999 Tim Janik <timj@gtk.org>
6775 * configure.in: check for working realloc (NULL,).
6776 * gmem.c (g_realloc): use malloc() for initial allocation on systems
6777 where realloc(NULL,) will not work (this is the case on SunOS, reported
6780 Mon Mar 8 07:42:08 1999 Tim Janik <timj@gtk.org>
6782 * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
6783 flag around the call to g_hook_free() to avoid spurious
6784 warnings (happens during destruction phase).
6786 1999-03-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6788 * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
6789 from config.h.win32 to glibconfig.h.win32
6791 * acconfig.h, configure.in, config.h.win32: Added test for DCE
6792 versions of mutex_trylock and cond_timedwait. The win32 versions
6793 are posix, aren't they?
6795 1999-03-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6797 * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
6798 Friedrich Dominicus <Friedrich.Dominicus@inka.de>
6800 1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6802 * gutils.c (g_get_any_init): Fixed yet another bloody
6803 implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
6804 <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
6805 test better than that, but have no idea, how to do that easily.
6807 Sun Feb 21 22:11:51 CST 1999 Shawn T. Amundson <amundson@gtk.org>
6809 * Released GLib 1.2.0
6813 Wed Feb 24 00:08:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>
6815 * *.[ch]: inserted additional note to look for ChangeLog and
6816 AUTHORS file for a log of modifications.
6818 Sun Feb 21 14:01:00 1999 Dr Mike <drmike@redhat.com>
6820 * Made specfile generated, tweaked slightly
6822 Sat May 8 06:00:17 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
6826 gthread/Makefile.am: Better testing reveals better
6827 methods. Fixes for BeOS.
6829 Sat May 8 01:52:29 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
6840 gmodule/gmoduleconf.h.in
6841 gmodule/gmodule-beos.c
6842 gthread/Makefile.am: Port to BeOS by myself and Richard Offer.
6844 1999-05-06 Tor Lillqvist <tml@iki.fi>
6846 * makefile.msc.in makefile.cygwin.in glibconfig.h.win32.in
6847 config.h.win32.in tests/makefile.msc.in tests/makefile.cygwin.in:
6848 New files, used to generate corresponding non-.in files when
6849 making a dist. This is just so the version numbers will be kept in
6850 synch automatically.
6852 * configure.in: Also substitute @GLIB_MAJOR_VERSION@,
6853 @GLIB_MINOR_VERSION@, and @GLIB_INTERFACE_AGE@.
6855 * Makefile.am tests/Makefile.am: Also distribute makefile.cygwin.
6857 * gerror.c (g_on_error_query): On Win32, put up a MessageBox and
6860 * glib.def: Add a couple of functions.
6862 Sat May 1 10:26:20 PDT 1999 Manish Singh <yosh@gimp.org>
6868 * ltmain.sh: upgrade to libtool 1.3
6870 1999-04-25 Tor Lillqvist <tml@iki.fi>
6872 * README.win32: More editing.
6873 * build-dll: Use gcc, not ld to link.
6874 * glib.h: On native Win32 use _unlink().
6875 * gscanner.c: Use corrent NATIVE_WIN32 feature test macro,
6877 * gstring.c: Include <io.h> on Win32 for _read prototype.
6878 * gutils.c: Remove old IO channel code (was in #if 0).
6879 * makefile.cygwin: Don't need to link with kernel32 and msvcrt
6880 explicitly, they are included anyway.
6882 1999-04-24 Tor Lillqvist <tml@iki.fi>
6884 Support added for building using a GNU toolchain on Win32,
6885 i.e. gcc -mno-cygwin on cygwin (a.k.a. mingw32, using egcs-1.1.2).
6887 * README.win32: Updated.
6888 * build-dll makefile.cygwin tests/makefile.cygwin: New files.
6889 * glib.h glib.def glibconfig.h.win32: Slight updates.
6890 * gmain.c: No need to include <fcntl.h> and <io.h> on Win32.
6891 * gmain.c gutils.c testglib.c tests/string-test.c: Test for
6892 NATIVE_WIN32, not _MSC_VER.
6893 * gmutex.c: Must declare g_thread_functions_for_glib_use as
6894 exported (using the GUTILS_C_VAR macro).
6895 * gutils.c gmodule/libgplugin_[ab].c: LibMain not needed.
6896 * gmodule/gmoduleconf.h.win32: Need underscore with gcc.
6897 * gthread/gthread.c: With gcc on Win32, must use memcpy to assign
6898 value of g_thread_functions_for_glib_use (?).
6899 * makefile.msc tests/makefile.msc: Cosmetics.
6901 Fri Apr 23 14:29:25 BST 1999 Tony Gale <gale@gtk.org>
6903 * glib.h: Fix typo in g_string_ncasecmp macro (by me).
6904 Add b_string_strncasecmp macro.
6906 1999-04-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6908 * gutils.c (g_get_any_init): use sysconf (_SC_GETPW_R_SIZE_MAX) as
6909 the new initinal bufsize for getpwuid_r on systems, that support
6910 this. Hint from Holger Duerer <H.Duerer@zait.uni-bremen.de>.
6912 Sat Apr 17 20:55:13 BST 1999 Tony Gale <gale@gtk.org>
6914 * glib.h, gstring.c: Add new g_string functions for reading
6915 from file/socket descriptors, and tokenising strings.
6917 Added various g_string macros.
6919 Tue Apr 13 23:28:32 1999 Tor Lillqvist <tml@iki.fi>
6921 * README.win32: Mention the tests directory.
6923 * glib.def: Add the functions from grand.c.
6925 * glibconfig.h.win32: Add unsigned max values, and the format
6928 * makefile.msc: Add grand.
6930 * tests/{date-test,node-test}.c: Include <stdlib.h> for exit().
6932 * tests/makefile.msc: New file.
6934 1999-04-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6936 * glib.h: Moved struct declaration up. Style fixes.
6938 * grand.c: Style fixes. Only try to open /dev/random once.
6940 * tests/rand-test.c (main): New tests; Slight bug fix.
6942 1999-04-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6944 * grand.c, tests/rand-test.c: New files to implement the Mersenne
6945 Twister Pseudo Random Number Generator.
6947 * glib.h, AUTHORS, Makefile.am, tests/Makefile.am: Changed
6950 Thu Apr 8 21:12:30 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
6952 * Released GLib 1.3.0
6954 1999-03-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
6956 * configure.in: Added a check for the right format to printf and
6957 scanf long longs. It is %qi instead of %lli on FreeBSD for
6960 1999-03-28 Raja R Harinath <harinath@cs.umn.edu>
6962 * Makefile.am (glibconfig.h): Make sure `glibconfig.h' exists
6963 after the rule is fired.
6964 (install-exec-local): Install glibconfig.h only if the contents
6965 are different from the currently installed glibconfig.h.
6967 1999-03-26 Raja R Harinath <harinath@cs.umn.edu>
6969 * Makefile.am (configexecincludedir): Rename from
6970 configincludedir so that glibconfig.h will be installed
6971 as part of `make install-exec'.
6973 Thu Mar 25 22:45:47 1999 Tor Lillqvist <tml@iki.fi>
6975 * config.h.win32: Update version numbers.
6977 * glibconfig.h.win32: Update version numbers and pthreads-win32-
6978 related magic values.
6980 * README.win32: Some improvements.
6982 * makefile.msc: Add gqueue and gstack. Correct version number.
6984 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
6990 * ltmain.sh: upgrade to libtool 1.2f
6992 * autogen.sh: libtool is not required to autogen glib
6994 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
6997 1999-03-18 Jeff Garzik <jgarzik@pobox.com>
6999 * glib.def: Add new g_list, g_stack, g_queue functions.
7001 1999-03-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
7003 * configure.in: added new AC_SUBST(GTHREAD_COMPILE_IMPL_DEFINES)
7004 to hold various defines to get the right thread implementation on
7005 different platforms. Also look in -ldce for pthread_create. Should
7006 make it work on HP-UX 10.x. Information from "D. Emilio Grimaldo
7007 Tunon" <emilio_tunon@nl.compuware.com>.
7009 1999-03-17 Jeff Garzik <jgarzik@pobox.com>
7011 * gstack.c, gqueue.c:
7012 Add copyright, clean up code a bit.
7014 1999-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
7016 * configure.in: Added missing values for G_MAXU(SHORT|INT|LONG) on
7017 platforms with only /usr/include/values.h.
7019 * acconfig.h: Removed unnecessary macros.
7021 * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
7022 from config.h.win32 to glibconfig.h.win32. Taken from glib 1.2
7025 * configure.in: Also accept _Pctime_r instead of ctime_r, while
7026 seraching for the right `_REENTRANT' flag. This is for Digital
7027 UNIX 4.0d. Taken from glib 1.2 branch.
7029 Wed Mar 17 03:14:56 1999 Tim Janik <timj@gtk.org>
7031 * glib.h: added GLIB_CHECK_VERSION() macro similar to
7032 GTK_CHECK_VERSION().
7034 Wed Mar 17 01:46:28 1999 Tim Janik <timj@gtk.org>
7036 * merges from glib-1-2:
7038 Sun Mar 14 17:50:35 1999 Tim Janik <timj@gtk.org>
7040 * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
7041 to g_return_if_fail().
7043 (g_mem_chunk_print):
7044 (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
7047 * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
7048 to g_return_if_fail().
7049 * grel.c (g_*): changed a bunch of g_assert() statements to
7050 g_return_if_fail() and added some extra ones to check relation != NULL.
7052 Tue Mar 9 23:25:50 1999 Tim Janik <timj@gtk.org>
7054 * configure.in: check for working realloc (NULL,).
7055 * gmem.c (g_realloc): use malloc() for initial allocation on systems
7056 where realloc(NULL,) will not work (this is the case on SunOS, reported
7059 Mon Mar 8 07:42:08 1999 Tim Janik <timj@gtk.org>
7061 * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
7062 flag around the call to g_hook_free() to avoid spurious
7063 warnings (happens during destruction phase).
7065 1999-03-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
7067 * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
7068 Friedrich Dominicus <Friedrich.Dominicus@inka.de>
7070 1999-03-16 Timur Bakeyev <mc@bat.ru>
7072 * configure.in: Fix problem with pthread_create in libc, as running
7073 "gcc test.c -l " is not legal.
7075 1999-03-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
7077 * tests/type-test.c: Added a test for the
7078 G_(U)?INT(16|32|64)_FORMAT and G_(MIN|MAX|MAXU)(SHORT|INT|LONG)
7081 * configure.in: Removed G_(U)?INT8_FORMAT again, as it can't be
7084 * configure.in: Added the macros G_MAXU(SHORT|INT|LONG). I do not
7085 know how to handle these on platforms with /usr/include/values.h,
7086 but without /usr/include/limits.h. Please someone add this.
7089 1999-03-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
7091 * configure.in: Added the macros G_(U)?INT(8|16|32|64)_FORMAT to
7092 use for printf and (much more important) scanf format strings for
7093 the corresponding GLib types.
7095 * glib.h Added G_(U)?(SHORT|INT|LONG)_FORMAT for consistency. It
7096 however makes no sense to also provide G_(FLOAT|DOUBLE)_FORMAT, as
7097 they are different for printf (f for both) and scanf (f for float,
7098 lf for double). Defining G_INT_FORMAT makes sense however, as we
7099 might want to define gint to something different than int someday
7100 in the future. Idea from Sascha Brawer <sb@adasys.ch>.
7102 1999-03-14 Jeff Garzik <jgarzik@pobox.com>
7105 Commented out debugging output.
7107 * tests/Makefile.am, tests/date-test.c:
7108 Added test of the GDate module, based closely on testgdate.c.
7110 * tests/Makefile.am:
7111 Bugfix - compile tests with @GLIB_DEBUG_FLAGS@.
7113 1999-03-14 Raja R Harinath <harinath@cs.umn.edu>
7115 * configure.in (glibconfig.h): Remove widechar tests and defines.
7116 (fd_set): Change the grep for `fd_mask' to search for `fd_set'.
7117 * gerror.c (fd_mask): Remove conditional typedef. It is not used
7118 elsewhere in the file.
7119 * gmain.c (fd_mask): Likewise.
7121 1999-03-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
7123 * configure.in: Test for posix threads first, then for dce threads.
7125 1999-03-11 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
7127 * configure.in: Revamped the thread configure stuff. Now dce
7128 threads (old posix draft) are recogniced. This is necessary,
7129 because dce threads are in fact working quite differently from
7130 posix threads. Also changed the conditions for checking for MT
7131 safe functions a bit, because G_THREADS_IMPL_NONE still have to
7132 compile thread safe. NOTE: Please do not commit my change to
7133 glib-1-2/{acconfig.h,configure.in,config.h.win32} from 1999-03-03,
7134 as the current change will take care of that too.
7136 Tue Mar 9 14:37:32 1999 Jeff Garzik <jgarzik@pobox.com>
7138 * Makefile.am, glib.h, gstack.c, gqueue.c,
7139 tests/Makefile.am, tests/queue-test.c, tests/stack-test.c:
7140 Added stack, queue ADTs and related tests.
7143 New g_list_delete() function.
7145 Sat Mar 6 11:03:08 1999 Asbjorn Pettersen <ape@lrdpf.spacetec.no>
7147 * gutils.c (g_get_any_init): add OS/2 changes.
7148 change '\\' in HOME to '/'.
7150 1999-03-03 Josh MacDonald <jmacd@spin.dsl.pacbell.net>
7152 * glib.def: g_spaced_primes_closest was omitted here, so I
7153 couldn't build Xdelta on Windows.
7155 1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
7157 * gutils.c (g_get_any_init): Fixed yet another bloody
7158 implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
7159 <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
7160 test better than that, but have no idea, how to do that easily.
7162 Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org>
7164 * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
7167 * configure.in: set glib version to 1.3.0.