1 2001-07-12 Mark Murnane <Mark.Murnane@sun.com>
3 * glib/gmessages.c: Changed prototype of printf_string_upper_bound
4 to return gsize. Now matches the actual function body.
6 * glib/gstrfuncs.c (g_strrstr_len): Changed type of parameter #2
7 from gint to gssize. Now matches the prototype in gstrfuncs.h.
9 2001-07-11 Darin Adler <darin@bentspoon.com>
11 * .cvsignore: Add some generated files.
13 * glib/gmain.c: (g_main_context_iterate): Comment out cruft
14 after #endif to avoid gcc warning.
15 * gmodule/gmodule.c: (g_module_set_error_unduped): Remove
16 const from type to avoid gcc warning.
17 * gobject/gsignal.c: (g_signal_emitv): ifdef variable used
18 only if G_ENABLE_DEBUG to avoid gcc warning.
19 * gobject/gtype.c: (type_iface_vtable_init_Wm),
20 (type_iface_vtable_finalize_Wm): ifdef call needed only
21 if !G_DISABLE_ASSERT to avoid gcc warning.
22 * tests/testglib.c: (main): ifdef call needed only if
23 !G_DISABLE_ASSERT to avoid gcc warning. Maybe later we
24 should make the test to #undef G_DISABLE_ASSERT.
25 * tests/unicode-collate.c: Add include of <string.h> to
28 Wed Jul 11 11:13:50 2001 Owen Taylor <otaylor@redhat.com>
30 * glib/Makefile.am (libglib_1_3_la_SOURCES): Add gunicomp.h
31 (Reported by Sven Neumann).
33 * glib/guniprop.c (g_utf8_str/updown) glib/gunicollate.c
34 (g_utf8_collate_key): Fix shadowing problems reported by
35 many (D. Adler, S. Neumann, M. Murmane, L. Peter)
37 Fri Jul 6 00:02:41 2001 Tim Janik <timj@gtk.org>
39 * glib/gmessages.c (printf_string_upper_bound): fix negative exponent
42 * glib/gutils.h (g_bit_storage): take a gulong as argument.
43 same for g_bit_nth_lsf() and g_bit_nth_msf() as mask.
45 2001-07-08 Martin Baulig <baulig@suse.de>
47 * tests/unicode-normalize.c, tests/unicode-collate.c:
48 Reflect latest g_io_channel_new_file() API changes, use
49 G_IO_FILE_MODE_READ instead of "r".
51 Fri Jul 6 22:34:32 2001 Owen Taylor <otaylor@redhat.com>
53 * glib/gunicode.h glib/gunidecomp.c glib/guniprop.c
54 glib/gunicollate.c: Add length arguments to
55 g_utf8_{strup,strdown,casefold,collate_key}.
57 * glib/gdate.c: Fix for above.
59 2001-07-06 Pablo Saratxaga <pablo@mandrakesoft.com>
61 * configure.in: added Basque (eu) to ALL_LINGUAS
63 Mon Jul 2 19:48:52 2001 Andrew Lanoix <alanoix@umich.edu>
65 *giowin32.c: g_source_remove()ing an socket iochannel closes
66 the socket when it should not. Patch by Peter Zelezny
69 *giowin32.c: Fix a few typos
71 Mon Jul 2 16:03:21 2001 Owen Taylor <otaylor@redhat.com>
73 * glib/giochannel.c (g_io_channel_get_buffer_condition): Fix.
75 * glib/giunix.c: Fix prepare/check/dispatch for watches.
77 * tests/unicode-normalize.c: #include <string.h>
79 Sat Jun 30 23:14:32 2001 Tim Janik <timj@gtk.org>
81 * glib/glist.[hc]: added g_list_insert_before().
83 * glib/gslist.c (g_slist_insert_before): provide an implementation,
84 prototype was already present...
86 Sun Jul 1 20:16:25 2001 Owen Taylor <otaylor@redhat.com>
88 * glib/guniprop.c (g_unichar_totitle): Use G_N_ELEMENTS
89 rather than a custom macro.
91 * glib/gen-unicode-tables.pl: Adapt to changes in table
92 formats for Unicode 3.1
94 * glib/gunicode.h glib/guniprop.c glib/gunichartables.h
95 glib/gen-unicode-tables.pl: Add case conversion functions
96 g_utf8_casefold, g_utf8_strup, g_utf8_strdown.
98 * tests/unicode-caseconv.c tests/gen-casefold-txt.pl
99 tests/gen-casemap-txt.pl tests/casefold.txt
100 tests/casemap.txt: Test cases for case conversion.
102 * glib/gunicode.h glib/gunidecomp.[ch] glib/gunicomp.h
103 glib/gen-unicode-tables.pl: Add function to do Unicode
104 normalization g_utf8_normalize().
106 * tests/unicode-normalize.c: Test program for case conversion.
108 * glib/gunicode.h glib/gunicollate.c: Add collation functions
109 g_utf8_collate, g_utf8_collate_key.
111 * test/unicode-collate.c: Test program for collation.
113 * glib/gdate.c (g_date_fill_parse_tokens): Fix uninitialized
116 * glib/gdate.c (g_date_strftime) docs/Changes-2.0.txt:
117 Make work with UTF-8 even if the locale isn't UTF-8 based.
118 Still somewhat of broken, if the format string contains
119 characters not representable in the current locale, will warn
122 * glib/gdate.c: Use UTF-8 normalization and casefolding.
124 Sat Jun 30 16:03:16 2001 Owen Taylor <otaylor@redhat.com>
126 * glib/giowin32.c glib/giounix.c glib/gmain.[ch]:
127 Rename GSourceFuncs::destroy to GSourceFuncs::finalize.
130 Sat Jun 30 15:49:10 2001 Owen Taylor <otaylor@redhat.com>
132 * glib/gmain.[ch]: (Mostly patch from Sebastian Wilhemi)
133 Make some changes to the way that GMainContext works:
135 - a GMainContext is no longer associated with a single
136 thread, but any thread can acquire ownership
137 of thread and iterate.
139 - There is a facility g_main_context_wait() for
140 non-owner-threads to wait either for ownership
141 or for a condition to be broadcast.
143 - For efficiency, GMainLoop just piggybacks of
144 of the loops mutex / condition instead of
145 having a separate mutex/condition for each
148 * glib/gthread.[ch]: Remove hacks to store the thread's
149 GMainContext in the GThread structures, since we
150 no longer have the GMainContext <=> GThread correspondence.
152 * glib/gmain.[ch]: Make g_main_context_wakeup() public
153 so someone could completely duplicate GMainLoop
156 * tests/mainloop-test: Fix up to the new API. Decidedly
157 doesn't work at the moment, but that may be the IO
158 channel changes, or preexisting locking problems.
160 Sat Jun 30 13:18:28 2001 Owen Taylor <otaylor@redhat.com>
162 * glib/gstrfuncs.c glib/gstring.h: Try compiling
163 before committing, why don't you? Simple fixes
166 Sat Jun 30 12:49:26 2001 Owen Taylor <otaylor@redhat.com>
168 Patch from Darin Adler (#54166)
170 * glib/gstrfuncs.[ch]: Add ascii-only, locale-insensitive
171 g_ascii_to[lower/upper], g_ascii_str[down/up],
172 g_ascii_is[upper/lower] and deprecate the locale-affected
173 versions which break for UTF-8, etc. Make
174 g_ascii_strup/strdown duplicating,
175 not in-place for consistency with UTF-8 functions.
177 * glib/gstring.[ch]: Add ascii-only, locale-insensitive
178 g_string_ascii_[down/up], and deprecate the locale-affected
179 versions which break for UTF-8, etc.
181 * glib/gutils.c glib/gwin32.c test/testglib.c: Use
182 the g_ascii_* functions where appropriate.
184 Fri Jun 29 13:36:39 2001 Owen Taylor <otaylor@redhat.com>
186 * glib/gstring.[ch] (g_string_set_size): Add function to
187 allow setting the length of a string greater than the
188 current length (for buffering usage)
190 * glib/gstring.[ch]: Expose string->allocated_len, since
191 that is useful when using GString simply as a buffer.
192 (Renamed from string->alloc)
194 * glib/giochannel.[ch] glib/giounix.c glib/giowin32.c:
195 Major patch from Hidetoshi Tajima and Ron Steinke
196 reworking GIOChannel to have:
199 - Sane and useful error reporting
200 - Streaming encoding conversion with iconv
201 - Convenience functions to read by lines or
204 Also fix remaining 64 bit cleanliness issues.
206 * tests/iochannel-test.c tests/Makefile.am: Test case
207 for IO channel streaming conversion. Still needs
210 Thu Jun 28 16:57:44 2001 Tim Janik <timj@gtk.org>
212 * configure.in (GLIB_MICRO_VERSION): up version number to 1.3.7,
213 interface age 0, binary age 0.
215 2001-06-27 Kjartan Maraas <kmaraas@gnome.org>
217 * glib/gmarkup.c: Fix a typo.
219 2001-06-27 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
221 * Makefile.am, configure.in: Removed glib-config-2.0, as we have
224 * glib/Makefile.am: Added -I$(top_srcdir) for builddir != srcdir.
226 * Makefile.am: Removed gen-unicode-tables.pl from EXTRA_DIST.
228 Tue Jun 26 11:43:46 2001 Owen Taylor <otaylor@redhat.com>
230 * configure.in Makefile.am *.[ch] glib/*.[ch] glib/Makefile.am:
231 Move glib library into a subdirectory, make all GLib include
232 files include as <glib/glist.h>
234 * tests/testglib.c tests/testgdate.c tests/testgdateparser.c
235 tests/timeloop.c tests/timeloop-basic.c: Move all tests into
236 the tests/ subdirectory.
238 Sat Jun 23 17:34:38 2001 Tim Janik <timj@gtk.org>
240 * gmessages.c (g_logv): use G_BREAKPOINT() instead of raise(5).
242 Wed Jun 20 12:00:54 2001 Owen Taylor <otaylor@redhat.com>
244 Changes for 64-bit cleanliness, loosely based on patch
247 * gconvert.c (g_convert/g_convert_with_fallback): Remove
248 workarounds for since-fixed GNU libc bugs. Minor
251 * gconvert.[ch]: Change gint to gsize/gssize as
254 * gconvert.c (g_locale/filename_to/from_utf8): Fix incorrect
255 computation of bytes_read / bytes_written.
257 * gfileutils.[ch] (g_file_get_contents): Make length
258 out parameter 'gsize *len'.
260 * ghook.c (g_hook_compare_ids): Don't compare a
263 * gmacros.h (GSIZE_TO_POINTER): Add GPOINTER_TO_SIZE,
266 * gmain.c (g_timeout_prepare): Rewrite to avoid
267 overflows. (Fixes bug when system clock skews
268 backwards more than 24 days.)
270 * gmarkup.[ch]: Make lengths passed to callbacks
271 gsize, length for g_markup_parse-context_parse(),
272 g_markup_escape_text() gssize.
274 * gmessages.[ch] (g_printf_string_upper_bound): Change
275 return value to gsize.
277 * gmessages.c (printf_string_upper_bound): Remove
278 a ridiculous use of 'inline' on a 300 line function.
280 * gstring.[ch]: Represent size of string as a gsize,
281 not gint. Make parameters to functions take gsize,
282 or gssize where -1 is allowed.
284 * gstring.c (g_string_erase): Make
285 g_string_erase (string, pos, -1) a synonym for
286 g_string_truncate for consistency with other G*
289 * gstrfuncs.[ch]: Make all functions taking a string
290 length, take a gsize, or gssize if -1 is allowed.
291 (g_strstr_len, g_strrstr_len). Also fix some boundary
292 conditions in g_str[r]str[_len].
294 * gutf8.c tests/unicode-encoding.c: Make parameters that
295 are byte lengths gsize, gssize as appropriate. Make
296 character offsets, other counts, glong.
298 * gasyncqueue.c gcompletion.c
299 timeloop.c timeloop-basic.c gutils.c gspawn.c.
300 Small 64 bit cleanliness fixups.
302 * glist.c (g_list_sort2, g_list_sort_real): Fix functions
303 that should have been static.
305 * gdate.c (g_date_fill_parse_tokens): Fix extra
306 declaration that was shadowing another.
308 * tests/module-test.c: Include string.h
310 Mon Jun 18 15:43:29 2001 Owen Taylor <otaylor@redhat.com>
312 * gutf8.c (g_get_charset): Make argument
313 G_CONST_RETURN char **.
315 2001-06-22 Andrew Lanoix <alanoix@umich.edu>
317 *giowin32.c: Debug and partial rewrite of async socket code
318 on windows, which fixes major MT issues. Some test code kindly
319 provided by wroberts1@home.com.
321 Thu Jun 14 14:09:46 2001 Owen Taylor <otaylor@redhat.com>
323 * gstrfuncs.c (g_strconcat): Fix a use of strcat that
324 wasn't replaced with g_stpcpy in the original
325 stpcpy-for-efficiency patch.
327 2001-06-11 Havoc Pennington <hp@redhat.com>
331 * configure.in (GLIB_MICRO_VERSION): increment version to 1.3.6
333 2001-06-08 Alex Larsson <alexl@redhat.com>
336 Added new functions g_strstr_len, g_strrstr and g_strrstr_len
338 * tests/strfunc-test.c:
339 Add some tests for the new functions.
343 Add length argument to g_utf8_strchr and g_utf8_strrchr.
345 2001-06-08 Havoc Pennington <hp@redhat.com>
347 * gspawn.c: support G_SPAWN_FILE_AND_ARGV_ZERO specifying that
348 the vector passed in to g_spawn_* contains a filename to
349 execute in argv[0] then the actual argv begins at argv + 1.
350 Kind of a lame hack, but this isn't something you commonly want
351 to do, and avoids adding more function arguments.
353 2001-06-08 Pablo Saratxaga <pablo@mandrakesoft.com>
355 * configure.in: Added Azeri (az) to ALL_LINGUAS
357 2001-06-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
359 * docs/Makefile.am, configure.in: Remove docs/glib-config.1.in.
361 * gthread-2.0-uninstalled.pc.in (Cflags): Add @G_THREAD_CFLAGS@.
363 2001-06-07 Havoc Pennington <hp@redhat.com>
365 * m4macros/glib-2.0.m4: subst GLIB_GENMARSHAL, GOBJECT_QUERY,
366 GLIB_MKENUMS variables
368 * gmodule-2.0.pc.in: add gmodule_supported variable
370 * glib-2.0.pc.in: add glib_genmarshal, gobject_query,
371 glib_mkenums variables
373 * configure.in: put G_MODULE_SUPPORTED value into
376 * autogen.sh: support AUTOGEN_SUBDIR_MODE
378 * Makefile.am: add -uninstalled.pc.in to EXTRA_DIST
380 2001-06-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
382 * configure.in: Look for nanosleep function.
384 * gtimer.c: Use nanosleep for g_usleep, when found.
386 * gtimer.c, gtimer.h: Add g_time_val_add function. Closes #54271.
388 * gasyncqueue.c: Documentation updates.
390 * gthreadpool.c: Use g_time_val_add now that we have it.
392 2001-06-01 Jon Trowbridge <trow@gnu.org>
394 * gdate.c (g_date_update_julian): Changed to take a const
395 argument, and then to cast out const.
396 (g_date_update_dmy): Changed to take a const argument, and then
398 (g_date_get_weekday): Changed argument to be const.
399 (g_date_get_month): Changed argument to be const.
400 (g_date_get_year): Changed argument to be const.
401 (g_date_get_day): Changed argument to be const.
402 (g_date_get_julian): Changed argument to be const.
403 (g_date_get_day_of_year): Changed argument to be const.
404 (g_date_get_monday_week_of_year): Changed argument to be const.
405 (g_date_get_sunday_week_of_year): Changed argument to be const.
406 (g_date_compare): Changed arguments to be const.
407 (g_date_to_struct_tm): Changed GDate argument to be const.
408 (g_date_strftime): Changed GDate argument to be const.
409 (g_date_clamp): Added. The equivalent of the CLAMP macro for
411 (g_date_order): Added. Ensure that the first GDate argument
412 preceeds the second, swapping them if necessary.
413 (g_date_days_between): Added. Computes the (signed) number of days
416 Mon Jun 4 16:02:57 2001 Owen Taylor <otaylor@redhat.com>
418 * gstrfuncs.c (g_strup/strdown): to match g_strcasecmp,
419 check if it is lower/upper before converting to upper/lower
420 [ not required by ISO... ] (#55682, Jon Trowbridge)
422 Mon Jun 4 15:59:15 2001 Owen Taylor <otaylor@redhat.com>
424 * gunicode.h: Make a bit more standalone by adding include
427 * gunicode.h: Change size_t to g_size. (Ugh)
429 2001-05-31 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
431 * grand.h (g_random_boolean, g_rand_boolean): Fix to stupid bug in
432 g_random_boolean, also both functions now return 1 or 0 instead of
435 * tests/rand-test.c: Extended testcases.
437 * configure.in: Remove G_HAVE_ISO_CXX_VARARGS and
438 G_HAVE_ISO_C_VARARGS and define G_HAVE_ISO_VARARGS directly
439 guarded by #if(n)def __cplusplus.
441 2001-05-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
443 * gthread-2.0.pc.in: Add @G_THREAD_CFLAGS@ to Cflags.
445 Tue May 29 18:17:11 2001 Owen Taylor <otaylor@redhat.com>
447 * autogen.sh (have_libtool): Fix GNU sedism
449 2001-05-29 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
451 * tests/Makefile.am, tests/qsort-test.c: Add test case for the
452 g_qsort_with_data func. It works. This fixes bug #52605.
454 * tests/Makefile.am, tests/cxx-test.C: Now that we check for a C++
455 compiler in configure.in anyway, I added a test, that the GLib
456 headers can be inclued into a C++ program. This fixes bug #52605.
458 * configure.in: Don't bail out, if no C++ compiler is
459 found. Define G_HAVE_ISO_VARARGS only if appropriate.
461 * gmessages.h: Thus we can revert the previous patch.
463 2001-05-29 James Henstridge <james@daa.com.au>
465 * gmessages.h: "#ifdef G_HAVE_ISO_VARARGS" will always succeed
466 even when we don't have ISO vararg support. Changed to
467 "#if G_HAVE_ISO_VARARGS".
469 Mon May 28 11:40:34 2001 Owen Taylor <otaylor@redhat.com>
471 * configure.in: Check for __VARARGS__ separately for C and C++.
473 2001-05-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
475 * configure.in: Fix typo.
477 Sun May 27 05:09:18 2001 Tim Janik <timj@gtk.org>
479 * gmain.c (g_main_context_prepare): unlock context when bailing
481 (g_main_context_check): same here.
483 * gmain.c (g_main_context_check): before returning due to
484 changed pollfds, unlock context.
486 Thu May 24 21:24:16 CEST 2001 Paolo Molaro <lupus@ximian.com>
488 * gmarkup.c: back out change by mitch@convergence.de and apply patch in
489 bug id #52067 that fixes the same problem in a more complete manner.
490 This fixes also a segfault for a malformed XML file and adds a new
493 2001-05-24 Hans Breuer <hans@breuer.org>
495 * grel.c : reflect renaming of g_string_sprintfa to g_string_printfa
497 * makefile.msc.in : create an additional static lib to be used from
498 (at least) glib-genmarshal
500 2001-05-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
502 * garray.c (g_array_remove_index_fast): Tiny speed improvement
503 suggested by noon@users.sourceforge.net.
505 2001-05-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
507 * config.h.win32.in: Removed POSIX_*. Defined G_THREAD_SOURCE to
510 * glibconfig.h.win32.in: Define G_HAVE_ISO_VARARGS for gcc, don't
511 know about MSC. Define G_THREADS_IMPL_WIN32 instead of
512 G_THREADS_IMPL_POSIX and define the right static mutex macros and
515 * glib.def: g_thread_create renamed to g_thread_create_full.
517 * gthread.c: memcpy is not necessary here. We can simply use
520 * gmessages.c: Fix compilation error on win32. Added
521 GFileDescriptor, wich is gint on Unix and FILE* on win32.
523 2001-05-21 Andrew Lanoix <alanoix@umich.edu>
525 *giowin32.c: G_IO_WIN32_WINDOWS_MESSAGES channels
526 not handled correctly in g_io_win32_check()
528 Sun May 20 10:47:47 2001 Owen Taylor <otaylor@redhat.com>
530 * configure.in: Fix some problems in writing out varargs
531 tests in configure.in
533 Fri May 18 10:52:23 2001 Owen Taylor <otaylor@redhat.com>
535 * configure.in gmessages.h: Use compile checks for ISO C99 and GNU
536 extension varargs macros syntax and store result in glibconfig.h
537 (G_HAVE_ISO_VARARGS, G_HAVE_GNUC_VARARGS) rather than relying
538 on checking predefined macros.
540 2001-05-18 Michael Natterer <mitch@convergence.de>
542 * gmarkup.c: don't g_strdup()/g_free() all parsed attributes and
543 their values twice but simply copy the string pointers from the
544 GMarkupAttribute struct to the string arrays before passing them
547 2001-05-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
549 * gthread.c, gthread.h: Renamed g_thread_create to
550 g_thread_create_full and added macro g_thread_create, which omits
551 'stack_size', 'bound' and 'priority' parameters. Also removed
552 'bound' from GThread struct.
554 * gthreadpool.h, gthreadpool.c: Adapted GThreadPool to the above
555 changes. GThreadPool lost the 'priority' and 'bound'
556 members. g_thread_pool_new the 'stack_size', 'bound' and
557 'priority' parameters.
559 * tests/mainloop-test.c, tests/thread-test.c,
560 tests/threadpool-test.c: Adapted to the above changes.
562 * gmem.c (g_mem_profile): Fixed mutex deadlock.
564 2001-05-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
566 * makefile.mingw.in: Add gpattern.o to objects.
568 * glib.def: Export g_thread_exit as well.
570 * Makefile.am: Fix BUILT_EXTRA_DIST exporting.
572 Sun May 13 10:31:17 2001 Owen Taylor <otaylor@redhat.com>
574 * glib/Makefile.am gobject/Makefile.am gmodule/Makefile.am:
575 Add inter-library dependencies.
577 * acinclude.m4: Remove libtool macros.
579 * autogen.sh: Require libtool-1.4, automake-1.4p1.
581 2001-05-15 Havoc Pennington <hp@redhat.com>
583 * configure.in (AC_OUTPUT): m4macros/Makefile
585 * m4macros/Makefile.am, m4macros/glib-2.0.m4,
586 m4macros/glib-gettext.m4:
587 m4 files moved here on server, Makefile.am added
589 This is so you can aclocal -I m4macros while avoiding acinclude.m4
591 * Makefile.am: add m4macros subdir, remove references to glib-2.0.m4
593 2001-05-14 Havoc Pennington <hp@redhat.com>
595 * gutf8.c (g_utf8_get_char): fix docs; they said we validated
596 the UTF-8, but we can't possibly detect partial chars since
597 there's no length arg here, so trying to use this function
598 on invalid UTF-8 is a bad idea.
600 Thu May 10 23:21:30 2001 Owen Taylor <otaylor@redhat.com>
602 * gmessages.c (g_log_write_prefix): Avoid using stdio
603 to be as robust as possible in out-of-memory.
605 * gmessages.c (g_log_default_handler): Remove some dead
608 * gutils.c (g_parse_debug_string): Fix to avoid mallocs.
610 Fri May 11 18:25:23 2001 Tim Janik <timj@gtk.org>
614 (g_datalist_foreach): make these safe against removal of the
617 2001-05-10 Havoc Pennington <hp@pobox.com>
619 * gmessages.c (g_log_write_prefix): change env variable to
620 G_MESSAGES_PREFIXED, suggested by Tim
622 Thu May 10 15:19:01 2001 Tim Janik <timj@gtk.org>
624 * gscanner.c (g_scanner_key_hash): use g_str_hash() algorithm
627 * gmem.c (standard_calloc): free() doesn't return a value
630 2001-04-26 Havoc Pennington <hp@redhat.com>
632 * configure.in: Get rid of --enable-msg-prefix
634 * gmessages.c: make whether to prefix the messages with
635 appname/pid a runtime setting, not a compile-time setting. Change
636 default to include prefix for debug/warning/error type messages.
638 2001-05-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
640 * gthread.c, gthread.h: Renamed 'value' and 'arg' to 'data' and
641 'thread_func' to 'func' to make it more consistent with the rest
644 * gthreadpool.c, gthreadpool.h: Moved 'stack_size' from the public
645 members of GThreadPool to the private ones. Renamed 'thread_func'
646 to 'func' as above. Moved up 'user_data' in g_thead_pool_new
647 argument list and in GThreadPool struct.
649 Tue May 8 15:33:31 2001 Tim Janik <timj@gtk.org>
651 * gcompletion.h: removed #include <unistd.h> sneaked in by
654 2001-05-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
656 * gmain.c, gthread.c, gthread.h: Moved func and arg members from
657 GRealThread to GThread, such that they can be accessed by the
660 * gthread.c, gthread.h: Due to popular demand (Tim being the
661 populus here ;-) threads now have a 'return value', which is
662 returned by g_thread_join and is either the return of the topmost
663 thread function or the value given to g_thread_exit.
665 * gthreadpool.c, tests/mainloop-test.c, tests/thread-test.c:
666 Adapted to the above change.
668 2001-01-06 Hans Breuer <hans@breuer.org>
670 * glib.def : don't try to export g_strcpy, it is g_stpcpy;
671 updated and added some tweaking for functions which got
672 renamed recently, to avoid the update hassle if it can
673 simply be done compatible. Should vanish if there is a
674 stable version for win32.
676 Fri May 4 11:49:18 2001 Owen Taylor <otaylor@redhat.com>
682 * configure.in (GLIB_MICRO_VERSION): Up version to 1.3.5,
683 interface/binary age 0.
685 2001-05-04 Sven Neumann <sven@convergence.de>
687 * ghash.c: fixed a typo in a comment.
689 * gtree.[ch]: added new functions g_tree_new_full(), g_tree_replace(),
690 g_tree_steal() and g_tree_foreach() to adapt GTree to the GHashTable
691 API. Moved comments into the C file.
693 * docs/reference/glib/glib-sections.txt
694 * docs/reference/glib/tmpl/glib-unused.sgml
695 * docs/reference/glib/tmpl/hash_tables.sgml
696 * docs/reference/glib/tmpl/linked_lists_double.sgml
697 * docs/reference/glib/tmpl/linked_lists_single.sgml
698 * docs/reference/glib/tmpl/macros_misc.sgml
699 * docs/reference/glib/tmpl/trees-binary.sgml: updated documentation
701 Thu May 3 06:38:28 2001 Owen Taylor <otaylor@redhat.com>
703 * g[s]list.c (g_[s]list_foreach) docs/Changes-2.0.txt: Make
704 foreach() safe against removal of the _current_ element. While
705 this could break some code, the new behavior is consistent with
706 the rest of GLib/GTK+ and probably is what people expect in most
707 cases. (Suggested by Paul Kuykendall, #50071)
709 Wed May 2 11:10:22 2001 Owen Taylor <otaylor@redhat.com>
711 * gutf8.c (g_utf8_to_ucs4_fast): Fix read past end of the string.
712 (#50404, fix from Jonas Borgström)
714 Sun Apr 29 00:37:34 2001 Tim Janik <timj@gtk.org>
716 * ghook.[hc]: made hook ids a gulong.
718 2001-04-20 Dan Winship <danw@ximian.com>
720 * configure.in: Add a check for the Darwin dynamic linker. Use
721 AC_TRY_LINK when checking for "nonposix getpwuid_r" so it notices
722 "no getpwuid_r" correctly.
724 * testglib.c (main): Make template[] bigger to prevent an overrun.
725 Remove an unused variable. Initialize error to NULL.
727 * tests/gio-test.c (main): Add a cast to prevent a warning when
730 * tests/type-test.c (main): Add an #ifdef to prevent a warning
731 when G_HAVE_GINT64 is defined and G_GINT64_FORMAT isn't.
733 2001-04-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
735 * ghash.c, ghash.h: Remove definition of g_hash_table_freeze and
736 g_hash_table_thaw. Instead added G_DISABLE_DEPRECATED-guarded
737 macros to ghash.h to go along the lines of the standard.
739 * gscanner.c, gscanner.h: Dito for g_scanner_freeze_symbol_table
740 and g_scanner_thaw_symbol_table.
742 * gutils.c, gutils.h: Dito for g_dirname. g_basename is still
743 defined in gutils.c, but declared ing gutils.h only
744 G_DISABLE_DEPRECATED-guarded.
746 * configure.in: Removed bashism in test for the pkg-config
749 * configure.in: Rewrote test for multithread flag. Now uses
750 localtime_r, which hopefully has a consistent prototype across
751 different platforms. Also it uses a clever double EGREP trick
752 instead of compiling, which could give false positives. Thanks to
753 Dan Winship <danw@ximian.com> for the hint.
755 Wed Apr 18 17:35:38 2001 Owen Taylor <otaylor@redhat.com>
757 * gutils.c (_glib_gettext): Add missing static pointed
758 out by Michael Meeks.
760 Wed Apr 18 09:37:07 2001 Owen Taylor <otaylor@redhat.com>
762 * MAINTAINERS: Removed. Keeping README, README.cvs-commits
763 HACKING, and AUTHORS up to date is plenty without extra
764 random files that someone thought a module should have.
765 (Actually, I believe this was used for debbugs in the past.)
767 Tue Apr 17 11:47:07 2001 Owen Taylor <otaylor@redhat.com>
773 Tue Apr 17 10:43:36 2001 Owen Taylor <otaylor@redhat.com>
775 * gstrfuncs.c: Define _GNU_SOURCE for stpcpy
777 * tests/mainloop-test.c (main): Wait for all threads
778 to start before beginning tests.
780 2001-04-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
782 * gthreadpool.c (g_thread_pool_thread_proxy): Until now every
783 thread pool always had at least one tread waiting to avoid
784 switching overhead in case a new task would be added soon after
785 one finished. This however means a big waste of threads, if many
786 mostly inactive thread pools are involved. Now such a waiting
787 thread will only wait for half a second (This value is of course
788 very randomly picked) and go to the global threadpool afterwards.
790 Mon Apr 16 12:04:52 2001 Owen Taylor <otaylor@redhat.com>
792 * configure.in: Remove warnings about conflicts with the
795 * glib-2.0.m4: Fix some of the error text to be halfway
798 * README.in INSTALL.in: Add these to generate README, INSTAL
799 (as in the stable branch). Update.
803 2001-04-16 Havoc Pennington <hp@redhat.com>
809 * gwin32.c: docs fixes
817 2001-04-16 Havoc Pennington <hp@redhat.com>
819 * glib-2.0.m4: put AC_PATH_PROG(pkg-config) before "Checking for
820 glib" so the output looks right
822 2001-03-23 Havoc Pennington <hp@redhat.com>
824 * gutils.c (g_parse_debug_string): make GDebugKeys argument
827 2001-04-14 Hans Breuer <hans@breuer.org>
830 * makefile.msc.in : updated
832 * gpattern.c : include "gutils.h" to resolve the inline hassle
834 2001-04-11 Alexander Larsson <alexl@redhat.com>
836 * glib-2.0.m4: Pass pkg-config options
837 before the other args so it works even if
838 POSIXLY_CORRECT is set.
840 Mon Apr 9 18:57:44 2001 Tim Janik <timj@gtk.org>
842 * configure.in: increment version to 1.3.4 (binary 0, interface 0).
844 2001-04-05 Christian Rose <menthos@menthos.com>
846 * configure.in: Added sv to ALL_LINGUAS.
848 Wed Apr 4 09:18:55 2001 Tim Janik <timj@gtk.org>
850 * Released GLib-1.3.3.
852 Tue Apr 3 20:22:59 2001 Tim Janik <timj@gtk.org>
856 * NEWS.pre-1-3: take over old news.
858 Tue Apr 3 12:38:16 2001 Owen Taylor <otaylor@redhat.com>
860 * glib-config-2.0.in: Exit with an error message that you
861 should use pkg-config instead.
863 * configure.in (PACKAGE): Require pkg-config.
865 * tests/Makefile.am (EXTRA_DIST): Add utf8.txt.
867 * configure.in (GLIB_MICRO_VERSION): Up MICRO to 3,
868 leave interface/binary at 0.
870 Tue Apr 3 13:46:22 2001 Tim Janik <timj@gtk.org>
872 * glist.[hc]: added g_list_nth_prev() which walks ->prev instead
875 * gpattern.[hc]: added shell-style pattern matching code from beast,
876 derived from the gtk_pattern_*() code, but with a couple of bug fixes
877 and a number of optimizations.
879 2001-04-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
881 * gthreadpool.c: Added documentation.
883 * gthreadpool.c: The global thread pool now also is seperated for
884 bound and unbound threads. Only threads with standard stack size
885 go to the global pool. g_thread_pool_new now protects the global
886 setup of inform_mutex etc. with a lock. Fixed some typos. Unlock
887 the queue after g_thread_pool_wakeup_and_stop_all in the proxy.
889 2001-04-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
891 * gmain.c: Use the new GRealThread member "context" instead of a
892 GStaticPrivate to store the thread specific main loop context.
894 * gthread.c: Added "context" member to GRealThread and updated
895 g_thread_create, g_thread_self and g_thread_cleanup accordingly.
897 * gthread.c, gthread.h: Removed the functions
898 g_static_private_(get|set)_for_thread and adapted
899 g_static_private_(get|set) and g_static_private_free
900 accordingly. This fixes Bug #51435.
902 2001-03-30 Sven Neumann <sven@gimp.org>
905 * docs/reference/glib/tmpl/hash_tables.sgml: added new functions
906 g_hash_table_new_full, g_hash_table_replace, g_hash_table_steal and
907 g_hash_table_foreach_steal. Moved most docs out of the template
908 file into the C file. Please proofread the new documentation.
910 2001-03-29 Tor Lillqvist <tml@iki.fi>
913 * tests/makefile.mingw.in
914 * tests/makefile.msc.in: Add module-test rules.
916 Mon Mar 26 14:14:53 2001 Owen Taylor <otaylor@redhat.com>
918 * Makefile.am (INCLUDES): -DG_DISABLE_DEPRECATED
920 * gmain.h timeloop.c: Surround the cruftiest stuff with
921 #ifndef G_DISABLE_DEPRECATED.
923 * gcompat.h gdate.h: Move compat defines back to
924 gdate.h, surround with #ifndef G_DISABLE_DEPRECATED.
927 Mon Mar 26 13:34:50 2001 Owen Taylor <otaylor@redhat.com>
929 [ Patch from DindinX <David.Odin@bigfoot.com>, added docs ]
931 * gstrfuncs.c, gstrfuncs.h: Add g_stpcpy () for platform that don't
933 * gstrfuncs.c (g_strjoin, g_strjoinv and g_strconcat): use
934 g_stpcpy () so these functions run much faster.
935 * config.h.win32.in, glib.def: add reference to g_stpcpy ()
936 * configure.in: Add a test for the stpcpy () function.
938 2001-03-20 Havoc Pennington <hp@redhat.com>
940 * gutf8.c (g_utf8_strlen): rewrite, based on bug #52328 from
943 2001-03-19 Havoc Pennington <hp@redhat.com>
945 * gutf8.c (g_unichar_validate): added this function
947 2001-03-18 Tor Lillqvist <tml@iki.fi>
949 * gspawn-win32.c (SETUP_DEBUG): Add braces to silence gcc -Wall.
951 * gspawn-win32-helper.c (write_no_error): Remove unused function.
953 * tests/makefile.mingw.in (module-test.exe): Add rules for
954 building module-test.
956 Wed Mar 14 18:46:54 2001 Tim Janik <timj@gtk.org>
958 * gscanner.[hc]: removed archaic gpointer derived_data; relict and
959 added a GData member instead.
961 * glist.[hc]: added g_list_remove_all().
963 * gslist.[hc]: added g_slist_remove_all().
965 Sat Mar 17 19:54:51 2001 Owen Taylor <otaylor@redhat.com>
967 * timeloop.c: Reorder headers to make FreeBSD happy.
969 2001-03-13 Tor Lillqvist <tml@iki.fi>
971 From Edward M. Lee <tailbert@yahoo.com>:
973 * gdate.c (g_date_set_parse): add support for dates that in the
974 form "Wed Mar 14 2001". Running testgdate on cygwin requires this.
976 Fri Mar 9 18:01:43 2001 Tim Janik <timj@gtk.org>
978 * gscanner.[hc]: made config arg to g_scanner_new() const.
980 2001-03-12 Tor Lillqvist <tml@iki.fi>
982 * tests/Makefile.am (libmoduletestplugin_b_la_LIBADD,
983 libmoduletestplugin_b_la_LIBADD): Link with the libgmodule la only
986 2001-03-10 Tor Lillqvist <tml@iki.fi>
988 * glibconfig.h.win32.in: Define G_PLATFORM_WIN32 here, too.
990 * tests/Makefile.am: Use the _LIBADD dependency on libglib only on
993 2001-03-09 Tor Lillqvist <tml@iki.fi>
995 * README.win32: Update with some information about using configure
998 2001-03-09 Hans Breuer <hans@breuer.org>
1000 * gobject/gobject.def : updated
1002 2001-03-08 Tor Lillqvist <tml@iki.fi>
1005 * gobject/gobject.def
1006 * gobject/makefile.mingw.in: Update.
1008 2001-03-08 Sven Neumann <sven@gimp.org>
1011 * docs/reference/glib/tmpl/trees-binary.sgml: added new function
1012 g_tree_lookup_extended().
1014 Thu Mar 8 16:23:34 2001 Tim Janik <timj@gtk.org>
1016 * ghook.[hc]: destruction cleanup. there's one
1017 ->finalize_hook member in the hooklist now that gets
1018 called when a hook should be destroyed, that's it.
1019 that function is guarranteed to be called only when
1020 all ref_counts to the hook vanished, thus also when
1021 the hook is not in call.
1023 2001-03-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1025 * configure.in (FLAG_DOES_NOT_WORK): Fix typo and thus bug #51862.
1027 Wed Mar 7 09:32:06 2001 Tim Janik <timj@gtk.org>
1029 * glib-object.h: add gvaluearray.h.
1031 * gstring.[hc]: fixup naming of g_string_sprint*.
1033 * gtypes.h: fixed GCompareDataFunc naming.
1035 2001-03-07 Christian Meyer <chrisime@gnome.org>
1037 * configure.in: Added de (German) to ALL_LINGUAS.
1039 2001-03-02 Christophe Merlet <redfox@eikonex.org>
1041 * configure.in: Added fr (French) to ALL_LINGUAS.
1043 2001-03-01 Tor Lillqvist <tml@iki.fi>
1045 * gutils.c (g_path_is_absolute): (Win32) Remove test for initial
1046 double backslash (UNC path), this will of course be matched by the
1047 test for an initial G_DIR_SEPARATOR right up front. Silly me.
1048 (g_find_program_in_path): Implement on Win32. Append the
1049 executable file name suffixes from PATHEXT in turn while looking
1051 (g_find_program_in_path): If the program we are looking for is a
1052 relative path in a subdirectory, don't do any path search.
1053 (g_get_any_init): (Win32) Also look for the USERPROFILE env var
1054 indicating the home directory equivalent.
1055 (g_find_program_in_path): (Win32): Use MAXPATHLEN, not PATH_MAX
1056 which isn't defined with MSVC.
1058 * testglib.c (main): Test g_find_program_in_path() on Win32 by
1059 looking for more.com and regedit.
1061 * glib.def: Add g_find_program_in_path.
1063 2001-02-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1065 * gthreadpool.c (g_thread_pool_thread_proxy): Make
1066 max_unused_threads work for -1 as well.
1068 2001-02-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1070 * gthread.h (struct _GThread): Change the order to match the order
1071 in g_thread_create().
1073 * gthread.c (g_static_rec_mutex_lock_full): Also do the right
1074 thing (behave like 'depth' calls to g_static_rec_mutex_lock) for a
1075 mutex, that is already locked.
1077 Thu Feb 22 10:31:36 2001 Owen Taylor <otaylor@redhat.com>
1079 * gmain.c (g_source_remove_poll): Add missing implementation
1080 of g_source_remove_poll. (Pointed out by Stefan Westerfeld)
1082 2001-02-21 Tor Lillqvist <tml@iki.fi>
1084 * gutils.c (g_find_program_in_path): Implement on Win32.
1086 Cygwin support contributed by Stefan Ondrejicka
1087 <ondrej@idata.sk>. Hopefully I got it all in while simultaneously
1088 adding support for auto*/libtool for mingw.
1090 * Makefile.am: Changes for auto* support on Cygwin and Win32. Do
1091 still distribute the hand-written makefiles and *.win32.in files,
1092 though. Use GIO, GSPAWN and PLATFORMDEP macros set by configure.
1093 Use -no-undefined. Pass -export-symbols glib.def to libtool.
1095 * configure.in: Define G_PLATFORM_WIN32 on both pure Win32 (mingw)
1096 and Cygwin. Add AC_CYGWIN, AC_EXEEXT and AC_LIBTOOL_WIN32_DLL
1097 calls for Cygwin and mingw support. Check for %I64u guint64
1098 format (in MS C library). Set G_MODULE_IMPL on mingw and
1099 Cygwin. Use ac_object and ac_exeext. Set GIO, GSPAWN, PLATFORMDEP
1100 and G_LIBS_EXTRA. Compile timeloop only on Unix. Define OS_WIN32
1101 automake conditional on Win32.
1103 * glib.h: Include gwin32.h also on Cygwin.
1105 * gfileutils.c (get_contents_posix): Use O_BINARY (defined as 0 on
1106 Unix) for Cygwin's sake.
1108 * gtimer.c (GETTIME): Reduce #ifdefs, use a macro GETTIME().
1113 * gutils.c: For code needed both on Cygwin and native Win32,
1114 test for G_PLATFORM_WIN32.
1116 * gmarkup.h: Use G_BEGIN_DECLS and G_END_DECLS.
1118 * gtypes.h: Refine GLIB_VAR definition. Also check for DLL_EXPORT
1119 in case compiling a static library on Win32 or Cygwin.
1121 * gwin32.c: No <direct.h> on Cygwin. No need for ftruncate() or
1122 dirent emulation on Cygwin.
1123 (get_package_directory_from_module) Convert return value from
1124 GetModuleFileName() to POSIX path on Cygwin.
1126 * tests/Makefile.am (progs_LDADD): Link with libglib, libgthread
1127 and libgmodule as appropriate. Use -no-undefined.
1129 * gbacktrace.c: Move #ifdefs around a bit on Win32.
1131 2001-02-21 Tor Lillqvist <tml@iki.fi>
1133 * gshell.c (unquote_string_inplace): Make static.
1135 * gthread.h: Include gtypes.h to be sure to get GLIB_VAR
1136 definition, remove definition from here.
1138 * gunicode.h: Remove duplicate GLIB_VAR definition from here, too.
1140 * gutils.c: (Win32) Use USERPROFILE as home dir if present. On
1141 Win2k, HOMEDRIVE and HOMEPATH aren't reliable.
1143 * Makefile.am (INCLUDES): Add -DGLIB_COMPILATION.
1145 * makefile.mingw.in: Remove install target, Windows isn't Unix.
1146 (DEFINES): Add -DDLL_EXPORT.
1150 * testglib.c: Undefine GLIB_COMPILATION.
1152 * testglib.c: Make some vars static. Add Cygwin path tests.
1154 * glib.def: Updates.
1157 * */.cvsignore: Ignore also .obj, .dll, .lib and .exe files.
1159 2001-02-19 Hans Breuer <hans@breuer.org>
1161 * glib/glib.def, gobject/gobject.def : added nissing symbols
1163 * gobject/makefile.msc : updated
1165 * glib/gmessages.c : call the "debug interrupt" before exiting the
1166 program, if build with msvc as debug version. Which gives the opportunity
1167 to see the callstack, etc.
1169 * glib/gthread.c : thread->pid is only defined #ifdef
1170 G_THREAD_USE_PID_SURROGATE
1172 Mon Feb 19 07:32:38 2001 Tim Janik <timj@gtk.org>
1174 * glib-config-2.0.in (lib_glib): my name is glib-config-2.0!
1175 don't exit with errorcode!=0 for --help or -h.
1178 * configure.in: build glib-config-2.0.
1180 2001-02-17 Havoc Pennington <hp@pobox.com>
1182 * gthread.c: include string.h
1184 Applied patch from Soeren Sandmann:
1186 * testglib.c: const fixes
1188 * gwin32.h: format cleanups
1190 * gutils.c (g_atexit): constify a variable
1191 (g_find_program_in_path): constification
1192 (g_basename): G_CONST_RETURN
1193 (g_path_skip_root): G_CONST_RETURN
1194 (g_getenv): G_CONST_RETURN
1195 (g_get_user_name): G_CONST_RETURN
1196 (g_get_real_name): G_CONST_RETURN
1197 (g_get_home_dir): G_CONST_RETURN
1198 (g_get_tmp_dir): G_CONST_RETURN
1199 (g_get_prgname): G_CONST_RETURN
1200 (_glib_gettext): G_CONST_RETURN
1202 * gunicode.h: formatting cleanups
1204 * gstrfuncs.c (g_strerror): G_CONST_RETURN
1205 (g_strsignal): G_CONST_RETURN
1207 * gspawn.c (g_execute): const on variables
1209 * gmessages.c (printf_string_upper_bound): fix const on a variable
1211 * gmem.c (g_mem_chunk_new): make the "name" arg const
1212 (struct _GRealMemChunk): make the "name" field const
1214 * gfileutils.c (g_file_open_tmp): store const return in a const
1217 * gdataset.c (g_quark_to_string): G_CONST_RETURN
1219 Sat Feb 17 07:26:33 2001 Tim Janik <timj@gtk.org>
1221 * configure.in (G_MODULE_HAVE_DLERROR): add check for broken RTLD_GLOBAL
1224 2001-02-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1226 * acconfig.h, configure.in: Reverted the changes necessary to
1227 enlarge the system thread for G_THREAD_USE_PID_SURROGATE.
1229 * gthread.c: Now implement G_THREAD_USE_PID_SURROGATE in gthread.c
1230 instead of gthread/gthread-posix.c. While the latter has the
1231 advantage, that it is conceptually cleaner, it makes
1232 g_thread_self_posix_impl _very_ slow and that hurts
1233 GStaticRecMutex and other things. So the new version is less
1236 2001-02-09 Havoc Pennington <hp@redhat.com>
1238 * gconvert.c (g_convert): don't overwrite errors
1240 * gerror.c (g_set_error): improve warning message if an error is
1242 (g_propagate_error): ditto
1244 2001-02-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1246 * gthread.c, gthread.h: Added functions g_static_rec_mutex_init,
1247 g_static_rec_mutex_free, g_static_private_init,
1248 g_static_private_free, g_static_rw_lock_init to allow the usage of
1249 all those types dynamically. (g_static_rw_lock_free already
1250 existed). Aditionally freed static_private indeces are reused
1251 now. Untill now the array would just grow if you would use more
1252 and more static_private. That required adding a slist of all
1253 running threads, which could potentially be of good use later. It
1254 is not exported however. Renamed a LOCK and small indentation
1257 * tests/thread-test.c: Test the new static_private index freing
1258 and reusing feature.
1260 Mon Feb 12 15:01:09 2001 Owen Taylor <otaylor@redhat.com>
1262 * configure.in (gtk_doc_min_version): Add check for gtk-doc version.
1264 2001-02-10 Tor Lillqvist <tml@iki.fi>
1267 * gutils.h: Move GLIB_VAR definition from gutils.h to gtypes.h
1270 * gmem.h: Mark glib_mem_profiler_table for export.
1272 * gwin32.c (get_package_directory_from_module): Don't store
1273 address of local variable in hashtable.
1275 2001-02-08 Fatih Demir <kabalak@kabalak.net>
1277 * configure.in: Added "tr" to ALL_LINGUAS.
1279 2001-02-04 Tor Lillqvist <tml@iki.fi>
1281 * gwin32.c (g_win32_getlocale): Use "nn" for Nynorsk, as nn.po
1282 files are appearing now. If the sublanguage starts with '@', don't
1283 use a '_' separator. South Africa is 'ZA', not 'SA'.
1285 Sun Feb 4 07:38:32 2001 Tim Janik <timj@gtk.org>
1287 * docs/debugging.txt: s/glib_trap_/g_trap_/. add comments on
1288 g_trap_instance_signals, g_trace_instance_signals and
1291 * gmem.c: s/glib_trap_/g_trap_/.
1293 2001-02-04 Tor Lillqvist <tml@iki.fi>
1295 * tests/Makefile.am (thread_LDADD): Change order of libs,
1296 put progs_LDADD last. Needed for cygwin, says jbdoll@kepri.re.kr.
1298 2001-02-02 Tor Lillqvist <tml@iki.fi>
1302 * gmain.c: Stylistic cleanups. Use G_STRLOC in g_warning() calls.
1304 * glib.def: Add missing functions.
1306 2001-02-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1308 * gthread.c, gthread.h: Added g_static_mutex_init to allow
1309 initialization of a GStaticMutex, that can not be initialized with
1310 G_STATIC_MUTEX_INIT, for example in allocated structures.
1312 Wed Jan 31 13:46:58 2001 Owen Taylor <otaylor@redhat.com>
1314 * acinclude.m4 glib-gettext.m4: Fix problem with --disable-nls.
1316 2001-01-31 Tor Lillqvist <tml@iki.fi>
1318 * glibconfig.h.win32.in: Corresponding change as below to
1321 2001-01-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1323 * gthread.c, gthread.h: Added g_static_mutex_free to allow using
1324 GStaticMutexes with limited lifetime without leaking.
1326 * configure.in: GStaticMutex doesn't have to provide extra space
1327 for debugging information for G_ERRORCHECK_MUTEXES, as then the
1328 non-default implementation (runtime_mutex) is used anyway.
1330 * gthread.h (g_cond_wait): Added debug information for
1331 g_mutex_free calls, if G_ERRORCHECK_MUTEXES is defined.
1333 2001-01-29 Tor Lillqvist <tml@iki.fi>
1335 * glibconfig.h.win32.in: Use the same GMutex structure as the
1336 configure-generated glibconfig.h does.
1338 * gstrfuncs.c (g_strsignal): Declare strsignal() on Cygwin, too,
1339 says jbdoll@kepri.re.kr.
1341 2001-01-29 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1343 * gthread.c: Broadcast the condition, if there are waiting
1344 readers, as all might read at the same time. Only signal the
1345 writer thread, if there are no more readers.
1347 2001-01-25 Tor Lillqvist <tml@iki.fi>
1350 * */makefile.mingw.in: Protect the rule to rebuild makefile.mingw
1351 if makefile.mingw.in has changed with a check if said .in file
1352 exists. (This rule is mainly a convenience for yours truly.)
1354 * giowin32.c: Socket support rewritten. It was utterly broken, and
1355 untested in fact. We still do use a thread for each socket being
1356 watched, but instead of blocking in recv() (which of course was
1357 plain stupid for sockets being listen()ed on in a server-type
1358 application), we block in select(). The read method for sockets
1359 calls recv(). It is now possible for the application to call
1360 accept(), recv() or send() in the callback, just like on
1361 Unix. Tested with code kindly provided by Andrew Lanoix.
1363 Rename g_io_channel_win32_new_stream_socket() to
1364 g_io_channel_win32_new_socket() as it isn't restricted to stream
1367 * gmain.c (g_poll): Related changes in the Win32 version of
1368 g_poll(). When polling for messages, always do a PeekMessage()
1369 first. We used to miss messages if several were posted between
1372 * giochannel.h: Improve Win32-related comments.
1374 * gutf8.c: (Win32) Include <stdio.h> for sprintf.
1376 * tests/gio-test.c: (Win32) Add tests for polling for Windows
1379 * tests/makefile.mingw.in: Remove superfluous compilation command
1382 2001-01-23 Alex Larsson <alexl@redhat.com>
1384 * gmain.c (g_source_callback_unref): Free the callback
1385 (g_source_set_callback): Initialize the callback refcount
1387 2001-01-20 Tor Lillqvist <tml@iki.fi>
1389 * gutils.c (g_get_codeset): (Win32) Even if g_get_codeset() is
1390 currently commented out from gutils.h, fix it to return the same
1391 CP%d value as g_get_charset().
1393 2001-01-19 Kjartan Maraas <kmaraas@gnome.org>
1395 * gconvert.c: Fix typo.
1396 * gfileutils.c: Same here.
1397 * configure.in: Added no to ALL_LINGUAS
1399 2001-01-17 Tor Lillqvist <tml@iki.fi>
1401 * gwin32.c (g_win32_getlocale, g_win32_error_message): Add doc
1403 (g_win32_get_package_installation_directory): Add one parameter,
1404 the name of a DLL in the package. Add possibility to use that to
1405 deduce the installation directory if not entered into the
1406 Registry. Make the return value dynamically allocated.
1407 (g_win32_get_package_installation_subdirectory): New convenience
1410 * gutils.c (GLIB_LOCALE_DIR)
1411 * gwin32.h: Adapt accordingly.
1413 * testglib.c (main): Adapt tests accordingly.
1415 Tue Jan 16 23:20:38 2001 Owen Taylor <otaylor@redhat.com>
1417 * gutils.c glibintl.h: Optimize for size rather than speed by
1418 making _() always call _glib_gettext() instead of conditionally
1419 calling gettext() or _glib_gettext_init. glib only uses translated
1420 strings in slow error handling code anyways.
1422 * glibintl.h: g'ify types.
1424 * Makefile.am: include glibintl.h in _SOURCES
1426 2001-01-17 Tor Lillqvist <tml@iki.fi>
1428 * config.h.win32.in: Define ENABLE_NLS and GETTEXT_PACKAGE.
1431 * makefile.msc.in: Use the GNU intl library.
1433 * gwin32.c (g_win32_get_package_installation_directory): New
1434 function. To be used by various GLib-using packages to get their
1435 installation directory, which should be stored in the Registry by
1438 * gwin32.h: Declare it.
1440 * testglib.c (main): Test it.
1442 * gutils.c: On Win32, define GLIB_LOCALE_DIR using
1443 g_win32_get_package_installation_directory().
1447 Mon Jan 15 21:39:06 2001 Owen Taylor <otaylor@redhat.com>
1449 * glib-2.0.pc.in (Libs) glib-config-2.0.in: Add @INTLLIBS@.
1451 Mon Jan 15 21:12:49 2001 Owen Taylor <otaylor@redhat.com>
1453 * configure.in acconfig.h glibintl.h gutils.c
1454 po/{Makefile.in.in,POTFILES.in,po2tbl.in}: Add gettext
1457 * glib-gettext.m4 acinclude.m4: Clean up the GTK+ gettext macros
1458 some more and put them in this file, though they also need
1459 to be included in acinclude.m4 due to the brokeness of
1462 * gspawn.c gspawn-win32.c gutf8.c gconvert.c gfileutils.c
1463 gshell.c: Remove dummy _() #defines, include glibintl.m4.
1465 2001-01-09 Tor Lillqvist <tml@iki.fi>
1467 * giowin32.c: Rework the changes needed to pass mainloop-test. Now
1468 we don't need to call TerminateThread() after all, which is a
1469 relief, as the docs have a BIG RED WARNING SIGN about using that
1470 API. Instead, when closing a fd channel that has a reader thread
1471 running, just mark it as non-running and additionally mark the fd
1472 as ripe for closing. When the reader thread hopefully eventually
1473 gets something (and EOF or some actual data), it will note that it
1474 shouldn't be running, break out of the loop, and close the fd.
1476 The socket channel closing code should probably be changed
1477 similarily, but that will have to wait until I have a test case.
1479 (g_pipe_readable_msg, g_io_channel_win32_new_pipe,
1480 g_io_channel_win32_new_pipe_with_wakeups,
1481 g_io_channel_win32_pipe_request_wakeups,
1482 g_io_channel_win32_pipe_readable): Remove these, have been
1483 obsolete for some time.
1485 * gutils.c (g_basename, g_dirname): Don't warn about deprecation
1486 on Win32. Code written for GLib 1.2 doesn't have much choice but
1487 to use GLib >= 1.3 on Win32.
1491 2001-01-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1493 * gmem.c: Made g_profile_mutex a GMutex* instead of
1494 G_LOCK_DEFINE_STATIC to avoid deadlock for thread implementations
1495 without native static mutexes. Contruct g_profile_mutex in
1498 2001-01-06 Tor Lillqvist <tml@iki.fi>
1500 * gconvert.c (g_locale_to_utf8, g_locale_from_utf8): Get len using
1501 strlen() if arg is negative in the Win32 code, too.
1503 * giowin32.c: Changes necessary to be able to run
1504 mainloop-test. We can't close the fd that our (internal) reader
1505 thread is sitting doing a blocking read() from. We must terminate
1506 the thread first. Keep track of thread handle, and close it when
1507 thread is dying. Start reader thread with the lower-level
1508 CreateThread() instead of _beginthreadex() from the C runtime, in
1509 order to be able to use TerminateThread(). Hopefuly this isn't
1514 * tests/makefile.{mingw,msc}.in (TESTS): Add mainloop-test and
1517 * tests/mainloop-test.c: Portability: <unistd.h>, need <fcntl.h>
1520 * tests/unicode-encoding.c (process): Add missing "line" argument
1521 to fail(). On Win32, convert UTF-16LE, as libiconv'c ivonf always
1522 converts to UTF-16BE if we ask for unspecific UTF-16.
1523 (main) Handle also '\r'.
1525 Fri Jan 5 11:25:42 2001 Owen Taylor <otaylor@redhat.com>
1527 * configure.in (PACKAGE): move $enable_debug down below
1528 checks for GCC to avoid setting CFLAGS prematurely,
1529 change checks to avoid adding -g twice.
1531 * gutf8.c (g_ucs4_to_utf8): Support len < 0 to mean
1534 * gutf8.c (g_utf8_to_ucs4): Terminate result with 0.
1536 * tests/mainloop-test.c (main): Fix uses of
1537 g_main_loop_destroy().
1539 * tests/unicode-encoding.c tests/Makefile.am tests/utf8.txt:
1540 Tests for unicode-conversion code.
1542 * gconvert.c (g_convert, g_convert_with_fallback): work around
1543 a couple of GNU libc bugs.
1545 * gconvert.[ch] (g_{locale,filename}_{to,from}_utf8): Standardize
1546 arguments to match g_convert(). Document.
1549 - Implement conversion functions to and from UTF-16
1550 - Standardize unicode conversion functions on prototype like
1552 - Add a lot of error checking to unicode conversion functions.
1554 * gunicode.[ch] (g_utf8_to_ucs4_fast): Add fast, non-checking
1555 variant of g_utf8_to_ucs4.
1557 * gutf8.c (g_utf8_validate):
1558 - add g_return_if_fail (str != NULL).
1559 - add checks for overlong strings, non-valid Unicode characters (>= 110000)
1560 and single surrogates.
1562 2001-01-05 Tor Lillqvist <tml@iki.fi>
1564 * testglib.c (main): Add test for g_path_skip_root().
1566 * gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
1567 forward slashes in the template.
1569 * gutils.c (g_path_skip_root): On Win32, skip the \\server\share
1570 part of UNC paths. On all platforms, skip several initial
1571 slashes. Add a few comments.
1572 (g_get_any_init): On Win32, in case HOME is Unix-style with
1573 (forward) slashes (some other applications apparently set it up
1574 this way, convert to backslashed form.
1576 * configure.in (glib_os): Remove stray 'v'. Add case for mingw,
1577 although using configure for mingw surely doesn't work yet.
1581 2001-01-02 Havoc Pennington <hp@redhat.com>
1583 * configure.in: remove glib-config-2.0
1585 * Makefile.am: remove glib-config-2.0
1587 2001-01-03 Havoc Pennington <hp@pobox.com>
1589 * tests/Makefile.am (INCLUDES): -I$(top_srcdir)/gmodule,
1590 fix from Michael Meeks
1592 * Makefile.am (INCLUDES): DISABLE was spelled wrong
1594 Wed Jan 3 14:10:49 2001 Owen Taylor <otaylor@redhat.com>
1596 * gmain.[ch]: Switch GMainLoop to be ref/unref, use to
1597 make dropping reference to running loop safe.
1599 Wed Dec 13 20:41:49 2000 Owen Taylor <otaylor@redhat.com>
1601 * gmain.c (g_source_unref_internal): Unref callback->cb_data
1602 if it was still set when the source is freed. (Usually, this
1603 will be done by g_source_destroy.)
1605 2001-01-02 Dan Winship <danw@helixcode.com>
1607 * garray.h (g_array_append_val, g_array_prepend_val,
1608 g_array_insert_val): Use parentheses around an argument to make
1609 these cause an error if you pass a non-lvalue for the value,
1610 rather than silently doing the wrong thing.
1612 2000-12-29 Tor Lillqvist <tml@iki.fi>
1614 * glibconfig.h.win32.in: Add GLIB_SIZEOF_VOID_P and GLIB_SIZEOF_LONG.
1618 * {.,*}/makefile.{mingw,msc}.in: Add -DG_ENABLE_DEBUG.
1620 Fri Dec 29 14:53:18 2000 Tim Janik <timj@gtk.org>
1622 * configure.in: we can't grow _cv_ variables by using a backticked
1623 expr that refers back to the variable (glib_cv_sizeof_system_thread for
1624 G_THREAD_USE_PID_SURROGATE), that'd keep the variable growing every time
1625 it's evaluated. quantum states, anyone?)
1627 Thu Dec 28 10:21:46 2000 Tim Janik <timj@gtk.org>
1629 * gmem.[hc]: got rid of outdated dmalloc support. provide g_try_malloc()
1630 and g_try_realloc() which _may_ fail and return NULL.
1631 nuked g_mem_check(), provided GMemVTable for memory function
1632 virtualization, alterable at program startup with g_mem_set_vtable().
1633 provided glib_mem_profiler_table and g_mem_profile() to support limited
1634 profiling information out of the box (uses mprotect() for free()ed areas
1636 provide globally visible G_MEM_ALIGN.
1639 * docs/macros.txt: file to get a clue about the various configuration
1642 * docs/debugging.txt: explain debugging traps.
1644 * configure.in: got rid of --enable-mem-check and --enable-mem-profile,
1645 define GLIB_SIZEOF_VOID_P and GLIB_SIZEOF_LONG. check malloc prototypes
1646 and define SANE_MALLOC_PROTOS is we can use them.
1647 <boy, is this file a mess>
1649 * gutils.c, gscanner.c: fix up compatibility warnings, use g_message().
1651 2000-12-27 Tor Lillqvist <tml@iki.fi>
1653 * README.win32: Update.
1655 2000-12-25 Tor Lillqvist <tml@iki.fi>
1657 * gmessages.c: (Win32) Use a MessageBox for fatal
1658 messages. Collect eror message into a buffer, and display that.
1662 * glibconfig.h.win32.in: Update. Remove unused wchar and wctype
1663 macros, add G_MODULE_SUFFIX.
1665 2000-12-24 Ali Abdin <aliabdin@aucegypt.edu>
1667 * Makefile.am, gcompat.h, glib.h: New gcompat.h header file
1668 as recommended by Havoc.
1670 * gdate.c, gdate.h, testgdate.c,
1671 docs/reference/glib/glib-sections.txt,
1672 docs/reference/glib/tmpl/date.sgml, tests/date-test.c: Rename some
1673 of the gdate functions to use the '_get' in their name. Patch
1676 2000-12-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1678 * configure.in: Determine the suffix of the shared librarries for
1679 this system. This is done analogous to
1680 ltconfig.sh. G_MODULE_SUFFIX in glibconfig.h is set to either
1681 "sl", "dll", or (most often) "so".
1683 * tests/Makefile.am, tests/module-test.c,
1684 tests/libmoduletestplugin_a.c, tests/libmoduletestplugin_b.c:
1685 Added new testcase for gmodule. This is mostly copied from
1686 gmodule/testgmodule.c, but unlike that is is quiet. (Why BTW are
1687 some tests that verbose, not to say loquacious...)
1689 2000-12-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1691 * grand.c: Updated G_RAND_DOUBLE_TRANSFORM to be more
1692 accurate. Redid g_rand_double() such that it returns 52 bits after
1693 the point instead of 32 as before. That OTOH requires calling
1694 g_rand_int() twice. Overhauled g_rand_int_range(), which is easier
1695 now thanks to the new precision of g_rand_double(). Thanks to
1696 Sverre Johansen <sj@ifi.uio.no> for the hint.
1698 * grand.h: Added g_rand_boolean() and g_random_boolean()
1699 macros. While they could be omitted due to extreme simplicity,
1700 they make intention clearer in code and are therefore good to have.
1702 * grand.c, grand.h: Renamed all 'min' and 'max' parameters to'
1703 begin' and 'end' resp. to avoid making people think, that 'max' is
1704 included in the interval. 'end' now isn't, whereas 'begin'
1705 is. That's similar to the use in the STL.
1707 * gslist.c, glist.c: Ok, I'm a moron. When I originally
1708 implemented ENABLE_GC_FRIENDLY, I forgot to include config.h into
1709 the affected files. Now that Alex did that for those two,
1710 inevitable typos surfaced, which are now fixed.
1712 * garray.c, ghash.c, gqueue.c, gtree.c: Include config.h as well,
1713 as ENABLE_GC_FRIENDLY should be known.
1715 2000-12-19 Alexander Larsson <alexl@redhat.com>
1718 Added --disable-mem-pools option.
1724 Disable free list and memory chunks if DISABLE_MEM_POOLS is defined.
1726 2000-12-17 Tor Lillqvist <tml@iki.fi>
1728 * gutf8.c (g_utf8_get_charset_internal): (Win32) Use GetACP to get
1729 the current ANSI codepage.
1731 * gunicode.h: Add comment that the static string g_get_charset
1732 sets the parameter to point to should be copied in case the
1733 charset might be changed later in the program.
1735 2000-12-14 Tor Lillqvist <tml@iki.fi>
1737 * makefile.{mingw,msc}.in: No need to -DGSPAWN_HELPER when
1738 compiling gspawn-win32-helper any longer.
1740 * giowin32.c (g_io_win32_dispatch): Warn if no callback. Call
1742 (g_io_win32_create_watch): Fix typo.
1743 (g_io_win32_fd_create_watch): Ditto.
1744 (g_io_channel_unix_new): If it is a file descriptor (i.e., a Unix
1745 fd lookalike provided by the C library), call
1746 g_io_channel_win32_new_fd(). If it is a socket (from WinSock),
1747 call g_io_cahnnel_win32_new_stream_socket(). Hopefully sockets and
1748 fds don't overlap. TODO: Implement also datagram sockets.
1749 (g_io_channel_win32_poll): Call g_main_context_get_poll_func().
1751 * gcompletion.h: Include <unistd.h> only on Unix. Is this
1752 inclusion really needed here? OTOH, do include <stddef.h>, for
1755 * gmessages.c: (Win32) Don't define a function called "write" that
1756 might clash with the prototype from <io.h>, use a #define.
1760 * gmain.c (g_source_add_poll): Don't return a value from void
1762 (g_main_context_get_poll_func): Compile also for non-Win32, as
1763 presumably was intended. The result var is a GPollFunc, not a
1764 GPollFunc*. Return the result!
1766 2000-12-13 Havoc Pennington <hp@redhat.com>
1768 * gconvert.c (open_converter): make static
1770 * gutf8.c (g_utf8_validate): Simplify logic a bit, maybe
1771 speeding it up - now we just return FALSE if we had to bail out
1772 for any reason before getting to the end of the string, as defined
1773 by a nul byte if len was -1, defined by the len otherwise. This
1774 also fixes a bug where nul bytes were not treated as invalid
1775 when the length was specified.
1777 2000-12-12 Havoc Pennington <hp@pobox.com>
1779 * gmain.c (g_main_context_destroy): don't try to use thread stuff
1780 unless G_THREADS_ENABLED
1781 (g_main_context_query): ditto
1782 (g_main_context_check): ditto
1783 (g_main_loop_quit): ditto
1785 Tue Dec 12 18:58:22 2000 Tim Janik <timj@gtk.org>
1787 * ghash.c (g_hash_table_remove): return whether a value
1790 Tue Dec 12 15:18:10 2000 Owen Taylor <otaylor@redhat.com>
1792 * gmain.[ch]: Revert unauthorized changes.
1794 2000-12-12 Elliot Lee <sopwith@redhat.com>
1796 * gmain.c, gmain.h (g_main_context_new, g_main_context_destroy):
1797 GMainContext useful in implementing some additional styles of
1798 main loop usage. To do this, however, Joe Hacker needs to be able
1799 to create/destroy GMainContext's at will. This is just an export
1800 of existing functionality, rather than any new functionality.
1802 They are listed in the "Low level functions for implementing custom
1803 main loops" section of the header file, to avoid confusing people.
1805 Sun Dec 10 10:47:11 2000 Owen Taylor <otaylor@redhat.com>
1807 * gmain.c (g_source_destroy_internal): Remove pollfds
1808 from the context here, not when actually freeing the
1811 * gmain.c (g_source_unref_internal): Free source list
1812 and source, call source->source_funcs->destroy().
1814 * giochannel.c: Unreference io_channel properly.
1816 Thu Dec 7 15:22:30 2000 Owen Taylor <otaylor@redhat.com>
1818 * tests/mainloop-test.c (recurser_start): Add a bunch
1821 * gmain.c (g_source_attach): Reference the source
1822 when adding (pointed out by Elliot)
1824 2000-12-08 Raja R Harinath <harinath@cs.umn.edu>
1826 * acglib.m4 (GLIB_AC_DIVERT_BEFORE_HELP):
1827 Rename from GLIB_DIVERT_BEFORE_HELP.
1828 Update to track autoconf 2.49b.
1829 * configure.in: Reflect above change.
1830 (AC_EGREP_HEADER): Rename from really obselete AC_HEADER_EGREP.
1831 (debug_default): Replace "if test `expr ...`" with "case".
1833 * tests/Makefile.am (TESTS): Rearrange into other variables, and
1834 include run-markup-tests.sh.
1835 (TESTS_ENVIRONMENT): New. Pass $srcdir to tests.
1836 (noinst_PROGRAMS): Rename to ...
1837 (check_PROGRAMS): ... this. 'automake' ensures that these are
1838 built before running the tests.
1839 * tests/run-markup-tests.sh: Support $srcdir != $builddir.
1841 2000-12-08 Havoc Pennington <hp@pobox.com>
1843 * tests/Makefile.am (TESTS): move markup-test to noinst_PROGRAMS;
1844 it isn't a proper test, the proper test would be
1845 run-markup-tests.sh, but that can't go in tests, so we need
1846 a manual make check rule. Didn't do that yet.
1848 2000-12-07 Raja R Harinath <harinath@cs.umn.edu>
1850 * gmain.h: Don't put anything after an #endif.
1851 * gmain.c: Likewise.
1853 2000-12-06 Havoc Pennington <hp@pobox.com>
1855 * tests/strfunc-test.c (main): add g_strdupv test
1857 * gstrfuncs.c (g_strdupv): Add a function to copy
1860 Tue Dec 5 12:23:04 2000 Owen Taylor <otaylor@redhat.com>
1862 * gmain.[hc]: Major change in API for creating sources
1863 to handle multiple main loops (GMainContext *).
1865 GSources are now exposed as GSource * and implemented
1866 with structure derivation.
1868 * giochannel.[ch]: Changed vtable for GIOChannel to correspond
1869 to the new mainloop API, add g_io_channel_create_watch().
1871 * gtypes.h: Move GTimeVal here.
1873 * gthread.h: Remove gmain.h include to avoid circularity.
1875 * giounix.c: Update for new GMain API.
1877 * giowin32.c: Update for new GMain API. (No check for
1878 proper compilation or working.)
1880 * timeloop.c timeloop-basic.c: A benchmarking program for
1881 the main loop comparing the main loop against a
1882 hand-written (timeloop-basic.c) variant.
1884 * tests/mainloop-test.c: New torture test of mainloop.
1886 * docs/Changes-2.0.txt: Started. Added text about
1889 * gmain.c (g_main_add_poll_unlocked): Initial fd->revents
1890 to zero. (#8482, Benjamin Kahn)
1892 2000-12-01 Tor Lillqvist <tml@iki.fi>
1894 * {.,*}/makefile.msc.in: Include make.msc from GLib's build subdir.
1896 * makefile.{mingw,msc}.in (glib_OBJECTS): Add gunibreak.
1898 * glib.def: Update correspondingly.
1900 2000-11-21 Havoc Pennington <hp@pobox.com>
1902 * gmacros.h: Provide G_CONST_RETURN which is 'const' by default,
1903 and nothing when G_DISABLE_CONST_RETURNS is defined.
1905 2000-11-29 Havoc Pennington <hp@redhat.com>
1907 * gunidecomp.c (COMBINING_CLASS):
1908 s/UNICODE_LAST_CHAR/G_UNICODE_LAST_CHAR/
1910 * gunichartables.h: Update for data in Unicode 3.0.1
1912 * gunidecomp.h: Ditto
1914 * gunicode.h (GUnicodeBreakType): Enum for line break properties
1915 (g_unichar_break_type): Get the break property for a char
1917 * gunibreak.h: Autogenerated line break property tables
1919 * gunibreak.c (g_unichar_break_type): added
1921 * Makefile.am (EXTRA_DIST): dist gen-unicode-tables.pl
1923 * Makefile.am (libglib_1_3_la_SOURCES): Add gunibreak.h, gunibreak.c
1925 * gen-unicode-tables.pl: Include the script to update the unicode
1928 2000-11-28 Elliot Lee <sopwith@redhat.com>
1930 * gmarkup.c: Fix warnings.
1932 * guniprop.c, gunidecomp.c: Make warnings go away by using
1933 GPOINTER_TO_INT() instead of (int).
1935 * gcompletion.[ch]: Add g_completion_set_compare(),
1936 to allow (for example) using case-insensitive completion.
1938 2000-11-28 Tor Lillqvist <tml@iki.fi>
1940 Patches by Hans Breuer:
1942 * gspawn-win32.c: Move the code for gspawn-win32-helper to its own
1945 * makefile.{mingw,msc}.in: Change accordingly.
1947 * gspawn-win32-helper.c: New file.
1949 * Makefile.am (EXTRA_DIST): Add it.
1951 * gmarkup.c (find_current_text_end): Fix assertion not to check an
1952 uninitialised variable.
1954 2000-11-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1956 * gthread.c: Set the thread data before locking the mutex, because
1957 the locking call might use g_thread_self ().
1959 * gthread.h: Do only show the location of the locking/unlocking
1960 for -DG_ERRORCHECK_MUTEXES and not the name of the mutex. Add the
1961 errorcheck capability for g_cond_wait and g_cond_timed_wait as
1964 2000-11-27 Havoc Pennington <hp@redhat.com>
1966 * gthread.h: Add void in empty function arg list
1968 2000-11-22 Tor Lillqvist <tml@iki.fi>
1970 * makefile.{mingw,msc}.in: Add gqsort.
1974 2000-11-21 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1976 * configure.in: Add a surrogate for thread priorities using PID
1977 niceness for systems with no thread priorities and different PIDs
1978 for threads of the same process (most notably: Linux). Define
1979 G_THREAD_USE_PID_SURROGATE in that case, as used by
1980 gthread-posix.c. Also make the system thread bigger by
1981 sizeof (long) to contain the thread's PID.
1983 * gfileutils.c: Include stdlib.h for mkstemp prototype.
1985 * gthread.c: Add priority range checks to the affected functions.
1987 * gthreadpool.c: Remove unused variable.
1989 Mon Nov 20 18:55:17 2000 Jonathan Blandford <jrb@redhat.com>
1991 * gtree.[hc]: Patch from David Benson <daveb@idealab.com> to add
1992 user_data support to gtree functions.
1994 Mon Nov 13 18:35:52 2000 Jonathan Blandford <jrb@redhat.com>
1996 * gtypes.h (GCompareFuncData): new func type to let you use user
1997 data when comparing nodes.
1999 * gslist.c (g_list_sort_with_data): new function to sort with
2002 * glist.c (g_list_sort_with_data): new function to sort with
2005 * garray.[ch]: Added convenience functions to sort arrays.
2007 2000-11-16 Havoc Pennington <hp@redhat.com>
2009 * guniprop.c (g_unichar_isspace): Use a switch here, maybe helps
2010 the compiler optimize things. Also, ' ' is a SPACE_SEPARATOR,
2011 so don't special case it.
2013 2000-11-17 Tor Lillqvist <tml@iki.fi>
2015 * glib.def: Add g_trash_stack entry points.
2017 Fri Nov 17 15:43:00 2000 Owen Taylor <otaylor@redhat.com>
2023 * tests/Makefile.am (dist-hook): Add code to distribute
2026 2000-11-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2028 * configure.in: Check for the sched.h header and include it on
2029 gthread/gthread-posix.c if available.
2031 * configure.in: Add -D_POSIX4_DRAFT_SOURCE to
2032 GTHREAD_COMPILE_IMPL_DEFINES. Also add -D_POSIX4A_DRAFT10_SOURCE
2033 to G_THREAD_CFLAGS. Really deploy GTHREAD_COMPILE_IMPL_DEFINES,
2034 when searching for thread libs. Look for sched_* functions in
2035 -lrte as well. All of that is necessary on DG/UX.
2037 * configure.in: Use AC_TRY_COMPILE instead of AC_EGREP_HEADERS in
2038 various places to make it work more reliable, to make it accept
2039 macros instead of functions etc.
2041 * configure.in: Replace some NULL's for checks with 0 to make it
2042 work without stdio.h everywhere.
2044 * configure.in, gutils.c: changed the test for getpwuid_r to first
2045 test for a posix version and then for a non-posix version. No code
2046 change in gutils.c. Again this change deals better with getpwuid_r
2047 being a macro and not a function. Most of the above with kind help
2048 from Tethys <tet@isengard.europe.dg.com>. This fixes Bug #13403.
2050 2000-11-14 Tor Lillqvist <tml@iki.fi>
2052 * gwin32.h: Make #endif comment match #ifdef.
2054 Mon Nov 13 14:00:20 2000 Owen Taylor <otaylor@redhat.com>
2056 * configure.in: Up version to 1.3.2
2058 * gconvert.h (enum GConvertError): Remove trailing ,
2060 * gfileutils.c (g_file_open_tmp): Fix comment to
2061 properly describe return value.
2063 2000-11-13 Tor Lillqvist <tml@iki.fi>
2065 * config.h.win32.in: Add USE_LIBICONV.
2067 * gconvert.c: Check G_OS_WIN32 only after including glib.h.
2071 2000-11-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2073 * gthread.c (g_static_rec_mutex_*): Made recursive mutexes also
2074 work when the thread system is not (yet) initialized.
2076 Sun Nov 12 18:34:32 2000 Owen Taylor <otaylor@redhat.com>
2078 * gconvert.[ch]: Create wrapper functions for iconv()
2079 so that we can transparently use the native iconv,
2080 libiconv, or (in the future) a mini-iconv included
2083 * glib-config-2.0.in glib-2.0.pc.in: Include @ICONV_LIBS@
2085 * INSTALL: Added note about libiconv.
2087 * configure.in: Add checks for libiconv from pango. If
2088 EILSEQ is not defined in errno.h add define for it into
2089 glibconfig.h so g_iconv can use it. (Note, recompiling
2090 from a system without EILSEQ to a system with EILSEQ
2091 will break binary compatibility)
2093 2000-11-12 Robert Brady <robert@suse.co.uk>
2095 * gstrfuncs.c, gstrfuncs.h: Remove g_filename_{to,from}_utf8
2097 * gconvert.c, gconvert.h: Add g_filename_{to,from}_utf8 and
2098 g_locale_{to.from}_utf8. The locale_ variant honours
2099 nl_langinfo(CODESET), the filename_ variant uses UTF-8 unless
2102 (g_convert): Add G_CONVERT_ERROR_PARTIAL_INPUT error, if bytesread
2103 != length and no bytesread pointer passed.
2105 Sun Nov 12 15:29:53 2000 Owen Taylor <otaylor@redhat.com>
2107 * gfileutils.[ch]: template is a reserved word in
2108 C++ s/template/tmpl/.
2110 2000-11-11 Havoc Pennington <hp@pobox.com>
2112 * gmarkup.c (g_markup_parse_context_parse): Handle a long stream
2113 of bytes containing no UTF-8 character starts
2115 2000-11-11 Tor Lillqvist <tml@iki.fi>
2117 * glib.def: Add missing entry points.
2119 * gfileutils.c (g_mkstemp): Improve chance to generate unique
2120 names with less effort a bit.
2122 * gfileutils.h: Add g_file_open_tmp() declaration.
2124 * testglib.c: Include <io.h> on Win32.
2126 * makefile.mingw.in: Correct the way to invoke sub-makes.
2128 Sun Nov 5 13:20:54 2000 Owen Taylor <otaylor@redhat.com>
2130 * glib-object.h: Add gtypemodule.h
2132 2000-11-11 Tor Lillqvist <tml@iki.fi>
2134 * gfileutils.c (g_file_open_tmp): New function, suggested by Havoc
2136 (g_mkstemp): Use only one case for letters in temp file name, as
2137 this will be used on systems with case-insensitive file systems.
2139 * testglib.c (main): Test g_mkstemp() and g_file_open_tmp().
2141 2000-11-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2143 * gthreadpool.c: Don't take other threads with other priorities
2144 into account as changing the priority is highly
2145 unportable. (Actually using it at all already is unportable, but
2146 even sometimes where that works, changing priority is not
2149 2000-11-05 Havoc Pennington <hp@pobox.com>
2151 * gmarkup.h: rename G_MARKUP_FOO to
2152 G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG
2154 * gmarkup.c: don't start doc comments with "Returns"
2156 2000-11-05 Havoc Pennington <hp@pobox.com>
2158 * gmarkup.c: inline docs
2159 (unescape_text): properly check strtoul for failure.
2161 * gerror.c (g_propagate_error): Free the src error if the dest
2162 location is NULL - I'm pretty sure that's what this function was
2165 2000-11-05 Havoc Pennington <hp@pobox.com>
2167 * gutils.c (g_find_program_in_path): cleanup docs, sync param
2168 names to those in the header
2170 * gfileutils.c (g_mkstemp): clean up docs
2172 * gshell.h: sync param names with param names in .c file
2174 * gfileutils.h (enum GFileTest): remove trailing comma from last
2175 member, confuses gtk-doc
2177 * gmarkup.h: s/GMarkupErrorType/GMarkupError/g; to follow
2180 2000-11-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2182 * gasyncqueue.c: Added documentation for asyncronous queues.
2184 * gspawn.c: Include sys/select.h (some platforms need it for
2187 * gspawn.c: Changed unportable __FUNCTION__ to the verbatim
2190 2000-10-31 Tor Lillqvist <tml@iki.fi>
2195 * gfileutils.h: Actually, g_mkstemp() is better suited in gfileutils.
2197 2000-10-30 Tor Lillqvist <tml@iki.fi>
2199 * configure.in: Check for mkstemp.
2201 * gutils.c (g_mkstemp): New function. If HAVE_MKSTEMP, just call
2202 it, otherwise use code lifted from glibc.
2204 * gutils.h: Declare it.
2206 * glib.def: Here, too. Plus two missing functions.
2208 2000-10-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2210 * gcache.h, gcache.c, ghash.h, ghash.c, grel.c, grel.h, gtypes.h:
2211 Introduced new function type GEqualFunc to return TRUE for equal
2212 params. This is now used instead of GCompareFunc (which should
2213 work akin to strcmp) here. This kind of fixes Bug #14412. Note
2214 that technically GCompareFunc and GEqualFunc are still the same
2215 types, as gint == gboolean.
2217 * ghash.h, gutils.c: g_int_equal and g_direct_equal now return
2218 gboolean to be really become GEqualFunc.
2220 * gscanner.c, testglib.c, tests/hash-test.c: Some tiny changes to
2221 follow the above change.
2223 2000-10-27 Tor Lillqvist <tml@iki.fi>
2225 * makefile.{mingw,msc}.in (glib_OBJECTS): Add gmarkup.
2227 * glib.def: Add missing functions.
2229 * tests/makefile.{mingw,msc}.in (TESTS): Add markup-test.
2231 2000-10-24 Havoc Pennington <hp@pobox.com>
2233 * gmarkup.h, gmarkup.c: New module to parse a simple
2236 * Makefile.am: add gmarkup.h, gmarkup.c
2238 * tests/Makefile.am: add markup-test
2240 * gstring.h (g_string_new_len): new function to create a string
2242 (g_string_new): avoid a gratuitous realloc
2244 2000-10-26 Tor Lillqvist <tml@iki.fi>
2246 * makefile.{mingw,msc}.in: Cosmetics.
2248 2000-10-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2250 * gstrfuncs.c (g_strsplit): When the string is ended by a
2251 delimiter, return an extra empty string just like for a delimiter
2252 at the start of the string. This makes the function behave more
2253 consistent and also fixes Bug #15026.
2255 Tue Oct 24 22:09:14 2000 Tim Janik <timj@gtk.org>
2257 * glib-object.h: added newly added gobject/ headers.
2259 * gmesage.c: print g_message() output to stderr instead of stdout.
2261 2000-10-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2263 * configure.in: Use one = instead of two, which is plainly wrong.
2265 2000-10-19 Tor Lillqvist <tml@iki.fi>
2267 * makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
2271 * gfileutils.c: Make them compile with picky MSVC.
2273 * gwin32.h: New file. Move Win32-only stuff that isn't related to
2274 GIOChannels here from giochannel.h.
2276 * Makefile.am: Add it here.
2278 * giochannel.h: Move stuff to gwin32.h.
2280 * glib.h: On Win32, include gwin32.h.
2282 Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
2284 * glib.h convert.c (g_convert_with_fallback): Change
2285 ERROR_OTHER to ERROR_FAILED, add some dummy marking with _().
2287 * docs/reference/glib/glib-sections.txt
2288 docs/reference/glib/glib-docs.sgml Update for g_convert,
2291 2000-10-16 Tor Lillqvist <tml@iki.fi>
2293 * glibconfig.h.win32.in: Remove alloca stuff from here. galloca.h
2294 takes care of it, correctly.
2296 * giowin32.c (reader_thread): Some more debugging output.
2297 (g_io_channel_win32_poll): Remove unused vars.
2299 * gfileutils.c: Changes for Win32, with no unistd.h and no
2302 * gspawn-win32.c: Implementation of the g_spwan_* functions for
2303 Win32. Due to the general non-Unixness of Win32, much of the
2304 functionality that is relatively clean to implement on Unix, is
2305 hard to do on Win32. We must use a separate helper program to
2306 change directory, close extra file descriptors, redirect the std
2307 ones, as needed, and only then start the child process. No child
2308 process pid can be returned, unfortunately. Or if we used
2309 CreateProcess directly, it probably could. (Now we use the spawnv*
2310 functions from msvcrt.)
2312 * Makefile.am (EXTRA_DIST): Add gspawn-win32.c
2314 * glib.def: Add new entry points.
2317 * giowin32.c: Remove g_io_channel_win32_wait_for_condition(),
2318 g_io_channel_win32_poll() subsumes it.
2320 * gbacktrace.h: G_BREAKPOINT for MSVC (on the ix86).
2322 * gwin32.c (g_win32_getlocale): Use "sp" for
2323 LANG_CROATIAN+SUBLANG_SERBIAN_LATIN.
2325 * makefile.{mingw,msc}.in (glib_OBJECTS): Add new files.
2326 Add gspawn-win32-helper.exe rule.
2328 * tests/makefile.{mingw,msc}.in (TESTS): Add shell-test and
2331 * tests/spawn-test.c: (run_tests): On Win32, don't try to run
2332 /bin/sh, but ipconfig (no special significance in choosing that,
2333 just a program that outputs something to stdout).
2335 2000-10-15 Raja R Harinath <harinath@cs.umn.edu>
2337 Remove need for acconfig.h, and misc. cleanups.
2338 * acglib.m4 (GLIB_SIZEOF): Add 'autoheader' comment to
2340 (GLIB_BYTE_CONTENTS): Likewise.
2342 * configure.in: Add 'autoheader' comments to all AC_DEFINE(...)
2343 and AC_DEFINE_UNQUOTED(...) lines.
2344 Replace AC_MSG_CHECKING/AC_CACHE_VAL with AC_CACHE_CHECK.
2345 (AM_PROG_LIBTOOL): Move after AC_PROG_CC.
2347 * acconfig.h: Empty out.
2349 * Makefile.am (BUILT_EXTRA_DIST): New variable. List 'dist'able
2350 files that are created in the builddir.
2351 (dist-hook): Handle those files.
2352 (libglib_1_3_la_SOURCES): Remove @ALLOCA@. @ALLOCA@ should only
2353 be used in an _LDADD or _LIBADD, since it expands (if necessary)
2356 * tests/Makefile.am (BUILT_EXTRA_DIST): New variable.
2357 (dist-hook): Handle $(BUILT_EXTRA_DIST).
2359 2000-10-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2361 * grand.c: Added inline documentation.
2363 * gtypes.h, gnode.h, gutils.h: Readded GFreeFunc,
2364 g_node_insert_after and g_find_program_in_path resp., which
2365 mysteriously disappeared during the glib.h dissection.
2367 2000-10-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2369 * glibconfig.h.win32.in: Adapted accordingly to header separation
2370 and GLIB_HAVE_ALLOCA_H renaming.
2372 * Makefile.am: Added the new headers to glibinclude_HEADERS.
2374 * glib.h: Forgot to include gerror.h.
2376 * glib.h, galloca.h, garray.h, gasyncqueue.h, gbacktrace.h,
2377 gcache.h, gcompletion.h, gconvert.h, gdataset.h, gdate.h, ghash.h,
2378 ghook.h, giochannel.h, glist.h , gmacros.h, gmain.h, gmem.h,
2379 gmessages.h, gnode.h, gprimes.h, gquark.h, gqueue.h, grand.h,
2380 grel.h, gscanner.h, gslist.h, gstrfuncs.h, gstring.h, gthread.h,
2381 gthreadpool.h, gtimer.h, gtree.h, gtypes.h, gutils.h: Split glib.h
2382 into many header files mostly according to the resp. *.c-files.
2384 * gmacros.h: Added G_BEGIN_DECLS and G_END_DECLS to mean: 'in case
2385 of C++: extern "C" { ... }' analogous to glibc __BEGIN_DECLS and
2388 * configure.in, gerror.h, gfileutils.h, gshell.h, gspawn.h,
2389 gunicode.h, : Changed guard-macro names to something more
2392 * configure.in, *.h: Use G_BEGIN_DECLS and G_END_DECLS.
2394 * configure.in: Defined GLIB_HAVE_ALLOCA_H instead of including
2395 alloca.h in glibconfig.h, GLIB_HAVE_ALLOCA_H is used in glib.h.
2397 * configure.in: Removed cruft from old threading code.
2399 2000-10-09 Raja R Harinath <harinath@cs.umn.edu>
2401 Work with beta autoconf 2.50.
2402 * configure.in (GLIB_MAJOR_VERSION): Use GLIB_DIVERT_BEFORE_HELP
2403 instead of AC_DIVERT_PUSH(),AC_DIVERT_POP.
2404 (AC_CHECK_HEADERS): Remove redundant AC_DEFINE(HAVE_...).
2405 (REALLOC_0_WORKS): Move AC_DEFINE outside AC_CACHE_VAL.
2406 (dlopen): Quote nested AC_CHECK_... calls.
2408 * acglib.m4 (GLIB_TR_SH, GLIB_TR_CPP): Utility macros copied from
2410 (GLIB_DIVERT_BEFORE_HELP): New macro that works both with autoconf
2411 2.13 and beta autoconf 2.50.
2412 (GLIB_SIZEOF, GLIB_BYTECONTENTS): Use GLIB_TR_*.
2414 * Makefile.am (CONFIGURE_DEPENDENCIES): Use this to specify
2415 that 'configure' depends on acglib.m4.
2417 2000-10-09 Havoc Pennington <hp@redhat.com>
2419 * Makefile.am, tests/Makefile.am: Add new files.
2421 * tests/spawn-test.c, tests/shell-test.c: new tests for
2422 the shell/spawn stuff
2424 * gutils.c (g_find_program_in_path): convert a relative
2425 program name into an absolute pathname to an existing
2428 * gspawn.h, gspawn.c: New fork/exec API
2430 * gshell.h, gshell.c: Shell-related utilities, at the moment
2431 simply routines to parse argv and quote/unquote strings
2433 * guniprop.c (g_unichar_isspace): Return TRUE for the
2434 ASCII space characters isspace() returns TRUE for.
2436 * gfileutils.c (g_file_get_contents): Convenience function
2437 to slurp entire file into a string and return it. Partially
2438 written by Joel Becker.
2439 (g_file_test): file test function
2441 2000-10-06 Tor Lillqvist <tml@iki.fi>
2443 * makefile.msc.in: Revamp to be like makefile.mingw.in, make
2444 the MSVC build actually work again.
2446 * gmodule/makefile.msc.in
2447 * gobject/makefile.msc.in
2448 * gthread/makefile.msc.in: New files, like their mingw counterparts.
2450 * gmodule/Makefile.am
2451 * gobject/Makefile.am
2452 * gthread/Makefile.am: Make and distribute them.
2454 * */makefile.mingw.in: Allow override of GLib version number from
2455 the build/win32/module.defs file.
2457 * glib.def: Add new entry point.
2459 * tests/gio-test.c (main): Fix the Win32-only code to use current
2460 API, g_io_channel_win32_make_pollfd() and g_io_channel_win32_poll().
2462 Fixes from Hans Breuer:
2464 * glib.h (struct DIR): Keep the last readdir result cached inside
2465 the DIR struct, to enable several DIRs being open simultaneously.
2467 * gwin32.c (g_win32_readdir): Use the above instead of static.
2469 * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
2472 2000-10-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2474 * glib.h: Changed alloca stuff a bit: when we have a working
2475 alloca.h, we're not messing with alloca any further. Should fix a
2476 bug reported by Bernd Demian <wega@csc-dd.de>.
2478 2000-09-29 Jonathan Blandford <jrb@redhat.com>
2480 * gnode.c (g_node_insert_after): Added function to keep symmetry
2481 with g_node_insert_before.
2483 2000-09-29 Martin Baulig <baulig@suse.de>
2485 Several minor ANSI C fixes.
2487 Added missing casts:
2488 * gdate.c (g_date_fill_parse_tokens): `s = (guchar *) str'.
2489 * gmain.c (g_idle_dispatch): `func = (GSourceFunc) source_data'.
2490 (g_idle_add_full): `(gpointer) function' in call to g_source_add().
2491 * gstrfuncs.c (g_strdown): `s = (guchar *) string' and
2492 `return (gchar *) string'.
2493 (g_strup): Likewise.
2494 (g_strchug): `start = (guchar*) string' in 1st for() argument;
2495 `strlen ((gchar *) start)' in call to g_memmove().
2496 * gstring.c (g_string_down): `s = (guchar *) string->str'.
2497 (g_string_up): Likewise.
2498 * gthreadpool.c (stop_this_thread_marker):
2499 `(gpointer) &g_thread_pool_new'.
2500 * gunidecomp.h (decomp_table[]): Cast all the strings to
2503 Put text following #endif into comments:
2506 2000-09-29 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2508 * configure.in, glib.h: Added errorcheck mutexes. These are
2509 activated through the preprocessor symbol
2510 G_ERRORCHECK_MUTEXES. Need to add an extra word to StaticMutex in
2511 order to achieve this. g_(static_)mutex_* functions instrument the
2512 mutex operations with mutex name and location, when compiled with
2513 -DG_ERRORCHECK_MUTEXES. g_thread_init activates the errorcheck
2514 mutexes, when compiled with -DG_ERRORCHECK_MUTEXES.
2516 2000-09-28 Havoc Pennington <hp@pobox.com>
2518 * glib.h (GThreadPriority): fix indentation
2519 (GConvertError): generic error is conventionally called
2520 _FAILED rather than _OTHER, at least at the moment,
2521 according to GError docs in docs/reference.
2523 * gconvert.c: s/_OTHER/_FAILED/
2525 2000-09-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2527 * configure.in: Adjusted the test for an unimplemented
2528 getpwuid_r. Info from Michael Pruett. This is just a forward
2529 merge from glib-1-2.
2531 * configure.in: Moved determination of G_THREAD_FLAGS before
2532 G_THREAD_LIBS. Check for UnixWare systems and set the right cflags
2533 and libs there (it needs -Kthread for the native compiler and
2534 -pthread for gcc). Thanks to Boyd Lynn Gerber <gerberb@zenez.com>
2537 * configure.in: Fail immediately, when no thread library is found,
2538 instead of continuing searching for rt libs etc. Changed almost
2539 all occurances of $enable_threads to $have_threads, as that's,
2542 * tests/threadpool-test.c: Define vars inside the guard to avoid
2545 * configure.in, tests/type-test.c: Some platforms support 64 bit
2546 'long long', but you can not printf or scanf them. In that case,
2547 don't define G_G{UINT|INT}64_FORMAT. Changed the type-test program
2550 * gutils.c (g_get_current_dir): max_len can't be initialized
2551 statically as it might call a function. So do it at first call.
2553 Tue Sep 26 2000 Elliot Lee <sopwith@redhat.com>
2555 * glib.h: Add G_GNUC_PURE macro (but don't use it anywhere).
2557 Mon Sep 25 2000 Elliot Lee <sopwith@redhat.com>
2559 * garray.c, glib.h, gmem.c: Add a few missing G_GNUC_CONST's.
2561 2000-09-21 Tor Lillqvist <tml@iki.fi>
2563 * makefile.mingw.in: Add gconvert.o. Use libiconv.
2565 * config.h.win32.in: Define HAVE_GETCWD.
2567 * glib.def: Add new entry points.
2569 2000-09-21 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2571 * configure.in: The last released automake (1.4) still requires
2572 AM_PROG_LIBTOOL instead of AC_PROG_LIBTOOL, so use that for the
2575 2000-09-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2577 * acconfig.h, configure.in, gutils.c: Test for the existence of
2578 getcwd, and use it only when found.
2580 * glib.h: Only use the gcc-variable-macro-argument-extension for
2581 gcc >= 2.4. Both patches from Jonas Oberg <jonas@gnu.org>.
2583 Mon Sep 18 10:58:21 2000 Owen Taylor <otaylor@redhat.com>
2585 * gutf8.c: Implement g_ucs4_to_utf8 which was in
2586 the header file but not implemented.
2588 Sun Sep 17 2000 Elliot Lee <sopwith@redhat.com>
2590 * glib.h configure.in: Define g_alloca() as an
2591 alloca-that-works-anywhere.
2593 * gconvert.c: Fix warnings which could have caused problems on
2596 Sun Sep 10 12:37:40 2000 Owen Taylor <otaylor@redhat.com>
2598 * glib.h gconvert.c (g_convert): Havoc Pennington's implementation
2599 of convenient character set conversion using iconv, with
2600 the addition of GError. We probably need a fallback that
2601 just does conversions between, say UTF-8,16,32 and ISO-8859-1
2602 for targets without iconv at all.
2604 Also add g_convert_with_fallback() to take care of conversions
2605 where we accept some loss going to the target encoding.
2607 2000-09-10 Havoc Pennington <hp@redhat.com>
2609 * gutf8.c (g_utf8_validate): Add this function.
2611 Sat Sep 9 18:50:42 2000 Owen Taylor <otaylor@redhat.com>
2613 * gstrfuncs.c (g_strescape): Add a missing g_return_if_fail().
2615 Mon Aug 21 03:57:46 2000 Tim Janik <timj@gtk.org>
2617 * glib.h (G_BREAKPOINT): for non-i386 and non-alpha, or non gcc,
2618 implement BREAKPOINT() as raise (5 /* SIGTRAP */);
2620 * glib.h: provide user-definable switch G_IMPLEMENT_INLINES,
2621 to turn on compilation of inline function implementations provided
2622 in header files with extern linkage.
2623 wrap inline function implementations into ifdef __G_UTILS_C__, so we
2624 really only compile them for gutils.c and not also into arbitrary user
2625 code that wants to make use of G_IMPLEMENT_INLINES.
2626 adjusted comment apropriately.
2628 * gutils.c: to turn on compilation of inline functions, provide
2629 #define G_IMPLEMENT_INLINES 1 and #define __G_UTILS_C__.
2631 2000-09-06 Havoc Pennington <hp@redhat.com>
2635 * docs/reference/glib/tmpl/error_reporting.sgml: docs
2637 Wed Sep 6 10:28:34 2000 Owen Taylor <otaylor@redhat.com>
2639 * guniprop.c gunicode.h gutf8.c: Some inline docs fixes.
2641 2000-09-06 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2643 * glib.h, gtimer.c, tests/thread-test.c:
2644 s/G_MICROSEC/G_USEC_PER_SEC/
2646 * glib.h: Removed G_G{U}{SHORT|INT|LONG}_FORMAT from glib.h, as
2647 they are really superfluous.
2649 Tue Sep 5 20:16:27 2000 Owen Taylor <otaylor@redhat.com>
2651 * configure.in docs/Makefile.am: Add gtk-doc checks
2652 for newly added docs/reference/ subdir.
2654 2000-09-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2656 * gthread.c (g_thread_error_quark): Don't use a G_LOCK, as it
2659 2000-09-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2661 * gstring.c (g_string_free): Use g_return_val_if_fail instead of
2662 g_return_if_fail, as the function now is supposed to return
2665 * gerror.c, gerror.h (g_propagte_error): Added function
2666 g_propagte_error to hand over local errors to the calling
2669 * glib.h: Include gerror.h before it is used for some g_thread_*
2672 * gthread.c, gthreadpool.c, glib.h: Enable error reporting for
2673 thread creation, namely for g_thread_create, g_thread_pool_new,
2674 g_thread_pool_push and g_thread_pool_set_max_threads.
2676 * tests/thread-test.c, tests/threadpool-test.c: Adapted
2679 2000-08-31 Tor Lillqvist <tml@iki.fi>
2683 * giowin32.c (g_io_channel_win32_make_pollfd): New function, to
2684 make a GPollFD from a GIOChannel. Creates the events and starts
2685 the reader thread if necessary.
2688 * giowin32.c (g_io_channel_win32_poll): No use for separate
2689 condition parameter.
2691 * gmain.c (g_get_current_time): (Win32): Simplify, use
2692 GetSystemTimeAsFileTime().
2694 2000-08-27 Tor Lillqvist <tml@iki.fi>
2696 * giowin32.c (g_io_channel_win32_poll): New function, otherwise
2697 like g_io_channel_win32_wait_for_condition(), but accept several
2699 (g_io_channel_win32_wait_for_condition): Call
2700 g_io_channel_win32_poll().
2702 * glib.h: Declare g_io_channel_win32_poll().
2704 * gwin32.c (g_win32_error_message): Don't believe return value
2707 2000-08-25 Elliot Lee <sopwith@redhat.com>
2709 * glib.h, gunicode.h, gmodule/gmodule.h:
2710 Mark the following functions G_GNUC_CONST (to allow optimization)
2711 because their results are a function of only their parameters:
2712 g_int_hash, g_int_equal, g_direct_hash, g_direct_equal,
2713 g_quark_to_string, g_date_is_leap_year, g_date_days_in_month,
2714 g_date_monday_weeks_in_year, g_date_sunday_weeks_in_year,
2715 g_spaced_primes_closest, g_unichar_is*, g_unichar_to*,
2716 g_unichar_*digit_value, g_unichar_type
2718 2000-08-21 Elliot Lee <sopwith@redhat.com>
2720 * gobject/Makefile.am, gobject/gobject-query.c,
2721 gobject/gparamspecs.c: Fix inclusion of config.h
2723 Mon Aug 21 14:46:23 2000 Owen Taylor <otaylor@redhat.com>
2725 * tests/gio-test.c: Fix a couple of trivial bugs that
2726 were causing warnings.
2728 Mon Aug 21 14:39:36 2000 Owen Taylor <otaylor@redhat.com>
2730 * glib.h: Use C99 varargs macros where possible
2731 (check __STDC_VERSION__), otherwise, on gcc, use an alternate
2732 form of gcc varargs which is more likely
2733 to be supported going forward. (Based on some code
2736 2000-08-17 Darin Adler <darin@eazel.com>
2739 * garray.c: (g_array_free), (g_ptr_array_free),
2740 (g_byte_array_free): Return the data left behind.
2741 * gstring.c: (g_string_free): Return the data left behind.
2743 Changed the free calls that leave data behind so they
2744 return a pointer to the left-behind data, NULL if told not
2745 to leave anything behind. This makes these calls easier
2746 to use correctly, without any incompatible API change for
2747 callers that don't know about the return value. Of course,
2748 it would be even clearer if the free calls weren't dual-purpose
2751 2000-08-12 Tor Lillqvist <tml@iki.fi>
2753 * giowin32.c: Some indentation and spacing fixes. Add some more
2755 (g_io_win32_add_watch): New function, with common code from
2756 g_io_win32_fd_add_watch and g_io_win32_sock_add_watch. Don't start
2757 more than one reader thread for a GIOChannel. We should obviously
2758 have just one reader thread reading a file descriptor or socket.
2760 2000-08-10 Havoc Pennington <hp@redhat.com>
2762 * gthread-2.0.pc.in (Cflags): don't duplicate glib Cflags
2764 * gmodule-2.0.pc.in (Cflags): don't duplicate glib Cflags
2766 * gobject-2.0.pc.in (Cflags): don't duplicate Cflags from glib
2769 2000-08-10 Havoc Pennington <hp@redhat.com>
2771 * glib-2.0.pc.in (Cflags): Look in glib-2.0/include for
2774 2000-08-07 Tor Lillqvist <tml@iki.fi>
2776 * tests/gio-test.c (shutdown_source): New function, that calls
2777 g_source_remove(). Check return value of g_source_remove(), and
2778 decrement running subprocess counter only if g_source_remove()
2779 actually did remove the source.
2781 (recv_message): Call shutdown_source() on EOF condition. Return
2782 FALSE on G_IO_HUP and G_IO_ERR condition. Fix printf format typo.
2784 Sun Aug 6 20:06:02 2000 Tim Janik <timj@gtk.org>
2786 * gmessages.c (g_log_domain_check_free): keep *last updated while
2787 running through the domain list, so we don't screw up the removal,
2788 patch provided by Gady Kozma <gadykozma@hotmail.com>.
2790 Sun Aug 6 20:03:41 2000 Tim Janik <timj@gtk.org>
2792 * gmessages.c (g_log_remove_handler): keep *last updated while running
2793 through the handler list, so we don't screw up the removal.
2795 Sun Jul 30 16:54:13 2000 Owen Taylor <otaylor@redhat.com>
2797 * gunicode.h: Fix stray character
2799 * gutf8.c (g_unichar_to_utf8): Allow outbuf to be NULL, in
2800 which case we just compute the length.
2802 2000-07-31 Havoc Pennington <hp@redhat.com>
2804 * Makefile.am (EXTRA_DIST): forgot to add .pc.in to EXTRA_DIST
2806 2000-07-31 Havoc Pennington <hp@redhat.com>
2808 * glib-2.0.pc.in, gobject-2.0.pc.in, gmodule-2.0.pc.in,
2809 gobject-2.0.pc.in: pkg-config data files
2811 * Makefile.am: Install/dist the .pc files
2813 * configure.in: Output the .pc files
2815 2000-07-31 Tor Lillqvist <tml@iki.fi>
2817 * giowin32.c (buffer_read): The code didn't compile (must
2818 have been sleepy when committing). "return" instead of "break"
2820 (g_io_win32_fd_add_watch): Cannot check if the file descriptor is
2821 readable by calling ReadFile to read zero bytes. ReadFile blocks
2822 on NT even if trying to read nothing at all. So, don't check if
2823 file descriptor is readable; assume this function isn't called
2826 Sun Jul 30 10:44:16 2000 Tim Janik <timj@gtk.org>
2828 * gmain.c (g_get_current_time): fix tor's recent changes which
2829 got rid of a required variable in the non-windows path.
2831 2000-07-30 Tor Lillqvist <tml@iki.fi>
2833 Finally, a new and improved IO Channel and condition watch
2834 implementation for Win32. Based on code provided by Craig Setera.
2836 When watching file descriptors, for which there is no select()
2837 like functionality on Win32 that would work on all Win32 platforms
2838 for all types of file descriptors (including anonymous pipes), we
2839 start a new thread that blocks while trying to read from the file
2840 descriptor. When the read returns, a Win32 Event is signalled that
2841 the polling routine eventually notices. Meanwhile, the data being
2842 read is stored in a circular buffer, from where the IO channel's
2843 read() method picks it up.
2845 If the buffer fills up the reading thread has to wait for space
2846 becoming available. For this another Win32 Event is used. The IO
2847 Channel's read() method signals this when it has read some data
2850 The separate reader thread(s), and the circular buffer(s) with
2851 associated events mean lots of possibilities for fun parallelism
2852 errors. But it seems to work OK, i.e. GIMP runs.
2854 * gmain.c: Small changes to the Win32 polling function.
2855 (g_main_win32_get_poll_func): New function. Perhaps it would be a
2856 good idea to provide this on all platforms.
2858 * giowin32.c: The bulk of the new implementation.
2859 (g_io_channel_win32_wait_for_condition): New function. To be used
2860 where on Unix one does a select() on the channel's fd, like
2861 libgimp's gimp_extension_process(). Could be provided on all
2864 * glib.h: Update documentation for IO Channels on Win32. Remove
2865 the declarations for the as of now obsolete old functions related
2866 to IO Channels for pipes with "wakeup" messages.
2868 * glib.def: Some new functions.
2870 * tests/gio-test.c: New file, to test GIOChannel and main loop.
2873 * tests/makefile.mingw.in: Add it.
2875 (Later the same night:)
2877 * giowin32.c: Compile in the debugging code all the time, but only
2878 output debug messages if told so. Add (unadvertised) function to
2879 turn on/off debug messages for a channel.
2881 (buffer_read): Don't loop. It is expected behaviour to return a
2882 short read occasionally, for instance when reading from
2883 pipes. It's the calling code that should loop if it *knows* how
2884 much the writer has written.
2886 * tests/gio-test.c: Correct the program's name in the output.
2887 (recv_message): Loop calling g_io_channel_read() (in a new
2888 function read_all()) until we have all the bytes we want (that we
2889 know the writer has written/will write).
2891 Thu Jul 27 05:15:11 2000 Tim Janik <timj@gtk.org>
2893 * gstrfuncs.c (g_strlcpy, g_strlcat): completed tor's fix
2894 to cover both #ifdef branches.
2896 2000-07-26 Tor Lillqvist <tml@iki.fi>
2898 * gstrfuncs.c (g_strlcpy, g_strlcat): Return 0 on error, not NULL.
2900 * glib.def: Add g_strlcpy, g_strlcat.
2902 * glibconfig.h.win32.in: Add gsize and gssize.
2904 Wed Jul 26 12:59:31 2000 Tim Janik <timj@gtk.org>
2906 * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
2907 updates the license headers to the GNU Lesser General Public License,
2908 as well as updating the copyright year to 2000.
2910 Wed Jul 26 05:47:48 2000 Tim Janik <timj@gtk.org>
2915 * glib.h: added g_strlcat() and g_strlcpy() wrappers, supplied by
2916 David Wheeler <dwheeler@ida.org>:
2918 * glib.h, gstrfuncs.c: added g_strlcpy and g_strlcat to support
2919 safe manipulation of fixed-length string buffers.
2920 These functions were originally developed by Todd Miller to simplify
2921 development of security-related programs, and
2922 are available on many (but not all) Unix-like systems,
2923 including OpenBSD, FreeBSD, and Solaris. See
2924 ftp://ftp.openbsd.org/pub/OpenBSD/src/lib/libc/string/strlcpy.3
2925 and http://www.openbsd.org/security.html.
2926 If there's a strlcpy/strlcat on the system, it's called, otherwise
2927 an implementation is provided.
2929 * testglib.c: Added tests for g_strlcpy, g_strlcat.
2931 Wed Jul 26 05:03:24 2000 Tim Janik <timj@gtk.org>
2933 * acglib.m4 (GLIB_SIZEOF): include <stdlib.h> and <stddef.h> if
2934 STDC_HEADERS is defined.
2937 * glibconfig.h: define gsize and gssize in terms of GLIB_SIZEOF_SIZE_T
2939 * glib.h (g_return_if_reached): applied darin's fix for copy'n
2940 paste error in the macro implementation.
2942 Wed Jul 26 00:46:03 2000 Tim Janik <timj@gtk.org>
2944 * glib.h: applied patch from Darin Adler <darin@eazel.com> which
2945 supplies g_return_if_reached(), g_return_val_if_reached() and
2948 2000-07-22 Tor Lillqvist <tml@iki.fi>
2950 * build-dll: Fix resource handling, the resource file got left out
2951 from the DLL after all... Remove the WIN32APIHEADERS, not needed
2952 with current windres.
2954 * glib.def: Add new functions.
2956 2000-07-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2958 * gutils.c, glib.h: Mark the functions g_basename and g_dirname
2959 deprecated. They will issue an warning once, when compiled with
2960 G_ENABLE_DEBUG, but continue to work as before. Instead the
2961 functions g_path_get_basename and g_path_get_dirname should be
2962 used, which BOTH return newly allocated memory, that has to freed
2963 by g_free. The new g_path_get_basename now strips trailing slashes
2964 from the path. This fixes #5097. For discussion see
2965 http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
2967 * gwin32.c, testglib.c, tests/dirname-test.c: Use the new
2968 functions instead of the old ones.
2970 * ghash.c, gscanner.c, glib.h: Mark the functions
2971 g_hash_table_freeze, g_hash_table_thaw and thus
2972 g_scanner_freeze_symbol_table and g_scanner_thaw_symbol_table
2973 deprecated. They will issue an warning once, when compiled with
2974 G_ENABLE_DEBUG. This fixes Bug #3883. For discussion see
2975 http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
2977 2000-07-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2979 * configure.in, glib.h: glibconfig.h and glib.h now include files
2980 outside of the extern "C" block. Makes some C++ compiler
2981 happy. Reported by Denis Vakatov <vakatov@peony.nlm.nih.gov>.
2983 Sat Jul 15 23:49:03 2000 Owen Taylor <otaylor@redhat.com>
2985 * glib/glib.texi: Remove incomplete start of info file -
2986 real docs are in RDP.
2988 Sat Jul 15 22:44:22 2000 Owen Taylor <otaylor@redhat.com>
2990 * configure.in: Add build/Makefile and
2991 build/win32/Makefile to AC_OUTPUT() so things build
2994 Sat Jul 15 09:11:46 2000 Tim Janik <timj@gtk.org>
2996 * gstrfuncs.c (g_strncasecmp): fixed an off by 0 error (yeah,
2997 the function went off when the while (n--) loop failed due to
2998 n==0 ;), reported by Jean-Louis HAMEL <jlhamel@club-internet.fr>.
3000 2000-07-15 Tor Lillqvist <tml@iki.fi>
3002 * Makefile.am (SUBDIRS): Include the "build" module in GLib, too,
3003 to make it more self-contained. If your CVS client doesn't
3004 automatically get it, do a cvs get build in glib.
3006 * */makefile.mingw.in: Include make.mingw from build in the glib
3009 Fri Jul 14 16:26:35 2000 Owen Taylor <otaylor@redhat.com>
3013 Fri Jul 14 12:22:49 2000 Owen Taylor <otaylor@redhat.com>
3015 * configure.in Makefile.am glib-config.m4 glib.m4: Move
3016 glib-config to glib-config-2.0 move glib.m4 to
3019 * Makefile.am gobject/Makefile.am gmodule/Makefile.am
3020 gthread/Makefile.am tests/Makefile.am: Change
3021 library names to libglib-1.3.la, etc, so that we
3022 can distinguish glib-1.2 and glib-2.0 on the linkline.
3024 * Makefile.am gobject/Makefile.am gmodule/Makefile.am:
3025 Move include files into /usr/include/glib-2.0.
3027 Thu Jul 6 18:54:49 2000 Owen Taylor <otaylor@redhat.com>
3029 * docs/Makefile.am (EXTRA_DIST): Remove info files
3032 2000-07-14 Tor Lillqvist <tml@iki.fi>
3034 * glib.def: Add g_error functions.
3036 * makefile.mingw.in: Add gbacktrace.o.
3038 * gbacktrace.c: No need to include <process.h>.
3040 2000-07-12 Havoc Pennington <hp@redhat.com>
3042 * glib.h: #include <gerror.h>
3044 * Makefile.am (include_HEADERS): Add gerror.h
3045 (libglib_la_SOURCES): Add gbacktrace.c
3047 * gbacktrace.c: Move g_on_error_query() in here (moved on the
3048 server, so history is preserved)
3050 * gerror.h: GError interface
3052 * gerror.c: GError implementation replaces stuff that's now in
3055 Sun Jul 9 21:20:45 2000 Owen Taylor <otaylor@redhat.com>
3057 * gunicode.h: Include stddef.h instead of stdlib.h
3059 2000-07-08 Tor Lillqvist <tml@iki.fi>
3061 * glib.h (GLIB_VAR): Rename the GUTILS_C_VAR macro to GLIB_VAR.
3063 * gunicode.h: Mark the g_utf8_skip array with GLIB_VAR.
3065 * glib.def: Add two missing entry points.
3067 Thu Jul 6 15:35:28 2000 Owen Taylor <otaylor@redhat.com>
3071 * Makefile.am (EXTRA_DIST): Dist fixes.
3073 * configure.in: Moderate the warnings just a little bit.
3075 2000-07-05 Tor Lillqvist <tml@iki.fi>
3077 * README.win32: Update.
3079 Mon Jul 3 17:58:02 2000 Owen Taylor <otaylor@redhat.com>
3081 * gutf8.c (g_utf8_get_charset_internal): Fix up
3082 to correspond to configure.in checks.
3084 Mon Jul 3 17:18:19 2000 Owen Taylor <otaylor@redhat.com>
3086 * glib.h: Comment g_get_codeset() out of the header file
3087 temporarily. (Very similar to g_get_charset(), need
3088 to resolve the two.)
3090 2000-07-01 Tor Lillqvist <tml@iki.fi>
3092 * glib.def: Add new entry points.
3094 * makefile.{mingw,msc}.in: Add the new Unicode object files.
3096 Thu Jun 29 15:57:28 2000 Owen Taylor <otaylor@redhat.com>
3100 * Makefile.am: added snapcheck target to go along with snapshot
3102 * gstring.c glib.h (g_string_hash): Add g_string_hash to
3103 go along with g_string_equal.
3105 Tue Jun 27 12:40:23 EDT 2000 David A. Wheeler <dwheeler@dwheeler.com>
3107 * glib.h: Added g_string_equal for comparing GStrings;
3108 changed g_str_equal so it returns gboolean (instead of gint).
3110 * gstring.c: Modified GString implementation to support embedded
3111 ASCII NUL ('\0') characters, and implemented g_string_equal.
3113 * testglib.c tests/string-test.c: Added tests for g_string_equal
3114 and tests for proper handling of embedded ASCII NUL characters.
3116 Wed Jun 28 22:52:00 2000 Owen Taylor <otaylor@redhat.com>
3118 * Makefile.am (libglib_la_SOURCES): Fix
3119 gunichartable.h => gunichartables.h. (From Eric Limings)
3121 Fri Jun 23 17:20:26 2000 Tim Janik <timj@gtk.org>
3123 * glib.h: define gstring in terms of gchar*. this typedef reflects
3124 the type name of the primitive G_TYPE_STRING in the gobject module.
3126 Wed Jun 21 12:09:03 2000 Owen Taylor <otaylor@redhat.com>
3128 * gunicode.h gutf8.c guniprop.c gunidecomp.[ch] gunichartables.h
3129 Makefile.am glib.h: Initial pass at adding unicode support
3130 functions. A few things still need to be implemented, a bit
3131 of cleanup needs to be done, tests need to be added, and
3132 the docs need to be finished, but this should allow replacing
3133 most or all use of libunicode.
3135 2000-06-06 Tor Lillqvist <tml@iki.fi>
3137 * giowin32.c (g_io_channel_win32_pipe_readable): If we are
3138 watching the same pipe for different conditions (with different
3139 callbacks), check them all. Only call the callback for G_IO_IN
3140 from here. (This bug popped up when a watch for G_IO_ERR|G_IO_HUP
3141 was added to gimplib.)
3143 2000-05-30 Tor Lillqvist <tml@iki.fi>
3145 * gutils.c (g_locale_get_codeset): Implement on Win32.
3147 * glib.def: Add g_get_codeset.
3149 * tests/Makefile.am (EXTRA_DIST): makefile.cygwin* has been
3150 renamed to makefile.mingw*.
3152 Tue May 30 16:01:32 2000 Owen Taylor <otaylor@redhat.com>
3154 * glib.h gutils.c: Move the g_locale_get_codeset() up in the
3155 header file to correspond to to comments about memory
3156 management. Rename to g_get_codeset() to avoid
3157 polluting the g_locale_* namespace, which probably
3158 would have g_locale_get_codeset (GLocale *locale).
3161 Mon May 29 14:10:35 2000 Owen Taylor <otaylor@redhat.com>
3163 * gutils.c (g_locale_get_codeset): Add function to get the
3164 codeset name for the current locale.
3166 * configure.in acconfig.h: Add check for nl_langinfo(CODESET);
3168 Fri May 19 11:39:29 2000 Tim Janik <timj@gtk.org>
3170 * gutils.c (g_snprintf):
3171 (g_vsnprintf): added argument assertments.
3173 * gstring.c (g_string_assign): added argument assertments.
3174 (g_string_truncate): make len a guint.
3176 Fri May 19 09:00:44 2000 Tim Janik <timj@gtk.org>
3178 * gmem.c (g_free): fixed SIZEOF_LONG==4 assumption with
3179 ENABLE_MEM_CHECK, from Art Haas <ahaas@neosoft.com>.
3181 * gslist.c (g_slist_reverse): shut up compiler.
3183 * gscanner.c (g_scanner_get_token_ll): removed inline assignment.
3185 * garray.c: remove index>=0 checks for unsigned indices.
3187 * gmain.c (g_idle_prepare): timeout assignment fix.
3189 * gtree.c (g_tree_node_rotate_right): shut up compiler.
3191 2000-05-13 Tor Lillqvist <tml@iki.fi>
3194 * tests/makefile.mingw.in
3195 * build-dll: Rename makefile.cygwin(.in) to
3196 makefile.mingw(.in), which better describes what it is. Move the
3197 build of gmodule, gthread and gobject DLLs to makefiles in those
3198 directories. Move resource file handling and build number bump to
3199 build-dll, where it sits much cleaner.
3202 * Makefile.am (EXTRA_DIST): Update accordingly.
3204 * glib.h: Add G_PI, G_PI_2, G_PI_4, G_E, G_LN2, G_LN10 and
3205 G_SQRT2. M_PI etc aren't necessarily in <math.h> in strict ISO C
3208 * glib.def: Add g_strcanon.
3210 * gtree.c (g_tree_node_rotate_left): Remove unused variables.
3212 * gwin32.c (g_win32_opendir): Remove unneeded statement.
3214 Thu May 4 02:04:46 2000 Tim Janik <timj@gtk.org>
3216 * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
3217 broken and require an empty arg, give it to them.
3219 Fri Apr 28 23:54:35 2000 Tim Janik <timj@gtk.org>
3221 * setup things for a new sub-library libgobject:
3223 * Makefile.am (SUBDIRS): added gobject
3225 * glib-config.in: feature -lgobject.
3227 * configure.in (AC_OUTPUT): generate gobject/Makefile.
3229 * glib.m4 (AM_PATH_GLIB): feature gobject module.
3231 * glib.spec.in: added %{prefix}/lib/libgobject-1.3.so.*
3233 Fri Apr 28 21:41:49 2000 Tim Janik <timj@gtk.org>
3235 * glib.h: added G_STRLOC macro.
3236 G_STRUCT_OFFSET(): signedness corrections.
3237 (G_CSET_DIGITS): list 0-9.
3238 * gscanner.c (g_scanner_config_template): use G_CSET_DIGITS.
3244 (g_strreverse): return the modified string instead of void, so
3245 calls to these functions can be nested.
3246 (g_strcanon): new function, canonicalizes string according to
3247 a given character set.
3249 Fri Apr 28 19:45:16 2000 Tim Janik <timj@gtk.org>
3251 * gasyncqueue.c (g_async_queue_unref): get rid of an unused variable.
3253 Wed May 10 19:52:44 2000 Owen Taylor <otaylor@redhat.com>
3255 * glib.m4: Print found version when test succeeds.
3257 2000-05-04 Tor Lillqvist <tml@iki.fi>
3259 * makefile.cygwin.in
3260 * tests/makefile.cygwin.in: Include the common makefile snippet
3261 from ../build/win32.
3263 Maybe CVSROOT/modules should be changed so that the 'build' module
3264 is included within the glib module (and gtk+, and gimp, and maybe
3265 others later), in the same way as the 'macros' module is included
3266 in lots of GNOME CVS modules?
3268 2000-05-02 Tor Lillqvist <tml@iki.fi>
3270 * glib.def: Add new functions.
3272 * makefile.{cygwin,msc}.in (glib_OBJECTS): Add new object files.
3274 * tests/makefile.{cygwin,msc}.in: Add threadpool-test.
3276 2000-04-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3278 * gasyncqueue.c: New File implementing an asynchronous queue to be
3279 used for asynchronous inter-thread communication.
3281 * gthreadpool.c: New File implementing a thread pool to be used
3282 for distributing work among several threads.
3284 * glib.h: Added the type and function declarations for these two
3287 * tests/threadpool-test.c: New File implementing a test for the
3288 thread pool. This also checks the asynchronous queue underlying
3291 * tests/Makefile.am: Changed accordingly.
3293 2000-04-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3295 * configure.in: Look for both pthread_create and pthread_join in
3296 the thread library. Some systems define one of them, but not both
3297 in libc. Arghh. Now we really start a thread and join it later and
3298 check, whether the thread to actually ran.
3300 * glib.h, gcache.c, gtree.c: Changed the 'value' parameter of
3301 g_cache_remove from gpointer to gconstpointer. Dito for the 'key'
3302 parameter of g_tree_lookup and g_tree_remove and the 'data'
3303 parameter of g_tree_search. This function now takes a function of
3304 type GCompareFunc instead of GSearchFunc. This fixes Bug
3305 #8267. Thanks to Juan Toledo <toledo@users.sourceforge.net> for
3308 * glib.h: Removed declaration of GSearchFunc.
3310 * gmem.c: s/GSearchFunc/GCompareFunc/.
3312 2000-04-19 Tor Lillqvist <tml@iki.fi>
3314 * glib.def: Update entry point list.
3316 2000-04-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3318 * glib.h (G_TRYLOCK): Made the debugging G_TRYLOCK call also work
3319 for compilers with funny G_STMT_(START|END) macros.
3321 * tests/thread-test.c: Implemented a check for that.
3323 * gutils.c (g_getenv): Changed the win32 part of this function to
3324 be thread safe and to make the returned environment string
3325 persistent to match the UN*X behavior. This is again a response to
3328 * glib.h (G_LOCK_NAME): Removed parentheses around the lock name,
3329 as that seems to cause problems for some compilers and really
3332 Wed Apr 19 08:32:32 2000 Tim Janik <timj@gtk.org>
3334 * gscanner.c (g_scanner_new): make sure that
3335 scanner->config->cset_skip_characters is "" instead of NULL, so we
3336 don't segfault further on.
3338 2000-04-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3340 * glib.h, glist.h, gslist.h: Changed the 'data' parameters from
3341 gpointer to gconstpointer for the functions
3342 g_(list|slist)_(remove|find|find_custom|index), as they do not
3343 change this parameter. This fixes bug #4836.
3345 * glib.h: Changed comment for g_getenv to reflect, that the
3346 returned memory must not be freed. Fixes bug #8983.
3348 2000-04-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3350 * configure.in, acconfig.h: Add configure test for garbage
3351 collector friendliness for GLib. If enabled, ENABLE_GC_FRIENDLY
3354 * garray.c, ghash.c, glist.c, gmain.c, gmem.c, gnode.c, gqueue.c,
3355 gslist.c, gtree.c: If ENABLE_GC_FRIENDLY is defined, NULLify all
3356 memory released by the user, but cached by GLib. This lets a
3357 garbage collector have a more correct view of the actually used
3360 * garray.c, glib.h: Added g_(array|ptr_array|byte_array)_sized_new
3361 functions, that reserve a certain amount of memeory for the array
3362 at creation time to avoid reallocation. Fixes bug #6707 from
3363 Charles Kerr <ckerr@osserver1.nssl.noaa.gov>.
3365 * glib.h, gqueue.c, tests/queue-test.c (main): Renamed
3366 g_queue_create to g_queue_new in conformance to all other GLib
3369 2000-04-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3371 * grand.c (g_rand_new): Fixed bug. Thanks to Marko Kreen
3372 <marko@l-t.ee> for reporting that.
3374 2000-03-26 Tor Lillqvist <tml@iki.fi>
3376 * README.win32: Tell about using the mingw-based gcc, which is
3377 much easier than modifying the cygwin gcc to product mingw code
3378 for the msvcrt runtime.
3380 * makefile.cygwin.in (WIN32APIHEADERS): Kludge to make it work
3381 with a "pure" mingw gcc, too.
3383 2000-03-24 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3385 * garray.c: Made GArray behave correctly. Now zero_terminated
3386 really means, that the element array->data[array->len] exists and
3387 is zeroed, and clear means that any unassigned elements obtained
3388 through g_array_set_size (the only way to get unassigned elements
3389 AFAICT) are zeroed. Added some macros to make the code more
3390 obvoius. Also made GPtrArray zero elements after
3391 g_ptr_array_set_size. This is done in a portbale way (assignment
3392 of NULL instead of just memsetting it to zero), though that might
3393 be more portability than we actually want.
3395 * Makefile.am, gthread/Makefile.am, gmodule/Makefile.am,
3396 tests/Makefile.am: Added various win32 related *.in files to
3397 EXTRA_DIST to let 'make distcheck' procude all the corresponding
3398 files, which it silently fails to do currently.
3400 2000-03-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3402 * configure.in: After finding the right thread library (containing
3403 e.g. pthread_create) we now search for the right realtime library
3404 (containing e.g. sched_get_priority_max). Makes the output of the
3405 thread related libraries correct.
3407 * gtimer.c (g_usleep): The current implementation of g_usleep
3408 (simply calling select) doesn't work reliable for multi-threaded
3409 programs on some platforms (bad omen for the main loop....), so I
3410 changed the implementation for thread-using programs to wait for a
3411 GCond for the specified amount of time (NB: sleep and usleep are
3412 not MT-safe in general, because they often use signals).
3414 Wed Mar 22 16:49:57 2000 Owen Taylor <otaylor@redhat.com>
3416 * gmem.c (g_mem_chunk_area_compare): Fix indentation.
3418 2000-03-22 Elliot Lee <sopwith@redhat.com>
3420 * gmem.c (g_mem_chunk_area_compare): Fix 64-bitness bug in
3421 comparing two pointers more than 4G apart.
3423 2000-03-22 Tor Lillqvist <tml@iki.fi>
3425 * gutils.c: Move Win32-only includes after inclusion of glib.h, so
3426 that G_OS_WIN32 is defined.
3428 * glibconfig.h.win32.in: Add GSystemThread.
3430 2000-03-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3432 * gutils.c (g_get_current_dir): Ok, Marcus Brinkmann
3433 <Marcus.Brinkmann@ruhr-uni-bochum.de> convinced me, that 128 KB
3434 path length might not be enough for the HURD. So I changed the
3435 loop to at least avoid an integer overflow, which could happen at
3438 * configure.in: Test for sched_yield as the native yield function
3439 first. Corrected typo g_thread_sleep -> g_usleep. Corrected
3440 message for the pthread_create test. Negative Priorities are
3441 allowed (and used on Solaris), so consider
3442 sched_get_priority_min failed only if it returns -1, not <0. Check
3443 for sched_get_priority_min also in -lrt, if not found in -lpthread
3444 alone and add -lrt to G_THREAD_LIBS then. Remove special case
3445 handling of priorities for older solaris versions and posix
3446 threads. Thanks to Wan-Teh Chang <wtc@netscape.com> for suggesting
3447 some of those changes.
3449 * config.guess, config.sub, ltconfig, ltmain.sh:
3450 Upgrade to libtool 1.3.4.
3452 2000-03-21 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3454 * glib.h, configure.in, gutils.h: always define G_GNUC_EXTENSION,
3455 even when not needed by GLib. That's actually also the way, the
3456 GLib reference manual describes that macro. Therefore I had to
3457 remove the lonesome #include <glibconfig.h> in gutils.c, which
3458 doesn't seem to be needed there however. This change should make
3459 Ben Gertzfield <che@debian.org> happy.
3461 * gutils.c: Furthermore two warnings in gutils.c were voided,
3462 which crept in due to my last change.
3464 * gutils.c (g_get_current_dir): Allocate only up to 128KB for a
3465 pathname. While this is an arbitrary value just like 2048, it
3466 seems to be enough (after all, even 4GB is an arbitrary value).
3468 2000-03-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3470 * gmain.c (g_main_poll): Warn in case of an error during the call
3471 to poll(2). Closes Bug#7564 as reported by David Helder
3472 <dhelder@umich.edu>.
3474 * gutils.c (g_get_current_dir): Make g_get_current_dir work on
3475 systems with unlimited pathname length like the HURD (It worked
3476 there before, but only for pathes shorter than 2048). Closes
3477 Bug#4525 as reported by Marcus Brinkmann
3478 <Marcus.Brinkmann@ruhr-uni-bochum.de>.
3480 2000-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3482 * giounix.c (g_io_unix_write, g_io_unix_read): Interpret EINTR as
3485 2000-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3487 * configure.in: Added the missing POSIX_NO_YIELD and
3488 POSIX_NO_PRIORITIES warning messages.
3490 * configure.in: Use AC_TRY_RUN instead of AC_TRY_LINK, to test for
3491 real thread support. On solaris pthread_create can be linked to
3492 even in -lc, but it doesn't work then.
3494 * configure.in: Don't use priorities for threads, when the
3495 minimal/maximal priorities couldn't be determined at configure
3498 * configure.in, gthread.c: Always define GSystemThread in
3499 glibconfig.h to represent a system thread.
3501 * configure.in: Do not use native recursive threads, when
3502 possibe. We use some features, that they do not expose (namely the
3505 * glib.h, gthread.c: Redefined GStaticRecMutex. The functions are
3506 now implemented in a different way, which should be way
3507 faster. Alsothere are now functions g_static_rec_mutex_unlock_full
3508 and g_static_rec_mutex_lock_full to leave/enter a recursive mutex
3511 * gthread.c (g_thread_self): Do not test the system_thread to be
3512 non-zero to speed things up.
3514 * gthread.c (g_mutex_init): Therefore set the system_thread of the
3517 * tests/thread-test.c: Rerun all tests once again, but this time
3518 we fool the system into thinking, that the available thread system
3519 is not native, but userprovided.
3521 2000-03-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3523 * gqueue.c (g_queue_push_tail_link, g_queue_push_head_link): We
3524 want the next and prev pointer of the inserted link to be NULL.
3526 2000-03-06 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3528 * configure.in: Another small change to the pthread_.. search
3529 pattern. Should work *now* for AIX.
3531 2000-03-04 Tor Lillqvist <tml@iki.fi>
3533 * gwin32.c (g_win32_error_message): New function that returns the
3534 message string for a Win32 error code.
3536 * glib.h: Declare it.
3538 * glib.def: Export it, plus g_node_copy.
3540 2000-03-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3542 * configure.in: Make the search for pthread_attr_... prototypes
3543 find names at the start of a line also, like it is on AIX. Thanks
3544 to Valdis Kletnieks <Valdis.Kletnieks@vt.edu> for the info.
3546 Wed Mar 1 10:39:39 2000 Tim Janik <timj@gtk.org>
3548 * gslist.c (g_slist_reverse): minor optimization.
3550 * testglib.c (g_node_test): added a couple of tests for
3554 * gnode.c (g_node_copy): new function to copy subtrees,
3555 supplied by dbsears@ix.netcom.com.
3556 changed iterator to walk the children list backwards, so
3557 we get down from O(n^2) to O(n).
3559 * gnode.c (g_node_first_sibling): applied patch from
3560 dbsears@ix.netcom.com to optimize access if node->parent
3563 * gutils.c (g_get_any_init): backed out HAVE_PW_GECOS check around
3564 assignment of g_real_name, sicne HAVE_PW_GECOS is never defined and
3565 thus breaks the original code.
3567 * merged changes from 1.2.7.
3569 Fri Jan 28 11:37:41 2000 Owen Taylor <otaylor@redhat.com>
3571 Bug #4156 - Changes vaguely modelled after Scott Gifford's patch
3573 * gtimer.c (g_timer_elapsed): Never report negative times -
3576 * gmain.c (g_timeout_prepare): Guard against unexpected
3577 clock shifts by never setting a timeout of more than
3578 data->interval msecs.
3580 2000-02-27 Tor Lillqvist <tml@iki.fi>
3582 * glib.def: Add new functions.
3584 2000-02-23 Tor Lillqvist <tml@iki.fi>
3586 * README.win32: Add a missing step to the setup instructions for
3587 gcc-2.95.2. Thanks to Arnaud Charlet.
3589 * glib.def: Add missing entry point.
3591 2000-02-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3593 * configure.in: Changed GCC version test to also accept major
3594 versions > 2. Thanks to Ben Gertzfield <che@debian.org> for
3597 Thu Feb 17 12:53:44 2000 Tim Janik <timj@gtk.org>
3599 * gstring.c: changed g_str_hash() to a 31 bit version based on
3600 a submission by Karl Nelson and hand optimized ad absurdum by
3603 * gstring.c: applied patch from havoc for new gstring functions,
3604 added some more sanity checks, coding style fixups.
3606 2000-02-13 Havoc Pennington <hp@pobox.com>
3608 * tests/string-test.c (main): Add tests for the new GString
3611 * testglib.c (main): Add tests for the new GString features
3613 * gstring.c (g_string_insert_len): New function; insert
3614 a given length of string at a given position.
3615 (g_string_append): reimplement in terms of g_string_insert_len
3616 (g_string_append_len): new function
3617 (g_string_insert_c): accept -1 for "pos" arg to mean "append"
3618 (g_string_append_c): reimplement in terms of g_string_insert_c
3619 (g_string_prepend): reimplement in terms of g_string_insert_len
3620 (g_string_prepend_len): new function
3621 (g_string_prepend_c): reimplement in terms of g_string_insert_c
3622 (g_string_insert): reimplement in terms of g_string_insert_len
3624 * glib.h: Declare g_string_insert_len, g_string_append_len,
3625 g_string_prepend_len
3627 Sun Feb 13 08:16:47 2000 Tim Janik <timj@gtk.org>
3629 * configure.in: wtf??? someone destroyed the configure.in, reverting to
3630 an older version from Feb 4 which apears to still work.
3632 2000-02-07 Tor Lillqvist <tml@iki.fi>
3634 * gmodule.rc.in gthread.rc.in: Move to corresponding subdirectories.
3637 * gmodule/Makefile.am
3638 * gthread/Makefile.am: Change accordingly.
3640 * makefile.cygwin: Corresponding changes, some cleanup.
3642 2000-02-05 Tor Lillqvist <tml@iki.fi>
3644 * glib.rc.in gmodule.rc.in gthread.rc.in: New files, for putting
3645 version info in the DLLs on Win32.
3647 * Makefile.am: Generate corresponding *.rc files and distribute
3650 * makefile.cygwin.in: Add rules to automatically bump a "build
3651 number" in the version info in the rc files each time the DLL is
3652 built. But do this only for the person who releases binaries. If
3653 others build the DLLs, the build number is set to zero.
3655 Fri Feb 4 19:36:05 2000 Tim Janik <timj@gtk.org>
3658 * gdataset.c: return stolen data from g_datalist_id_remove_no_notify()
3659 and g_dataset_id_remove_no_notify() to avoid second lookup for common
3662 2000-02-01 Tor Lillqvist <tml@iki.fi>
3665 * gstrfuncs.c (g_filename_to_utf8, g_filename_from_utf8): New
3666 functions for conversion between UTF-8 and the encoding expected
3667 by C runtime functions like open() and stat(), and returned by
3670 Implement them on Win32 where we use the system "ANSI" codepage,
3671 which might be single-byte or double-byte. On Unix, just skip the
3672 issue for now and provide dummy implementations that return a copy
3677 * glib.def: Minor updates.
3679 Wed Jan 26 05:24:38 2000 Tim Janik <timj@gtk.org>
3682 * gmain.c: s/current_time/dispatch_time/ for the dispatch() handlers.
3683 refetch the current time after invocation of poll() to cover up for
3684 the time spent in that function call.
3686 Fri Jan 21 10:18:24 2000 Owen Taylor <otaylor@redhat.com>
3688 * glib.h (G_N_ELEMENTS): Added G_N_ELEMENTS macro to determine
3689 the number of elements in an array.
3691 Sun Jan 9 13:28:36 2000 Tim Janik <timj@gtk.org>
3693 * gstrfuncs.c (g_strtod): correctly fetch the current locale,
3696 1999-12-16 Tor Lillqvist <tml@iki.fi>
3698 * gmodule/gmodule-win32.c: Use FormatMessage to translate system
3699 error codes into textual messages.
3701 1999-11-25 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3703 * glib.h (G_TRYLOCK): This of course should return TRUE in a
3704 program with a thread-disabled GLib.
3706 1999-11-18 Tor Lillqvist <tml@iki.fi>
3708 * glib.def: g_strjoin was missing.
3710 1999-11-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3712 * acconfig.h, config.h.win32.in, configure.in: Renamed
3713 GLIB_SIZEOF_PTHREAD_T to GLIB_SIZEOF_SYSTEM_THREAD to reflect
3716 * configure.in: Cope with systems, that have a pthread_t type,
3717 that is not a pointer. Hint from Karl Nelson
3718 <kenelson@ece.ucdavis.edu>. Define GLIB_SIZEOF_SYSTEM_THREAD to 4
3719 for Solaris. Cope with systems, that have no default mutex
3720 initialize, like obviously most DCE systems.
3722 * glib.h, gthread.c: Changed the prototype of thread_create and
3723 thread_self to return the system thread into provided memory
3724 instead of a return value. This is necessary, as HPUX has a
3725 pthread_t, that is bigger than the biggest integral type there.
3727 * gthread.c: system_thread is no longer a pointer, but an memory
3728 area of size GLIB_SIZEOF_SYSTEM_THREAD. Changed the
3729 zeroinitialization and the tests for zeroness accordingly.
3731 1999-11-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3733 * configure.in: Create docs/glib-config.1 from
3734 docs/glib-config.1.in. Makes 'make distcheck' happy (and me too).
3736 * glib-config.1: Removed from CVS, as it is a generated file.
3738 1999-11-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3740 * configure.in: Make the test for getpwuid_r work on newer AIX
3741 versions, too. Still works on Solaris and Linux. Patch from Craig
3742 Rodrigues <rodrigc@mediaone.net>.
3744 1999-11-08 Tor Lillqvist <tml@iki.fi>
3746 * gwin32.c (g_win32_getlocale): Look at env vars LC_ALL, LC_CTYPE
3747 and LANG first. Some refinements to the sublanguage logic.
3749 1999-11-04 Tor Lillqvist <tml@iki.fi>
3751 * makefile.{cygwin,msc}.in: Add gwin32 object. Add rule to make .i
3752 (preprocessed source) files.
3754 1999-11-01 Tor Lillqvist <tml@iki.fi>
3757 * glib.def: Rename Win32-only functions from gwin_* to g_win32_*
3758 to match the GLib naming conventions.
3763 * Makefile.am: Move the Win32-only functions to the new
3766 1999-10-31 Tor Lillqvist <tml@iki.fi>
3768 * gutils.c (gwin_getlocale): New Win32-specific function, returns
3769 a Unixish current locale string (en, zh_TW etc).
3771 * glib.h: Declare it.
3773 * glib.def: Export it.
3775 * testglib.c: Test it.
3777 * gmessages.c (Win32: ensure_stdout_valid): Some improvements,
3778 make sure we don't call AllocConsole several times, which I think
3781 Sun Oct 31 18:55:01 1999 ape@spacetec.no (Asbjorn Pettersen)
3783 * gcache.c (g_cache_remove): Test if node is NULL.
3784 If not tested, GIMP's script-fu will crash.
3786 Sun Oct 17 18:11:40 1999 Tim Janik <timj@gtk.org>
3788 * gdataset.c (g_data_set_internal): remove g_dataset_global_lock around
3789 destroy() notification here as well.
3791 1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3793 * gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
3794 is called recursivly. Reported by Ola Andersson <rand@ling.umu.se>.
3796 Tue Oct 12 14:17:12 1999 Tim Janik <timj@gtk.org>
3798 * glib.h: removed useless g_string(x) macro that cluttered the namespace
3799 and was just a poor wrapper around the cpp '#' symbol, use #x if you
3800 need to work around this.
3801 added new macro G_STRINGIFY(arg) that will convert arg to a string,
3802 no matter whether it contains macros or not.
3804 1999-10-12 Tor Lillqvist <tml@iki.fi>
3806 * config.h.win32.in: Define the new GLIB_SIZEOF_* constants here,
3809 * glib.h: Small Win32 comments improvement.
3811 Tue Oct 12 12:16:12 1999 Tim Janik <timj@gtk.org>
3813 * gmessages.c (g_printf_string_upper_bound): completly new
3814 implementation for printf string upper bounds calculation.
3815 we handle all glibc 2.1 format specifiers now, except for positional
3816 parameters (%nn$...) and wide char strings, plus some obscure upper
3817 case variants of the standard conversions. this fixes a lot of
3818 bugs in the old code, i.e.
3819 - NULL format strings
3820 - floats with exponents >+24
3822 - precision specifications in general
3823 - negative field widths
3824 - %p for SIZEOF_VOID_P > 4 platforms
3825 we now issue warnigns in places where the old code would have
3826 caused buffer overruns anyways. warnings are suppressed when invoked
3827 from glogv(), to avoid infinite recursions if someone passes a log
3828 message that comes with really obscure format specifications.
3830 Tue Oct 12 11:49:00 1999 Tim Janik <timj@gtk.org>
3832 * gstrfuncs.c: nuked old g_printf_string_upper_bound() version.
3834 Tue Oct 12 03:34:40 1999 Tim Janik <timj@gtk.org>
3836 * glib.h: added GFloatIEEE754 and GDoubleIEEE754 unions to access sign,
3837 mantissa and exponent of IEEE floats and doubles (required by the new
3838 version of g_printf_string_upper_bound). the unions are endian specific,
3839 we handle G_LITTLE_ENDIAN and G_BIG_ENDIAN as of currently. ieee floats
3840 and doubles are supported (used for storage) by at least intel, ppc and
3842 http://twister.ou.edu/workshop.docs/common-tools/numerical_comp_guide/ncg_math.doc.html
3844 Mon Oct 11 18:01:49 1999 Tim Janik <timj@gtk.org>
3846 * configure.in: added additional checks to figure sizes of size_t,
3847 ptrdiff_t and intmax_t (required by g_printf_string_upper_bound).
3849 Wed Oct 6 12:44:23 PDT 1999 Manish Singh <yosh@gimp.org>
3851 * configure.in: blah. use G_WITH_CYGWIN instead of G_HAVE_CYGWIN
3853 1999-10-05 Tor Lillqvist <tml@iki.fi>
3855 * glib.h: (Win32) Drop the mapping of POSIX function names to the
3856 underscored versions, it's unnecessary after all. With MSVC we get
3857 them from oldnames.lib, with gcc-2.95 and mingw32 from
3858 -lmoldname-msvc. Add comment about what headers to include for
3861 * glibconfig.h.win32.in: Don't define WIN32 and NATIVE_WIN32.
3863 * gerror.c (g_on_error_query): (Win32) Slightly increased verbosity.
3865 * build-dll: Don't strip.
3867 * tests/string-test.c tests/dirname-test.c: Use G_OS_WIN32.
3869 * glib.def: Add g_thread_use_default_impl.
3871 Sun Oct 3 19:46:55 PDT 1999 Manish Singh <yosh@gimp.org>
3873 * configure.in: use G_HAVE_CYGWIN instead of G_OS_FEATURE_CYGWIN
3875 Sun Oct 3 19:25:42 PDT 1999 Manish Singh <yosh@gimp.org>
3879 * glibconfig.h.win32: G_OS_FOO #defines. I *think* I got the cygwin
3880 and beos stuff right, but I haven't tested it. The respective
3881 porters should fix any screwups
3891 * testglib.c: use G_OS stuff
3893 Wed Sep 22 01:53:18 1999 Tim Janik <timj@gtk.org>
3895 * glib.h (NULL): define NULL as (0L) if __cplusplus is defined, to
3896 avoid "ANSI C++ forbids implicit conversion from `void *' in argument
3897 passing" errors upon NULL usage in C++ programs (gcc-2.95 is on crack
3898 for erroring out on this, instead of just issueing a warning).
3900 * glib.h (g_trash_stack_pop): use uncasted NULL again.
3902 Fri Sep 17 10:24:45 1999 Tim Janik <timj@gtk.org>
3904 * gmem.c (g_mem_chunk_compute_size) (g_mem_chunk_new): applied
3905 patch from Soeren Sandmann <sandmann@daimi.au.dk>, to force mem
3906 chunk's area sizes to be a multitiple of atom_size, and to
3907 eliminate the MAX_MEM_AREA restriction of 65536 bytes. we also
3908 catch cases where users pass an area size < atom size with a
3909 return_if_fail statement now (which is ok, because previously this
3910 lead to memory corruption anyways).
3912 Thu Sep 16 13:19:54 1999 Tim Janik <timj@gtk.org>
3914 * glib.h (g_trash_stack_pop): add explicit (GTrashStack*) cast for NULL
3915 pointer to cure ANSI C++ error.
3917 Mon Sep 13 23:25:59 1999 Tim Janik <timj@gtk.org>
3919 * gmessages.c (g_logv): in case we have to abort the program,
3920 debugging is enabled and we are not called recursively, try
3921 to abort with raise (SIGTRAP) first, so developers may ignore
3922 certain failure conditions during debugging stage.
3924 Thu Aug 26 15:09:36 1999 Tim Janik <timj@gtk.org>
3927 * gmodule/Makefile.am:
3928 * gthread/Makefile.am: added --export-dynamic so we can load dynmic
3929 modules, (required, according to the libtool 1.3.3 docu).
3931 1999-07-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3933 * grand.c (g_rand_new): Use /dev/urandom, as it doesn't block,
3934 which /dev/random might do. Do not XOR the time, when getting the
3935 seed form /dev/urandom, as this is good itself. Prevent the
3936 initial seed from being zero, which causes the PRNG to produce
3937 only zeros. Hints from Colin Plumb <colin@pgp.com>.
3939 1999-08-17 Tor Lillqvist <tml@iki.fi>
3941 * glib.h (g_trash_stack_push): Add a cast.
3944 * glist.c: Make the inline functions static inline, and add
3945 separate extern wrappers. Not all compilers produce callable entry
3946 points for inline functions, even if gcc does.
3948 Sun Aug 15 02:47:14 1999 Tim Janik <timj@gtk.org>
3950 * glib.h (g_trash_stack_pop): eliminate memset() call, since string.h
3951 has not neccessarily been included prior to glib.h.
3953 Mon Aug 2 21:03:10 1999 Tim Janik <timj@gtk.org>
3955 * configure.in: added --enable-msg-prefix option.
3957 * gmessages.c (g_log_default_handler): feature "prg_name (pid:%u): "
3958 if --enable-msg-prefix was selected (use "(process:%u): " if
3959 g_get_prgname () returns NULL, along the lines of g_on_error_query).
3961 1999-08-03 Tor Lillqvist <tml@iki.fi>
3965 * tests/strfunc-test.c: Rename g_strccpy to g_strcompress and
3966 g_strecpy to g_strescape per Tim Janik's suggestion. Dropped the
3967 destination parameter, always g_malloc a new string. Fix bug in
3968 g_strcompress, octal digits were gobbled up without limit, should
3971 Sources that use g_strescape must have ifdefs to be compilable
3972 both with GLib 1.2 and 1.3.
3974 Sat Jul 31 17:52:03 PDT 1999 Manish Singh <yosh@gimp.org>
3977 * gstrfuncs.c: the #define for g_strescape interfered with the
3978 compilation of the function, so just remove the function and
3979 note that it's deprecated in the header
3981 1999-08-01 Tor Lillqvist <tml@iki.fi>
3983 * gstrfuncs.c (g_strccpy, g_strecpy): New functions.
3985 * glib.h: Declare and document them. Define the deprecated
3986 g_strescape as a macro that calls g_strecpy.
3988 * tests/strfunc-test.c (main): Test them.
3990 * makefile.{cygwin,msc}.in
3991 * tests/makefile.{cygwin,msc}.in: Remove gstack and its test
3994 * glib.def: Additions and removals.
3996 * README.win32: Improve gcc build instructions.
3998 * build-dll: Also build import library for MSVC.
4000 Sat Jul 24 20:11:35 1999 Tim Janik <timj@gtk.org>
4002 * merged GLib 1.3.0 with glib-1.2.3 from Fri Jul 16 22:18:36.
4003 * incorporated proposed cleanups from gtk-devel-list.
4005 * bumped version number to GLib-1.3.1
4011 removed string tokenisation (we got g_strsplit() and g_strjoin()
4012 already) and readline functions.
4013 s/g_list_delete/g_list_delete_link.
4014 implemented g_slist_delete_link.
4015 removed notion of g_ATEXIT() macro in glib.h, this is an *internal*
4016 macro, g_atexit() is provided for public consumption.
4017 added GTrashStack inline utility functions.
4018 reimplement double eneded queues.
4019 removed GStack implementation, people can use a queue or a (singly)
4020 linked list for this task.
4021 deprecated g_strescape(), we need the SunOS variants here.
4023 * gdate.c: added DEBUG_MSG() macro to wrap old messages.
4027 * upgrade to libtool 1.3.3.
4029 1999-07-21 Tor Lillqvist <tml@iki.fi>
4031 Win32: With the latest gcc (2.95, pre-release), we can have binary
4032 compatibility with MSVC by using the switch -fnative-struct. No
4033 longer build DLLs with .gcc in the name when using gcc.
4035 * README.win32: Renew gcc build instructions.
4037 * build-dll: Comments change, handle also .a files.
4039 * makefile.cygwin.in
4040 * tests/makefile.cygwin.in: Remove .gcc from DLL name.
4042 1999-07-13 Tor Lillqvist <tml@iki.fi>
4044 * README.win32: Correct URL for mingw runtime sources.
4046 * build-dll: Combine commands with &&.
4048 * glib.h: Map also rmdir() and hypot() for MSVCRT library.
4050 * makefile.cygwin.in
4051 * tests/makefile.cygwin.in: New DLL naming style. GCC-compiled DLLs are
4052 now called *.gcc.dll, to avoid binary incompatibilities with
4053 MSVC-compiled versions.
4055 * makefile.msc.in: Cosmetics.
4057 1999-07-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4059 * configure.in: Test for pthread_join rather than for
4060 pthread_create to determine the right thread-lib. Makes it work on
4061 mips-sgi-irix6.5. Hitn from to Jari Vuoksenranta
4062 <javu@piano.ux.phys.jyu.fi>.
4064 1999-07-02 Tor Lillqvist <tml@iki.fi>
4066 * README.win32: Note about need to fix another bug in the mingw32
4069 * makefile.msc.in: Debugging turned on via an nmake variable,
4070 no need to edit the makefile.
4072 1999-07-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4074 * configure.in, acconfig.h, gutils.c: Added a g_memmove
4075 replacement for platforms without memmove, where bcopy can't
4076 handle overlapping copies and the corresponding checks, which is
4077 taken form the PERL Configure routine.
4079 * glib.h: Updated the commentary about g_memmove to be right and
4082 * configure.in: Removed test for rand_r, as it isn't used anymore.
4084 1999-06-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4086 * glib.h, grand.c: Finally removed the g_random_normal and
4087 g_rand_normal functions.
4089 1999-06-28 Tor Lillqvist <tml@iki.fi>
4091 * glib.def: Add missing export of g_strncasecmp.
4093 1999-06-21 Jose Mercado <jmercado@mit.edu>
4095 * glib.spec.in: Changed version number (1.1->1.3) in files section
4096 to allow rpm to build packages again.
4098 1999-06-21 Tor Lillqvist <tml@iki.fi>
4100 * README.win32: Update the pthreads snapshot version we want.
4101 Advice how to hand-expand the makefile.*.in files.
4103 * config.h.win32.in: Define values needed by Sebastian Wilhelmi's
4106 * glib.def: Add new functions.
4108 * glibconfig.h.win32.in: Update the pthreads snapshot version.
4111 * gthread.c: Include config.h, guard inclusion of unistd.h. When
4112 using gcc on Win32, g_thread_functions_for_glib_use must be marked
4113 for export here, too.
4115 * gtimer.c: Implement g_usleep on native Win32 using Sleep (which
4116 only has millisecond granularity, though).
4118 * makefile.cygwin.in
4119 * makefile.msc.in: Update pthreads snapshot version. File
4120 name changes. Remove testgthread.
4122 * tests/makefile.cygwin.in
4123 * tests/makefile.msc.in: Add thread-test. Link with gthread lib.
4125 1999-06-18 Jeff Garzik <jgarzik@pobox.com>
4127 * tests/Makefile.am: Re-order tests in alpha order.
4129 1999-06-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4131 * configure.in: Changed test for pthread_attr_setstacksize from
4132 AC_TRY_COMPILE to AC_TRY_LINK.
4134 1999-06-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4136 * configure.in, acglib.m4, acconfig.h, glib.h, gthread.c:
4137 Completed the thread support in GLib. Thread creation,
4138 prioritizing threads, yielding, joining threads as well as
4139 reader/writer locks and recursive mutexes are now in place. Please
4140 test heavily on your platform. It is so far tested on
4141 Linux/i386/pthreads, Solaris/Sparc/pthreads and
4142 Solaris/Sparc/solaristhreads.
4144 * gtimer.c, glib.h: Implement g_usleep (gulong microseconds) for
4145 thread safe sleeping. (sleep() is not MT-safe at all!)
4147 * gutils.c: Avoid compiler warning.
4149 * tests/Makefile.am, tests/thread-test.c: New program to test some
4150 aspects of the thread implementation.
4152 * gthread.c, Makefile.am: Renamed from gmutex.c to reflect the
4155 * configure.in: Purged all appearances of nspr.
4157 Wed Jun 2 11:42:46 PDT 1999 Manish Singh <yosh@gimp.org>
4163 * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
4165 1999-05-29 Tor Lillqvist <tml@iki.fi>
4167 * gstrfuncs.c (g_strescape): Backslashify also '"' characters.
4169 * glib.h: Document g_strescape.
4171 1999-05-12 Tor Lillqvist <tml@iki.fi>
4173 * glib.h (Win32): Map fileno to _fileno for mingw32. Map fstat to
4176 * README.win32: Advice also to remove -lmoldname in the
4177 patch to the egcs-1.1.2 spec file.
4179 Wed May 12 00:23:55 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4181 * gmodule/Makefile.am: Another small fix.
4183 1999-05-08 Tor Lillqvist <tml@iki.fi>
4185 * Makefile.am tests/Makefile.am: Correct rules for making the
4186 win32-related files that are made from corresponding .in files.
4187 Is there a cleaner way than explicitly writing rules that invoke
4190 Fri Jul 16 22:18:36 PDT 1999 Manish Singh <yosh@gimp.org>
4193 * ltmain.sh: upgrade to libtool 1.3.3
4195 1999-06-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4197 * gdate.c, gstrfuncs.c, gstring.c: Fixed the use of the
4198 is..... and to..... macros, which take unsigned chars, not chars!
4199 Thanks to Morten Welinder <terra@diku.dk> for pointing this out.
4201 Thu Jun 3 16:30:31 PDT 1999 Manish Singh <yosh@gimp.org>
4203 * gerror.c (g_on_error_query): check isatty() before querying so
4204 we don't loop endlessly
4206 Sat May 29 11:16:29 PDT 1999 Manish Singh <yosh@gimp.org>
4212 * ltmain.sh: upgrade to libtool 1.3.2
4214 1999-05-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4216 * gmain.c: provide a poll prototype for SunOS, as they do not do
4217 it self. Hint from Christian Parg <cparg@fs-design.de>.
4219 Tue May 25 12:23:07 1999 Owen Taylor <otaylor@redhat.com>
4221 * gstrfuncs.c (g_strchug): Use g_memmove() not memmove().
4222 (Reported by Charles Levert <charles@comm.polymtl.ca>)
4224 Mon May 10 22:03:52 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4226 * Released GLib 1.2.3
4228 1999-05-08 Tor Lillqvist <tml@iki.fi>
4230 * Makefile.am tests/Makefile.am: Correct rules for making the
4231 win32-related files that are made from corresponding .in files.
4232 Is there a cleaner way than explicitly writing rules that invoke
4235 Sat May 1 10:18:01 PDT 1999 Manish Singh <yosh@gimp.org>
4241 * ltmain.sh: upgrade to libtool 1.3
4243 1999-04-30 Tor Lillqvist <tml@iki.fi>
4245 * Makefile.am: Don't distribute glibconfig.h.win32.in, but
4246 glibconfig.h.win32. Generate it when making a dist. Also generate
4247 makefile.msc and config.h.win32 from corresponding .in files when
4250 * configure.in: Also substitute @GLIB_INTERFACE_AGE@ and
4251 @GLIB_BINARY_AGE@ (needed in config.h.win32).
4253 * glibconfig.h.win32.in: Use static mutex structure and initial
4254 value corresponding to the 1999-04-07 snapshot of pthreads-win32.
4256 * tests/Makefile.am: Distribute makefile.msc. Generate it when
4259 * tests/makefile.msc.in: New file.
4261 * tests/node-test.c: Include <stdlib.h> for exit().
4263 Thu Apr 29 02:16:36 1999 Tim Janik <timj@gtk.org>
4265 * gstrfuncs.c: minor code cleanups.
4267 Tue Apr 27 13:11:29 1999 Owen Taylor <otaylor@redhat.com>
4269 * gmain.c (g_main_poll): Mask out ERR HUP and NVAL from
4270 the events field so we don't give IRIX fits.
4272 Tue Apr 20 08:42:22 1999 Tim Janik <timj@gtk.org>
4274 * gscanner.c (g_scanner_unexp_token): behave conservative with
4275 G_TOKEN_IDENTIFIER_NULL and always assume scanner->value.v_string
4276 to be "null" in that case.
4278 1999-04-20 Havoc Pennington <hp@pobox.com>
4280 * gutils.c (g_vsnprintf): When using the vsnprintf()
4281 implementation, '\0'-terminate the resulting string
4282 and return its length rather than -1.
4284 Mon Apr 19 13:42:21 1999 Owen Taylor <otaylor@redhat.com>
4286 * gmain.c (g_main_iterate): Added missing
4287 #ifdef G_THREADS_ENABLED. (I never liked G_THREADS_ENABLED in
4290 1999-04-18 Havoc Pennington <hp@pobox.com>
4292 * gutils.c (g_snprintf): When using the vsnprintf()
4293 implementation, '\0'-terminate the resulting string
4294 and return its length rather than -1.
4296 Fri Apr 16 06:52:07 1999 Tim Janik <timj@gtk.org>
4298 * gscanner.c (g_scanner_unexp_token): feature G_TOKEN_EOF as a valid
4299 expected token as well, so we get "- expected end of file" instead of
4300 "- expected (unknown) token <0>".
4302 Tue Apr 13 16:16:14 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4304 * Released GLib 1.2.2
4306 1999-04-12 Elliot Lee <sopwith@mh69.mh.cuc.edu>
4308 * g_strchug(): s/strcpy/memmove/
4310 1999-04-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4312 * configure.in: Adjusted the test for an unimplemented
4313 getpwuid_r. Info from Michael Pruett <mikep@ugcs.caltech.edu>.
4315 Sun Apr 11 15:07:34 1999 Tim Janik <timj@gtk.org>
4317 * configure.in: bumped versin number to GLib 1.2.2, interface 2,
4322 Sun Apr 11 14:37:06 1999 Tim Janik <timj@gtk.org>
4324 * gstrfuncs.c (g_strcasecmp): always check for s1, s2 != NULL.
4326 Sat Apr 10 19:30:50 1999 Tim Janik <timj@gtk.org>
4328 * glib.h: removed braces around inline strings for the G_GNUC_FUNCTION
4329 and G_GNUC_PRETTY_FUNCTION macros, so the macros can be used for
4330 compile time string concatenation.
4332 Thu Apr 8 19:53:19 1999 Owen Taylor <otaylor@redhat.com>
4334 * gmain.c (g_main_iterate): Check for two threads
4335 calling g_main_iterate at once.
4337 * gmain.c: If the set of poll file descriptors changes
4338 during a call to poll(), abort that call, and start
4339 a new poll. My test program still segfaults
4340 obscurely on glibc 2.0 (in read()!!!), but now it works on
4341 glibc 2.1, so I'll blame something else for the other segfault.
4343 1999-03-31 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4345 * configure.in: Fixed slight bug, that made configure hang on some
4346 systems. Please do not merge this into 1.3 branch. It's taken care
4347 of differently there. Info from J. Rhett Aultman
4348 <cuplan@alley.gator.net>
4350 Wed Mar 24 21:23:47 CST 1999 Shawn T. Amundson <amundson@gtk.org>
4352 * Released GLib 1.2.1
4357 sanity_check: updated
4359 * glibconfig.h.win32.in:
4361 docs/glib-config.1.in:
4362 docs/Makefile.am: Added files used to generate new files.
4364 * glibconfig.h.win32:
4365 docs/glib-config.1: Removed, now generated.
4367 * configure.in: Added to output now-generated files.
4369 Tue Mar 23 13:43:39 PST 1999 Manish Singh <yosh@gimp.org>
4371 * giounix.c: add user_data param to check and prepare functions
4373 Mon Mar 22 03:54:43 1999 Tim Janik <timj@gtk.org>
4376 * gmain.c: add user_data to the GSource ->check and ->prepare
4377 functions, so it can be used to e.g. pass a GPollFd.
4378 (g_main_poll): only add poll records with an events mask != 0 to the
4379 fd_array. don't even bother calling poll_func() if fds=timeout=0.
4380 added debugging printouts around poll_func() invokation that can be
4381 enabled with #define G_MAIN_POLL_DEBUG.
4383 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
4389 * ltmain.sh: upgrade to libtool 1.2f
4391 * autogen.sh: libtool is not required to autogen glib
4393 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
4396 1999-03-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4398 * gmem.c: Fixed another stupid fault of mine: Did
4399 s/g_static_/g_private_/g
4401 Wed Mar 17 03:17:42 1999 Tim Janik <timj@gtk.org>
4403 * configure.in bumped versin number to GLib 1.2.1, interface 1,
4408 * glib.h: added GLIB_CHECK_VERSION() macro similar to
4409 GTK_CHECK_VERSION().
4411 Sun Mar 14 17:50:35 1999 Tim Janik <timj@gtk.org>
4413 * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
4414 to g_return_if_fail().
4416 (g_mem_chunk_print):
4417 (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
4420 * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
4421 to g_return_if_fail().
4422 * grel.c (g_*): changed a bunch of g_assert() statements to
4423 g_return_if_fail() and added some extra ones to check relation != NULL.
4425 1999-03-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4427 * configure.in: Also accept _Pctime_r instead of ctime_r, while
4428 seraching for the right `_REENTRANT' flag. This is for Digital
4429 UNIX 4.0d. Thanks to Sascha Brawer <sb@adasys.ch>.
4431 Tue Mar 9 23:25:50 1999 Tim Janik <timj@gtk.org>
4433 * configure.in: check for working realloc (NULL,).
4434 * gmem.c (g_realloc): use malloc() for initial allocation on systems
4435 where realloc(NULL,) will not work (this is the case on SunOS, reported
4438 Mon Mar 8 07:42:08 1999 Tim Janik <timj@gtk.org>
4440 * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
4441 flag around the call to g_hook_free() to avoid spurious
4442 warnings (happens during destruction phase).
4444 1999-03-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4446 * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
4447 from config.h.win32 to glibconfig.h.win32
4449 * acconfig.h, configure.in, config.h.win32: Added test for DCE
4450 versions of mutex_trylock and cond_timedwait. The win32 versions
4451 are posix, aren't they?
4453 1999-03-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4455 * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
4456 Friedrich Dominicus <Friedrich.Dominicus@inka.de>
4458 1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4460 * gutils.c (g_get_any_init): Fixed yet another bloody
4461 implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
4462 <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
4463 test better than that, but have no idea, how to do that easily.
4465 Sun Feb 21 22:11:51 CST 1999 Shawn T. Amundson <amundson@gtk.org>
4467 * Released GLib 1.2.0
4471 Wed Feb 24 00:08:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>
4473 * *.[ch]: inserted additional note to look for ChangeLog and
4474 AUTHORS file for a log of modifications.
4476 Sun Feb 21 14:01:00 1999 Dr Mike <drmike@redhat.com>
4478 * Made specfile generated, tweaked slightly
4480 Sat May 8 06:00:17 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4484 gthread/Makefile.am: Better testing reveals better
4485 methods. Fixes for BeOS.
4487 Sat May 8 01:52:29 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4498 gmodule/gmoduleconf.h.in
4499 gmodule/gmodule-beos.c
4500 gthread/Makefile.am: Port to BeOS by myself and Richard Offer.
4502 1999-05-06 Tor Lillqvist <tml@iki.fi>
4504 * makefile.msc.in makefile.cygwin.in glibconfig.h.win32.in
4505 config.h.win32.in tests/makefile.msc.in tests/makefile.cygwin.in:
4506 New files, used to generate corresponding non-.in files when
4507 making a dist. This is just so the version numbers will be kept in
4508 synch automatically.
4510 * configure.in: Also substitute @GLIB_MAJOR_VERSION@,
4511 @GLIB_MINOR_VERSION@, and @GLIB_INTERFACE_AGE@.
4513 * Makefile.am tests/Makefile.am: Also distribute makefile.cygwin.
4515 * gerror.c (g_on_error_query): On Win32, put up a MessageBox and
4518 * glib.def: Add a couple of functions.
4520 Sat May 1 10:26:20 PDT 1999 Manish Singh <yosh@gimp.org>
4526 * ltmain.sh: upgrade to libtool 1.3
4528 1999-04-25 Tor Lillqvist <tml@iki.fi>
4530 * README.win32: More editing.
4531 * build-dll: Use gcc, not ld to link.
4532 * glib.h: On native Win32 use _unlink().
4533 * gscanner.c: Use corrent NATIVE_WIN32 feature test macro,
4535 * gstring.c: Include <io.h> on Win32 for _read prototype.
4536 * gutils.c: Remove old IO channel code (was in #if 0).
4537 * makefile.cygwin: Don't need to link with kernel32 and msvcrt
4538 explicitly, they are included anyway.
4540 1999-04-24 Tor Lillqvist <tml@iki.fi>
4542 Support added for building using a GNU toolchain on Win32,
4543 i.e. gcc -mno-cygwin on cygwin (a.k.a. mingw32, using egcs-1.1.2).
4545 * README.win32: Updated.
4546 * build-dll makefile.cygwin tests/makefile.cygwin: New files.
4547 * glib.h glib.def glibconfig.h.win32: Slight updates.
4548 * gmain.c: No need to include <fcntl.h> and <io.h> on Win32.
4549 * gmain.c gutils.c testglib.c tests/string-test.c: Test for
4550 NATIVE_WIN32, not _MSC_VER.
4551 * gmutex.c: Must declare g_thread_functions_for_glib_use as
4552 exported (using the GUTILS_C_VAR macro).
4553 * gutils.c gmodule/libgplugin_[ab].c: LibMain not needed.
4554 * gmodule/gmoduleconf.h.win32: Need underscore with gcc.
4555 * gthread/gthread.c: With gcc on Win32, must use memcpy to assign
4556 value of g_thread_functions_for_glib_use (?).
4557 * makefile.msc tests/makefile.msc: Cosmetics.
4559 Fri Apr 23 14:29:25 BST 1999 Tony Gale <gale@gtk.org>
4561 * glib.h: Fix typo in g_string_ncasecmp macro (by me).
4562 Add b_string_strncasecmp macro.
4564 1999-04-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4566 * gutils.c (g_get_any_init): use sysconf (_SC_GETPW_R_SIZE_MAX) as
4567 the new initinal bufsize for getpwuid_r on systems, that support
4568 this. Hint from Holger Duerer <H.Duerer@zait.uni-bremen.de>.
4570 Sat Apr 17 20:55:13 BST 1999 Tony Gale <gale@gtk.org>
4572 * glib.h, gstring.c: Add new g_string functions for reading
4573 from file/socket descriptors, and tokenising strings.
4575 Added various g_string macros.
4577 Tue Apr 13 23:28:32 1999 Tor Lillqvist <tml@iki.fi>
4579 * README.win32: Mention the tests directory.
4581 * glib.def: Add the functions from grand.c.
4583 * glibconfig.h.win32: Add unsigned max values, and the format
4586 * makefile.msc: Add grand.
4588 * tests/{date-test,node-test}.c: Include <stdlib.h> for exit().
4590 * tests/makefile.msc: New file.
4592 1999-04-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4594 * glib.h: Moved struct declaration up. Style fixes.
4596 * grand.c: Style fixes. Only try to open /dev/random once.
4598 * tests/rand-test.c (main): New tests; Slight bug fix.
4600 1999-04-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4602 * grand.c, tests/rand-test.c: New files to implement the Mersenne
4603 Twister Pseudo Random Number Generator.
4605 * glib.h, AUTHORS, Makefile.am, tests/Makefile.am: Changed
4608 Thu Apr 8 21:12:30 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4610 * Released GLib 1.3.0
4612 1999-03-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4614 * configure.in: Added a check for the right format to printf and
4615 scanf long longs. It is %qi instead of %lli on FreeBSD for
4618 1999-03-28 Raja R Harinath <harinath@cs.umn.edu>
4620 * Makefile.am (glibconfig.h): Make sure `glibconfig.h' exists
4621 after the rule is fired.
4622 (install-exec-local): Install glibconfig.h only if the contents
4623 are different from the currently installed glibconfig.h.
4625 1999-03-26 Raja R Harinath <harinath@cs.umn.edu>
4627 * Makefile.am (configexecincludedir): Rename from
4628 configincludedir so that glibconfig.h will be installed
4629 as part of `make install-exec'.
4631 Thu Mar 25 22:45:47 1999 Tor Lillqvist <tml@iki.fi>
4633 * config.h.win32: Update version numbers.
4635 * glibconfig.h.win32: Update version numbers and pthreads-win32-
4636 related magic values.
4638 * README.win32: Some improvements.
4640 * makefile.msc: Add gqueue and gstack. Correct version number.
4642 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
4648 * ltmain.sh: upgrade to libtool 1.2f
4650 * autogen.sh: libtool is not required to autogen glib
4652 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
4655 1999-03-18 Jeff Garzik <jgarzik@pobox.com>
4657 * glib.def: Add new g_list, g_stack, g_queue functions.
4659 1999-03-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4661 * configure.in: added new AC_SUBST(GTHREAD_COMPILE_IMPL_DEFINES)
4662 to hold various defines to get the right thread implementation on
4663 different platforms. Also look in -ldce for pthread_create. Should
4664 make it work on HP-UX 10.x. Information from "D. Emilio Grimaldo
4665 Tunon" <emilio_tunon@nl.compuware.com>.
4667 1999-03-17 Jeff Garzik <jgarzik@pobox.com>
4669 * gstack.c, gqueue.c:
4670 Add copyright, clean up code a bit.
4672 1999-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4674 * configure.in: Added missing values for G_MAXU(SHORT|INT|LONG) on
4675 platforms with only /usr/include/values.h.
4677 * acconfig.h: Removed unnecessary macros.
4679 * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
4680 from config.h.win32 to glibconfig.h.win32. Taken from glib 1.2
4683 * configure.in: Also accept _Pctime_r instead of ctime_r, while
4684 seraching for the right `_REENTRANT' flag. This is for Digital
4685 UNIX 4.0d. Taken from glib 1.2 branch.
4687 Wed Mar 17 03:14:56 1999 Tim Janik <timj@gtk.org>
4689 * glib.h: added GLIB_CHECK_VERSION() macro similar to
4690 GTK_CHECK_VERSION().
4692 Wed Mar 17 01:46:28 1999 Tim Janik <timj@gtk.org>
4694 * merges from glib-1-2:
4696 Sun Mar 14 17:50:35 1999 Tim Janik <timj@gtk.org>
4698 * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
4699 to g_return_if_fail().
4701 (g_mem_chunk_print):
4702 (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
4705 * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
4706 to g_return_if_fail().
4707 * grel.c (g_*): changed a bunch of g_assert() statements to
4708 g_return_if_fail() and added some extra ones to check relation != NULL.
4710 Tue Mar 9 23:25:50 1999 Tim Janik <timj@gtk.org>
4712 * configure.in: check for working realloc (NULL,).
4713 * gmem.c (g_realloc): use malloc() for initial allocation on systems
4714 where realloc(NULL,) will not work (this is the case on SunOS, reported
4717 Mon Mar 8 07:42:08 1999 Tim Janik <timj@gtk.org>
4719 * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
4720 flag around the call to g_hook_free() to avoid spurious
4721 warnings (happens during destruction phase).
4723 1999-03-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4725 * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
4726 Friedrich Dominicus <Friedrich.Dominicus@inka.de>
4728 1999-03-16 Timur Bakeyev <mc@bat.ru>
4730 * configure.in: Fix problem with pthread_create in libc, as running
4731 "gcc test.c -l " is not legal.
4733 1999-03-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4735 * tests/type-test.c: Added a test for the
4736 G_(U)?INT(16|32|64)_FORMAT and G_(MIN|MAX|MAXU)(SHORT|INT|LONG)
4739 * configure.in: Removed G_(U)?INT8_FORMAT again, as it can't be
4742 * configure.in: Added the macros G_MAXU(SHORT|INT|LONG). I do not
4743 know how to handle these on platforms with /usr/include/values.h,
4744 but without /usr/include/limits.h. Please someone add this.
4747 1999-03-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4749 * configure.in: Added the macros G_(U)?INT(8|16|32|64)_FORMAT to
4750 use for printf and (much more important) scanf format strings for
4751 the corresponding GLib types.
4753 * glib.h Added G_(U)?(SHORT|INT|LONG)_FORMAT for consistency. It
4754 however makes no sense to also provide G_(FLOAT|DOUBLE)_FORMAT, as
4755 they are different for printf (f for both) and scanf (f for float,
4756 lf for double). Defining G_INT_FORMAT makes sense however, as we
4757 might want to define gint to something different than int someday
4758 in the future. Idea from Sascha Brawer <sb@adasys.ch>.
4760 1999-03-14 Jeff Garzik <jgarzik@pobox.com>
4763 Commented out debugging output.
4765 * tests/Makefile.am, tests/date-test.c:
4766 Added test of the GDate module, based closely on testgdate.c.
4768 * tests/Makefile.am:
4769 Bugfix - compile tests with @GLIB_DEBUG_FLAGS@.
4771 1999-03-14 Raja R Harinath <harinath@cs.umn.edu>
4773 * configure.in (glibconfig.h): Remove widechar tests and defines.
4774 (fd_set): Change the grep for `fd_mask' to search for `fd_set'.
4775 * gerror.c (fd_mask): Remove conditional typedef. It is not used
4776 elsewhere in the file.
4777 * gmain.c (fd_mask): Likewise.
4779 1999-03-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4781 * configure.in: Test for posix threads first, then for dce threads.
4783 1999-03-11 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4785 * configure.in: Revamped the thread configure stuff. Now dce
4786 threads (old posix draft) are recogniced. This is necessary,
4787 because dce threads are in fact working quite differently from
4788 posix threads. Also changed the conditions for checking for MT
4789 safe functions a bit, because G_THREADS_IMPL_NONE still have to
4790 compile thread safe. NOTE: Please do not commit my change to
4791 glib-1-2/{acconfig.h,configure.in,config.h.win32} from 1999-03-03,
4792 as the current change will take care of that too.
4794 Tue Mar 9 14:37:32 1999 Jeff Garzik <jgarzik@pobox.com>
4796 * Makefile.am, glib.h, gstack.c, gqueue.c,
4797 tests/Makefile.am, tests/queue-test.c, tests/stack-test.c:
4798 Added stack, queue ADTs and related tests.
4801 New g_list_delete() function.
4803 Sat Mar 6 11:03:08 1999 Asbjorn Pettersen <ape@lrdpf.spacetec.no>
4805 * gutils.c (g_get_any_init): add OS/2 changes.
4806 change '\\' in HOME to '/'.
4808 1999-03-03 Josh MacDonald <jmacd@spin.dsl.pacbell.net>
4810 * glib.def: g_spaced_primes_closest was omitted here, so I
4811 couldn't build Xdelta on Windows.
4813 1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4815 * gutils.c (g_get_any_init): Fixed yet another bloody
4816 implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
4817 <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
4818 test better than that, but have no idea, how to do that easily.
4820 Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org>
4822 * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
4825 * configure.in: set glib version to 1.3.0.