1 2001-07-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3 * gmodule/gmodule.c (parse_libtool_archive): build the library
4 name ourselfs ... so we can load the library specified and not
5 mangle any name not beggining in 'lib'. Patch from Michael Meeks
8 2001-07-29 Ron Steinke <rsteinke@w-link.net>
10 * glib/giochannel.c: Matthias Classen's patch to give
11 g_io_channel_flush() the correct sense when testing
12 whether the buffer is empty
13 * glib/giounix.c: Matthias Classen's patch to set
14 the mode of a file created with g_io_channel_new_file()
16 Sun Jul 29 16:08:17 2001 Tim Janik <timj@gtk.org>
18 * glib/gscanner.[hc]: removed deprecated g_scanner_stat_mode().
20 * glib/gscanner.c (g_scanner_msg_handler): by default, print scanner
21 errors and warnings to stderr.
23 2001-07-27 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
25 * glib/gtypes.h: Use G_GNUC_EXTENSION instead of
26 __extension__. Patch from Pavel Roskin <proski@gnu.org>.
28 2001-07-26 Darin Adler <darin@bentspoon.com>
31 * m4macros/glib-2.0.m4:
32 Update location of pkgconfig from sourceforge.net to new
33 location at freedeskop.org.
35 2001-07-26 Michael Natterer <mitch@convergence.de>
37 * gobject/glib-genmarshal.c: added a "release_check" to the
38 OutArgument structure, which, if present, gets integrated in the
39 marshaller code and protects us from stuff like
40 g_object_unref(NULL) on marshaller return values.
42 2001-07-23 Padraig O'Briain <Padraig.Obriain@sun.com>
44 * gobject/gobjectnotifyqueue.c: fix unconditional check of
45 first GParamSpec in g_object_notify_queue_thaw(); prevent
46 property notification being lost
48 2001-07-23 Ron Steinke <rsteinke@w-link.net>
50 * glib/giochannel.c: fixed g_io_channel_seek_position() so that
51 G_SEEK_CUR works for UTF-8 channel encoding, and unallocated
52 converters are not flushed after the seek; fixed
53 g_io_channel_get_buffer_condition() so that G_IO_IN is only
54 set if the read buffer contains at least one full character
56 2001-07-23 Sven Neumann <sven@gimp.org>
58 * Makefile.am: removed glib.def from EXTRA_DIST ...
59 * glib/Makefile.am: ... and added it here.
61 2001-07-22 Hans Breuer <hans@breuer.org>
63 * glib/giochannel.c (g_io_channel_get_buffer_condition) : make
64 the code actually have an effect (Use |= to set bits). Not
65 absolutely sure if is the right one.
67 * glib/giowin32.c (g_io_win32_<check|prepare>) : don't modify
68 watch->condition but restored the previous behaviour.
69 Now gio-test as well as The Gimp work again ...
71 2001-07-21 Hans Breuer <hans@breuer.org>
73 * glib/giowin32.c (g_io_channel_new_file) : set the
74 corresponding p(ermission)mode of the file when creating,
75 otherwise a wronly file couldn't be overwritten (at least
78 2001-07-21 Hans Breuer <hans@breuer.org>
80 * glib/giowin32.c : intial implementation of new API functions.
81 Not sure if it behaves as intended ...
83 * glib.def : removed, glib/glib.def is the file used since moved
84 * glib/glib.def : updated
86 * tests/makefile.msc : added iochannel-test
88 Fri Jul 20 19:19:10 (UTC) 2001 Ron Steinke <rsteinke@w-link.net>
90 * glib/giochannel.c: API changes, fixes to
91 error handling, some internal restructuring
92 * glib/giochannel.h: API changes, documentation for
93 elements in GIOChannel structure
94 * glib/giounix.c: Matched API changes, implemented
95 backend to set is_readable, is_writeable, is_seekable
96 flags, added a test to catch large values of count
97 for which the behavior of write() is undefined
98 * glib/giowin32.c: Changed to match new prototypes for
99 io_close() and io_seek(), removed references to
100 G_IO_STATUS_INTR, set is_seekable flag in channel
102 * glib.def: Renamed g_channel_error_quark() and
103 g_channel_error_from_errno() to g_io_channel_error_quark() and
104 g_io_channel_error_from_errno(); added new functions
105 g_io_channel_get_buffered() and g_io_channel_set_buffered()
106 * docs/reference/glib/glib-sections.txt: Modified iochannel
107 section to reflect new functions and API changes
108 * tests/iochannel-test.c: Fixed to work with API changes
109 * tests/iochannel-test-infile: New file; input file
111 * tests/unicode-collate.c tests/unicode-normalize.c:
112 Changed G_IO_FILE_MODE_READ to "r" to match API change
114 Fri Jul 20 19:16:24 (UTC) 2001 Ron Steinke <rsteinke@w-link.net>
116 * gobject/glib-genmarshal.c: modified to create header files
117 using G_[BEGIN,END]_DECLS instead of #ifdef __cplusplus ...
119 Fri Jul 20 14:11:29 2001 Owen Taylor <otaylor@redhat.com>
121 * glib/gutf8.c glib/gunidecomp.c: s/size_t/gsize/ to match
124 Thu Jul 19 16:05:21 2001 Owen Taylor <otaylor@redhat.com>
126 * glib/gcompletion.c (g_completion_complete): Fix memory
127 leak and dubious list manipulation. (Found by
130 * glib/gfileutils.c (get_contents_stdio): Call fclose()
131 on FILE * on error. (#57057)
133 2001-07-20 Hans Breuer <hans@breuer.org>
135 * glib/glib/giowin32.c : make it compile again
137 * glib/glib.def : updated exports
139 * glib/makefile.msc.in :
140 * glib/makefile.mingw.in :
141 * tests/makefile.msc.in : reflect glib move
143 * tests/mainloop-test.c : #include <io.h> for _pipe()
145 * tests/gio-test.c : casts for strict compiler settings
147 * makefile.msc.in : new master makefile reflecting the glib
148 move. The '.in' isn't really needed anymore, because there
149 is no version number in it
151 2001-07-19 Darin Adler <darin@bentspoon.com>
153 * glib/gstrfuncs.c: (g_ascii_strdown), (g_ascii_strup): Add
155 (g_strsplit): Add g_return_val_if_fail for case of empty
156 delimiter, which can result in an infinite loop otherwise.
157 * glib/gstrfuncs.h: Add missing const.
158 * tests/.cvsignore: Ignore a generated file.
160 * tests/array-test.c:
161 * tests/dirname-test.c:
165 * tests/relation-test.c:
166 * tests/shell-test.c:
167 * tests/slist-test.c:
168 * tests/spawn-test.c:
169 * tests/strfunc-test.c:
170 * tests/string-test.c:
174 Add an #undef G_DISABLE_ASSERT so all tests will assert even if
175 asserts are disabled inside glib itself.
177 Fri Jul 13 19:20:06 2001 Owen Taylor <otaylor@redhat.com>
179 * glib/gstring.c (g_string_insert/append/prepend_unichar):
180 Add functions to insert a unichar as UTF-8, since this
181 is reasonably common.
183 * glib/gutf8.c glib/gunicode.h (g_utf8_get_char_validated):
184 New function exposing iterating through possibly invalid/incomplete
185 UTF-8 to unicode to the outside world.
187 * glib/gutf8.c (g_utf8_get_char_extended): Fix max_len argument
188 to be gssize, not gsize.
190 2001-07-17 Kjartan Maraas <kmaraas@gnome.org>
192 * configure.in: Added "nn" to ALL_LINGUAS.
194 2001-07-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
196 * glib/gmain.c: Add some assertions. Simplify and fix
197 g_main_context_release(). Fix some locking bugs in
200 2001-07-12 Mark Murnane <Mark.Murnane@sun.com>
202 * glib/gmessages.c: Changed prototype of printf_string_upper_bound
203 to return gsize. Now matches the actual function body.
205 * glib/gstrfuncs.c (g_strrstr_len): Changed type of parameter #2
206 from gint to gssize. Now matches the prototype in gstrfuncs.h.
208 2001-07-11 Darin Adler <darin@bentspoon.com>
210 * .cvsignore: Add some generated files.
212 * glib/gmain.c: (g_main_context_iterate): Comment out cruft
213 after #endif to avoid gcc warning.
214 * gmodule/gmodule.c: (g_module_set_error_unduped): Remove
215 const from type to avoid gcc warning.
216 * gobject/gsignal.c: (g_signal_emitv): ifdef variable used
217 only if G_ENABLE_DEBUG to avoid gcc warning.
218 * gobject/gtype.c: (type_iface_vtable_init_Wm),
219 (type_iface_vtable_finalize_Wm): ifdef call needed only
220 if !G_DISABLE_ASSERT to avoid gcc warning.
221 * tests/testglib.c: (main): ifdef call needed only if
222 !G_DISABLE_ASSERT to avoid gcc warning. Maybe later we
223 should make the test to #undef G_DISABLE_ASSERT.
224 * tests/unicode-collate.c: Add include of <string.h> to
227 Wed Jul 11 11:13:50 2001 Owen Taylor <otaylor@redhat.com>
229 * glib/Makefile.am (libglib_1_3_la_SOURCES): Add gunicomp.h
230 (Reported by Sven Neumann).
232 * glib/guniprop.c (g_utf8_str/updown) glib/gunicollate.c
233 (g_utf8_collate_key): Fix shadowing problems reported by
234 many (D. Adler, S. Neumann, M. Murmane, L. Peter)
236 Fri Jul 6 00:02:41 2001 Tim Janik <timj@gtk.org>
238 * glib/gmessages.c (printf_string_upper_bound): fix negative exponent
239 handling (numbers<0).
241 * glib/gutils.h (g_bit_storage): take a gulong as argument.
242 same for g_bit_nth_lsf() and g_bit_nth_msf() as mask.
244 2001-07-08 Martin Baulig <baulig@suse.de>
246 * tests/unicode-normalize.c, tests/unicode-collate.c:
247 Reflect latest g_io_channel_new_file() API changes, use
248 G_IO_FILE_MODE_READ instead of "r".
250 Fri Jul 6 22:34:32 2001 Owen Taylor <otaylor@redhat.com>
252 * glib/gunicode.h glib/gunidecomp.c glib/guniprop.c
253 glib/gunicollate.c: Add length arguments to
254 g_utf8_{strup,strdown,casefold,collate_key}.
256 * glib/gdate.c: Fix for above.
258 2001-07-06 Pablo Saratxaga <pablo@mandrakesoft.com>
260 * configure.in: added Basque (eu) to ALL_LINGUAS
262 Mon Jul 2 19:48:52 2001 Andrew Lanoix <alanoix@umich.edu>
264 *giowin32.c: g_source_remove()ing an socket iochannel closes
265 the socket when it should not. Patch by Peter Zelezny
268 *giowin32.c: Fix a few typos
270 Mon Jul 2 16:03:21 2001 Owen Taylor <otaylor@redhat.com>
272 * glib/giochannel.c (g_io_channel_get_buffer_condition): Fix.
274 * glib/giunix.c: Fix prepare/check/dispatch for watches.
276 * tests/unicode-normalize.c: #include <string.h>
278 Sat Jun 30 23:14:32 2001 Tim Janik <timj@gtk.org>
280 * glib/glist.[hc]: added g_list_insert_before().
282 * glib/gslist.c (g_slist_insert_before): provide an implementation,
283 prototype was already present...
285 Sun Jul 1 20:16:25 2001 Owen Taylor <otaylor@redhat.com>
287 * glib/guniprop.c (g_unichar_totitle): Use G_N_ELEMENTS
288 rather than a custom macro.
290 * glib/gen-unicode-tables.pl: Adapt to changes in table
291 formats for Unicode 3.1
293 * glib/gunicode.h glib/guniprop.c glib/gunichartables.h
294 glib/gen-unicode-tables.pl: Add case conversion functions
295 g_utf8_casefold, g_utf8_strup, g_utf8_strdown.
297 * tests/unicode-caseconv.c tests/gen-casefold-txt.pl
298 tests/gen-casemap-txt.pl tests/casefold.txt
299 tests/casemap.txt: Test cases for case conversion.
301 * glib/gunicode.h glib/gunidecomp.[ch] glib/gunicomp.h
302 glib/gen-unicode-tables.pl: Add function to do Unicode
303 normalization g_utf8_normalize().
305 * tests/unicode-normalize.c: Test program for case conversion.
307 * glib/gunicode.h glib/gunicollate.c: Add collation functions
308 g_utf8_collate, g_utf8_collate_key.
310 * test/unicode-collate.c: Test program for collation.
312 * glib/gdate.c (g_date_fill_parse_tokens): Fix uninitialized
315 * glib/gdate.c (g_date_strftime) docs/Changes-2.0.txt:
316 Make work with UTF-8 even if the locale isn't UTF-8 based.
317 Still somewhat of broken, if the format string contains
318 characters not representable in the current locale, will warn
321 * glib/gdate.c: Use UTF-8 normalization and casefolding.
323 Sat Jun 30 16:03:16 2001 Owen Taylor <otaylor@redhat.com>
325 * glib/giowin32.c glib/giounix.c glib/gmain.[ch]:
326 Rename GSourceFuncs::destroy to GSourceFuncs::finalize.
329 Sat Jun 30 15:49:10 2001 Owen Taylor <otaylor@redhat.com>
331 * glib/gmain.[ch]: (Mostly patch from Sebastian Wilhemi)
332 Make some changes to the way that GMainContext works:
334 - a GMainContext is no longer associated with a single
335 thread, but any thread can acquire ownership
336 of thread and iterate.
338 - There is a facility g_main_context_wait() for
339 non-owner-threads to wait either for ownership
340 or for a condition to be broadcast.
342 - For efficiency, GMainLoop just piggybacks of
343 of the loops mutex / condition instead of
344 having a separate mutex/condition for each
347 * glib/gthread.[ch]: Remove hacks to store the thread's
348 GMainContext in the GThread structures, since we
349 no longer have the GMainContext <=> GThread correspondence.
351 * glib/gmain.[ch]: Make g_main_context_wakeup() public
352 so someone could completely duplicate GMainLoop
355 * tests/mainloop-test: Fix up to the new API. Decidedly
356 doesn't work at the moment, but that may be the IO
357 channel changes, or preexisting locking problems.
359 Sat Jun 30 13:18:28 2001 Owen Taylor <otaylor@redhat.com>
361 * glib/gstrfuncs.c glib/gstring.h: Try compiling
362 before committing, why don't you? Simple fixes
365 Sat Jun 30 12:49:26 2001 Owen Taylor <otaylor@redhat.com>
367 Patch from Darin Adler (#54166)
369 * glib/gstrfuncs.[ch]: Add ascii-only, locale-insensitive
370 g_ascii_to[lower/upper], g_ascii_str[down/up],
371 g_ascii_is[upper/lower] and deprecate the locale-affected
372 versions which break for UTF-8, etc. Make
373 g_ascii_strup/strdown duplicating,
374 not in-place for consistency with UTF-8 functions.
376 * glib/gstring.[ch]: Add ascii-only, locale-insensitive
377 g_string_ascii_[down/up], and deprecate the locale-affected
378 versions which break for UTF-8, etc.
380 * glib/gutils.c glib/gwin32.c test/testglib.c: Use
381 the g_ascii_* functions where appropriate.
383 Fri Jun 29 13:36:39 2001 Owen Taylor <otaylor@redhat.com>
385 * glib/gstring.[ch] (g_string_set_size): Add function to
386 allow setting the length of a string greater than the
387 current length (for buffering usage)
389 * glib/gstring.[ch]: Expose string->allocated_len, since
390 that is useful when using GString simply as a buffer.
391 (Renamed from string->alloc)
393 * glib/giochannel.[ch] glib/giounix.c glib/giowin32.c:
394 Major patch from Hidetoshi Tajima and Ron Steinke
395 reworking GIOChannel to have:
398 - Sane and useful error reporting
399 - Streaming encoding conversion with iconv
400 - Convenience functions to read by lines or
403 Also fix remaining 64 bit cleanliness issues.
405 * tests/iochannel-test.c tests/Makefile.am: Test case
406 for IO channel streaming conversion. Still needs
409 Thu Jun 28 16:57:44 2001 Tim Janik <timj@gtk.org>
411 * configure.in (GLIB_MICRO_VERSION): up version number to 1.3.7,
412 interface age 0, binary age 0.
414 2001-06-27 Kjartan Maraas <kmaraas@gnome.org>
416 * glib/gmarkup.c: Fix a typo.
418 2001-06-27 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
420 * Makefile.am, configure.in: Removed glib-config-2.0, as we have
423 * glib/Makefile.am: Added -I$(top_srcdir) for builddir != srcdir.
425 * Makefile.am: Removed gen-unicode-tables.pl from EXTRA_DIST.
427 Tue Jun 26 11:43:46 2001 Owen Taylor <otaylor@redhat.com>
429 * configure.in Makefile.am *.[ch] glib/*.[ch] glib/Makefile.am:
430 Move glib library into a subdirectory, make all GLib include
431 files include as <glib/glist.h>
433 * tests/testglib.c tests/testgdate.c tests/testgdateparser.c
434 tests/timeloop.c tests/timeloop-basic.c: Move all tests into
435 the tests/ subdirectory.
437 Sat Jun 23 17:34:38 2001 Tim Janik <timj@gtk.org>
439 * gmessages.c (g_logv): use G_BREAKPOINT() instead of raise(5).
441 Wed Jun 20 12:00:54 2001 Owen Taylor <otaylor@redhat.com>
443 Changes for 64-bit cleanliness, loosely based on patch
446 * gconvert.c (g_convert/g_convert_with_fallback): Remove
447 workarounds for since-fixed GNU libc bugs. Minor
450 * gconvert.[ch]: Change gint to gsize/gssize as
453 * gconvert.c (g_locale/filename_to/from_utf8): Fix incorrect
454 computation of bytes_read / bytes_written.
456 * gfileutils.[ch] (g_file_get_contents): Make length
457 out parameter 'gsize *len'.
459 * ghook.c (g_hook_compare_ids): Don't compare a
462 * gmacros.h (GSIZE_TO_POINTER): Add GPOINTER_TO_SIZE,
465 * gmain.c (g_timeout_prepare): Rewrite to avoid
466 overflows. (Fixes bug when system clock skews
467 backwards more than 24 days.)
469 * gmarkup.[ch]: Make lengths passed to callbacks
470 gsize, length for g_markup_parse-context_parse(),
471 g_markup_escape_text() gssize.
473 * gmessages.[ch] (g_printf_string_upper_bound): Change
474 return value to gsize.
476 * gmessages.c (printf_string_upper_bound): Remove
477 a ridiculous use of 'inline' on a 300 line function.
479 * gstring.[ch]: Represent size of string as a gsize,
480 not gint. Make parameters to functions take gsize,
481 or gssize where -1 is allowed.
483 * gstring.c (g_string_erase): Make
484 g_string_erase (string, pos, -1) a synonym for
485 g_string_truncate for consistency with other G*
488 * gstrfuncs.[ch]: Make all functions taking a string
489 length, take a gsize, or gssize if -1 is allowed.
490 (g_strstr_len, g_strrstr_len). Also fix some boundary
491 conditions in g_str[r]str[_len].
493 * gutf8.c tests/unicode-encoding.c: Make parameters that
494 are byte lengths gsize, gssize as appropriate. Make
495 character offsets, other counts, glong.
497 * gasyncqueue.c gcompletion.c
498 timeloop.c timeloop-basic.c gutils.c gspawn.c.
499 Small 64 bit cleanliness fixups.
501 * glist.c (g_list_sort2, g_list_sort_real): Fix functions
502 that should have been static.
504 * gdate.c (g_date_fill_parse_tokens): Fix extra
505 declaration that was shadowing another.
507 * tests/module-test.c: Include string.h
509 Mon Jun 18 15:43:29 2001 Owen Taylor <otaylor@redhat.com>
511 * gutf8.c (g_get_charset): Make argument
512 G_CONST_RETURN char **.
514 2001-06-22 Andrew Lanoix <alanoix@umich.edu>
516 *giowin32.c: Debug and partial rewrite of async socket code
517 on windows, which fixes major MT issues. Some test code kindly
518 provided by wroberts1@home.com.
520 Thu Jun 14 14:09:46 2001 Owen Taylor <otaylor@redhat.com>
522 * gstrfuncs.c (g_strconcat): Fix a use of strcat that
523 wasn't replaced with g_stpcpy in the original
524 stpcpy-for-efficiency patch.
526 2001-06-11 Havoc Pennington <hp@redhat.com>
530 * configure.in (GLIB_MICRO_VERSION): increment version to 1.3.6
532 2001-06-08 Alex Larsson <alexl@redhat.com>
535 Added new functions g_strstr_len, g_strrstr and g_strrstr_len
537 * tests/strfunc-test.c:
538 Add some tests for the new functions.
542 Add length argument to g_utf8_strchr and g_utf8_strrchr.
544 2001-06-08 Havoc Pennington <hp@redhat.com>
546 * gspawn.c: support G_SPAWN_FILE_AND_ARGV_ZERO specifying that
547 the vector passed in to g_spawn_* contains a filename to
548 execute in argv[0] then the actual argv begins at argv + 1.
549 Kind of a lame hack, but this isn't something you commonly want
550 to do, and avoids adding more function arguments.
552 2001-06-08 Pablo Saratxaga <pablo@mandrakesoft.com>
554 * configure.in: Added Azeri (az) to ALL_LINGUAS
556 2001-06-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
558 * docs/Makefile.am, configure.in: Remove docs/glib-config.1.in.
560 * gthread-2.0-uninstalled.pc.in (Cflags): Add @G_THREAD_CFLAGS@.
562 2001-06-07 Havoc Pennington <hp@redhat.com>
564 * m4macros/glib-2.0.m4: subst GLIB_GENMARSHAL, GOBJECT_QUERY,
565 GLIB_MKENUMS variables
567 * gmodule-2.0.pc.in: add gmodule_supported variable
569 * glib-2.0.pc.in: add glib_genmarshal, gobject_query,
570 glib_mkenums variables
572 * configure.in: put G_MODULE_SUPPORTED value into
575 * autogen.sh: support AUTOGEN_SUBDIR_MODE
577 * Makefile.am: add -uninstalled.pc.in to EXTRA_DIST
579 2001-06-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
581 * configure.in: Look for nanosleep function.
583 * gtimer.c: Use nanosleep for g_usleep, when found.
585 * gtimer.c, gtimer.h: Add g_time_val_add function. Closes #54271.
587 * gasyncqueue.c: Documentation updates.
589 * gthreadpool.c: Use g_time_val_add now that we have it.
591 2001-06-01 Jon Trowbridge <trow@gnu.org>
593 * gdate.c (g_date_update_julian): Changed to take a const
594 argument, and then to cast out const.
595 (g_date_update_dmy): Changed to take a const argument, and then
597 (g_date_get_weekday): Changed argument to be const.
598 (g_date_get_month): Changed argument to be const.
599 (g_date_get_year): Changed argument to be const.
600 (g_date_get_day): Changed argument to be const.
601 (g_date_get_julian): Changed argument to be const.
602 (g_date_get_day_of_year): Changed argument to be const.
603 (g_date_get_monday_week_of_year): Changed argument to be const.
604 (g_date_get_sunday_week_of_year): Changed argument to be const.
605 (g_date_compare): Changed arguments to be const.
606 (g_date_to_struct_tm): Changed GDate argument to be const.
607 (g_date_strftime): Changed GDate argument to be const.
608 (g_date_clamp): Added. The equivalent of the CLAMP macro for
610 (g_date_order): Added. Ensure that the first GDate argument
611 preceeds the second, swapping them if necessary.
612 (g_date_days_between): Added. Computes the (signed) number of days
615 Mon Jun 4 16:02:57 2001 Owen Taylor <otaylor@redhat.com>
617 * gstrfuncs.c (g_strup/strdown): to match g_strcasecmp,
618 check if it is lower/upper before converting to upper/lower
619 [ not required by ISO... ] (#55682, Jon Trowbridge)
621 Mon Jun 4 15:59:15 2001 Owen Taylor <otaylor@redhat.com>
623 * gunicode.h: Make a bit more standalone by adding include
626 * gunicode.h: Change size_t to g_size. (Ugh)
628 2001-05-31 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
630 * grand.h (g_random_boolean, g_rand_boolean): Fix to stupid bug in
631 g_random_boolean, also both functions now return 1 or 0 instead of
634 * tests/rand-test.c: Extended testcases.
636 * configure.in: Remove G_HAVE_ISO_CXX_VARARGS and
637 G_HAVE_ISO_C_VARARGS and define G_HAVE_ISO_VARARGS directly
638 guarded by #if(n)def __cplusplus.
640 2001-05-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
642 * gthread-2.0.pc.in: Add @G_THREAD_CFLAGS@ to Cflags.
644 Tue May 29 18:17:11 2001 Owen Taylor <otaylor@redhat.com>
646 * autogen.sh (have_libtool): Fix GNU sedism
648 2001-05-29 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
650 * tests/Makefile.am, tests/qsort-test.c: Add test case for the
651 g_qsort_with_data func. It works. This fixes bug #52605.
653 * tests/Makefile.am, tests/cxx-test.C: Now that we check for a C++
654 compiler in configure.in anyway, I added a test, that the GLib
655 headers can be inclued into a C++ program. This fixes bug #52605.
657 * configure.in: Don't bail out, if no C++ compiler is
658 found. Define G_HAVE_ISO_VARARGS only if appropriate.
660 * gmessages.h: Thus we can revert the previous patch.
662 2001-05-29 James Henstridge <james@daa.com.au>
664 * gmessages.h: "#ifdef G_HAVE_ISO_VARARGS" will always succeed
665 even when we don't have ISO vararg support. Changed to
666 "#if G_HAVE_ISO_VARARGS".
668 Mon May 28 11:40:34 2001 Owen Taylor <otaylor@redhat.com>
670 * configure.in: Check for __VARARGS__ separately for C and C++.
672 2001-05-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
674 * configure.in: Fix typo.
676 Sun May 27 05:09:18 2001 Tim Janik <timj@gtk.org>
678 * gmain.c (g_main_context_prepare): unlock context when bailing
680 (g_main_context_check): same here.
682 * gmain.c (g_main_context_check): before returning due to
683 changed pollfds, unlock context.
685 Thu May 24 21:24:16 CEST 2001 Paolo Molaro <lupus@ximian.com>
687 * gmarkup.c: back out change by mitch@convergence.de and apply patch in
688 bug id #52067 that fixes the same problem in a more complete manner.
689 This fixes also a segfault for a malformed XML file and adds a new
692 2001-05-24 Hans Breuer <hans@breuer.org>
694 * grel.c : reflect renaming of g_string_sprintfa to g_string_printfa
696 * makefile.msc.in : create an additional static lib to be used from
697 (at least) glib-genmarshal
699 2001-05-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
701 * garray.c (g_array_remove_index_fast): Tiny speed improvement
702 suggested by noon@users.sourceforge.net.
704 2001-05-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
706 * config.h.win32.in: Removed POSIX_*. Defined G_THREAD_SOURCE to
709 * glibconfig.h.win32.in: Define G_HAVE_ISO_VARARGS for gcc, don't
710 know about MSC. Define G_THREADS_IMPL_WIN32 instead of
711 G_THREADS_IMPL_POSIX and define the right static mutex macros and
714 * glib.def: g_thread_create renamed to g_thread_create_full.
716 * gthread.c: memcpy is not necessary here. We can simply use
719 * gmessages.c: Fix compilation error on win32. Added
720 GFileDescriptor, wich is gint on Unix and FILE* on win32.
722 2001-05-21 Andrew Lanoix <alanoix@umich.edu>
724 *giowin32.c: G_IO_WIN32_WINDOWS_MESSAGES channels
725 not handled correctly in g_io_win32_check()
727 Sun May 20 10:47:47 2001 Owen Taylor <otaylor@redhat.com>
729 * configure.in: Fix some problems in writing out varargs
730 tests in configure.in
732 Fri May 18 10:52:23 2001 Owen Taylor <otaylor@redhat.com>
734 * configure.in gmessages.h: Use compile checks for ISO C99 and GNU
735 extension varargs macros syntax and store result in glibconfig.h
736 (G_HAVE_ISO_VARARGS, G_HAVE_GNUC_VARARGS) rather than relying
737 on checking predefined macros.
739 2001-05-18 Michael Natterer <mitch@convergence.de>
741 * gmarkup.c: don't g_strdup()/g_free() all parsed attributes and
742 their values twice but simply copy the string pointers from the
743 GMarkupAttribute struct to the string arrays before passing them
746 2001-05-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
748 * gthread.c, gthread.h: Renamed g_thread_create to
749 g_thread_create_full and added macro g_thread_create, which omits
750 'stack_size', 'bound' and 'priority' parameters. Also removed
751 'bound' from GThread struct.
753 * gthreadpool.h, gthreadpool.c: Adapted GThreadPool to the above
754 changes. GThreadPool lost the 'priority' and 'bound'
755 members. g_thread_pool_new the 'stack_size', 'bound' and
756 'priority' parameters.
758 * tests/mainloop-test.c, tests/thread-test.c,
759 tests/threadpool-test.c: Adapted to the above changes.
761 * gmem.c (g_mem_profile): Fixed mutex deadlock.
763 2001-05-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
765 * makefile.mingw.in: Add gpattern.o to objects.
767 * glib.def: Export g_thread_exit as well.
769 * Makefile.am: Fix BUILT_EXTRA_DIST exporting.
771 Sun May 13 10:31:17 2001 Owen Taylor <otaylor@redhat.com>
773 * glib/Makefile.am gobject/Makefile.am gmodule/Makefile.am:
774 Add inter-library dependencies.
776 * acinclude.m4: Remove libtool macros.
778 * autogen.sh: Require libtool-1.4, automake-1.4p1.
780 2001-05-15 Havoc Pennington <hp@redhat.com>
782 * configure.in (AC_OUTPUT): m4macros/Makefile
784 * m4macros/Makefile.am, m4macros/glib-2.0.m4,
785 m4macros/glib-gettext.m4:
786 m4 files moved here on server, Makefile.am added
788 This is so you can aclocal -I m4macros while avoiding acinclude.m4
790 * Makefile.am: add m4macros subdir, remove references to glib-2.0.m4
792 2001-05-14 Havoc Pennington <hp@redhat.com>
794 * gutf8.c (g_utf8_get_char): fix docs; they said we validated
795 the UTF-8, but we can't possibly detect partial chars since
796 there's no length arg here, so trying to use this function
797 on invalid UTF-8 is a bad idea.
799 Thu May 10 23:21:30 2001 Owen Taylor <otaylor@redhat.com>
801 * gmessages.c (g_log_write_prefix): Avoid using stdio
802 to be as robust as possible in out-of-memory.
804 * gmessages.c (g_log_default_handler): Remove some dead
807 * gutils.c (g_parse_debug_string): Fix to avoid mallocs.
809 Fri May 11 18:25:23 2001 Tim Janik <timj@gtk.org>
813 (g_datalist_foreach): make these safe against removal of the
816 2001-05-10 Havoc Pennington <hp@pobox.com>
818 * gmessages.c (g_log_write_prefix): change env variable to
819 G_MESSAGES_PREFIXED, suggested by Tim
821 Thu May 10 15:19:01 2001 Tim Janik <timj@gtk.org>
823 * gscanner.c (g_scanner_key_hash): use g_str_hash() algorithm
826 * gmem.c (standard_calloc): free() doesn't return a value
829 2001-04-26 Havoc Pennington <hp@redhat.com>
831 * configure.in: Get rid of --enable-msg-prefix
833 * gmessages.c: make whether to prefix the messages with
834 appname/pid a runtime setting, not a compile-time setting. Change
835 default to include prefix for debug/warning/error type messages.
837 2001-05-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
839 * gthread.c, gthread.h: Renamed 'value' and 'arg' to 'data' and
840 'thread_func' to 'func' to make it more consistent with the rest
843 * gthreadpool.c, gthreadpool.h: Moved 'stack_size' from the public
844 members of GThreadPool to the private ones. Renamed 'thread_func'
845 to 'func' as above. Moved up 'user_data' in g_thead_pool_new
846 argument list and in GThreadPool struct.
848 Tue May 8 15:33:31 2001 Tim Janik <timj@gtk.org>
850 * gcompletion.h: removed #include <unistd.h> sneaked in by
853 2001-05-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
855 * gmain.c, gthread.c, gthread.h: Moved func and arg members from
856 GRealThread to GThread, such that they can be accessed by the
859 * gthread.c, gthread.h: Due to popular demand (Tim being the
860 populus here ;-) threads now have a 'return value', which is
861 returned by g_thread_join and is either the return of the topmost
862 thread function or the value given to g_thread_exit.
864 * gthreadpool.c, tests/mainloop-test.c, tests/thread-test.c:
865 Adapted to the above change.
867 2001-01-06 Hans Breuer <hans@breuer.org>
869 * glib.def : don't try to export g_strcpy, it is g_stpcpy;
870 updated and added some tweaking for functions which got
871 renamed recently, to avoid the update hassle if it can
872 simply be done compatible. Should vanish if there is a
873 stable version for win32.
875 Fri May 4 11:49:18 2001 Owen Taylor <otaylor@redhat.com>
881 * configure.in (GLIB_MICRO_VERSION): Up version to 1.3.5,
882 interface/binary age 0.
884 2001-05-04 Sven Neumann <sven@convergence.de>
886 * ghash.c: fixed a typo in a comment.
888 * gtree.[ch]: added new functions g_tree_new_full(), g_tree_replace(),
889 g_tree_steal() and g_tree_foreach() to adapt GTree to the GHashTable
890 API. Moved comments into the C file.
892 * docs/reference/glib/glib-sections.txt
893 * docs/reference/glib/tmpl/glib-unused.sgml
894 * docs/reference/glib/tmpl/hash_tables.sgml
895 * docs/reference/glib/tmpl/linked_lists_double.sgml
896 * docs/reference/glib/tmpl/linked_lists_single.sgml
897 * docs/reference/glib/tmpl/macros_misc.sgml
898 * docs/reference/glib/tmpl/trees-binary.sgml: updated documentation
900 Thu May 3 06:38:28 2001 Owen Taylor <otaylor@redhat.com>
902 * g[s]list.c (g_[s]list_foreach) docs/Changes-2.0.txt: Make
903 foreach() safe against removal of the _current_ element. While
904 this could break some code, the new behavior is consistent with
905 the rest of GLib/GTK+ and probably is what people expect in most
906 cases. (Suggested by Paul Kuykendall, #50071)
908 Wed May 2 11:10:22 2001 Owen Taylor <otaylor@redhat.com>
910 * gutf8.c (g_utf8_to_ucs4_fast): Fix read past end of the string.
911 (#50404, fix from Jonas Borgström)
913 Sun Apr 29 00:37:34 2001 Tim Janik <timj@gtk.org>
915 * ghook.[hc]: made hook ids a gulong.
917 2001-04-20 Dan Winship <danw@ximian.com>
919 * configure.in: Add a check for the Darwin dynamic linker. Use
920 AC_TRY_LINK when checking for "nonposix getpwuid_r" so it notices
921 "no getpwuid_r" correctly.
923 * testglib.c (main): Make template[] bigger to prevent an overrun.
924 Remove an unused variable. Initialize error to NULL.
926 * tests/gio-test.c (main): Add a cast to prevent a warning when
929 * tests/type-test.c (main): Add an #ifdef to prevent a warning
930 when G_HAVE_GINT64 is defined and G_GINT64_FORMAT isn't.
932 2001-04-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
934 * ghash.c, ghash.h: Remove definition of g_hash_table_freeze and
935 g_hash_table_thaw. Instead added G_DISABLE_DEPRECATED-guarded
936 macros to ghash.h to go along the lines of the standard.
938 * gscanner.c, gscanner.h: Dito for g_scanner_freeze_symbol_table
939 and g_scanner_thaw_symbol_table.
941 * gutils.c, gutils.h: Dito for g_dirname. g_basename is still
942 defined in gutils.c, but declared ing gutils.h only
943 G_DISABLE_DEPRECATED-guarded.
945 * configure.in: Removed bashism in test for the pkg-config
948 * configure.in: Rewrote test for multithread flag. Now uses
949 localtime_r, which hopefully has a consistent prototype across
950 different platforms. Also it uses a clever double EGREP trick
951 instead of compiling, which could give false positives. Thanks to
952 Dan Winship <danw@ximian.com> for the hint.
954 Wed Apr 18 17:35:38 2001 Owen Taylor <otaylor@redhat.com>
956 * gutils.c (_glib_gettext): Add missing static pointed
957 out by Michael Meeks.
959 Wed Apr 18 09:37:07 2001 Owen Taylor <otaylor@redhat.com>
961 * MAINTAINERS: Removed. Keeping README, README.cvs-commits
962 HACKING, and AUTHORS up to date is plenty without extra
963 random files that someone thought a module should have.
964 (Actually, I believe this was used for debbugs in the past.)
966 Tue Apr 17 11:47:07 2001 Owen Taylor <otaylor@redhat.com>
972 Tue Apr 17 10:43:36 2001 Owen Taylor <otaylor@redhat.com>
974 * gstrfuncs.c: Define _GNU_SOURCE for stpcpy
976 * tests/mainloop-test.c (main): Wait for all threads
977 to start before beginning tests.
979 2001-04-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
981 * gthreadpool.c (g_thread_pool_thread_proxy): Until now every
982 thread pool always had at least one tread waiting to avoid
983 switching overhead in case a new task would be added soon after
984 one finished. This however means a big waste of threads, if many
985 mostly inactive thread pools are involved. Now such a waiting
986 thread will only wait for half a second (This value is of course
987 very randomly picked) and go to the global threadpool afterwards.
989 Mon Apr 16 12:04:52 2001 Owen Taylor <otaylor@redhat.com>
991 * configure.in: Remove warnings about conflicts with the
994 * glib-2.0.m4: Fix some of the error text to be halfway
997 * README.in INSTALL.in: Add these to generate README, INSTAL
998 (as in the stable branch). Update.
1002 2001-04-16 Havoc Pennington <hp@redhat.com>
1006 * gfileutils.c: docs
1008 * gwin32.c: docs fixes
1016 2001-04-16 Havoc Pennington <hp@redhat.com>
1018 * glib-2.0.m4: put AC_PATH_PROG(pkg-config) before "Checking for
1019 glib" so the output looks right
1021 2001-03-23 Havoc Pennington <hp@redhat.com>
1023 * gutils.c (g_parse_debug_string): make GDebugKeys argument
1026 2001-04-14 Hans Breuer <hans@breuer.org>
1029 * makefile.msc.in : updated
1031 * gpattern.c : include "gutils.h" to resolve the inline hassle
1033 2001-04-11 Alexander Larsson <alexl@redhat.com>
1035 * glib-2.0.m4: Pass pkg-config options
1036 before the other args so it works even if
1037 POSIXLY_CORRECT is set.
1039 Mon Apr 9 18:57:44 2001 Tim Janik <timj@gtk.org>
1041 * configure.in: increment version to 1.3.4 (binary 0, interface 0).
1043 2001-04-05 Christian Rose <menthos@menthos.com>
1045 * configure.in: Added sv to ALL_LINGUAS.
1047 Wed Apr 4 09:18:55 2001 Tim Janik <timj@gtk.org>
1049 * Released GLib-1.3.3.
1051 Tue Apr 3 20:22:59 2001 Tim Janik <timj@gtk.org>
1055 * NEWS.pre-1-3: take over old news.
1057 Tue Apr 3 12:38:16 2001 Owen Taylor <otaylor@redhat.com>
1059 * glib-config-2.0.in: Exit with an error message that you
1060 should use pkg-config instead.
1062 * configure.in (PACKAGE): Require pkg-config.
1064 * tests/Makefile.am (EXTRA_DIST): Add utf8.txt.
1066 * configure.in (GLIB_MICRO_VERSION): Up MICRO to 3,
1067 leave interface/binary at 0.
1069 Tue Apr 3 13:46:22 2001 Tim Janik <timj@gtk.org>
1071 * glist.[hc]: added g_list_nth_prev() which walks ->prev instead
1074 * gpattern.[hc]: added shell-style pattern matching code from beast,
1075 derived from the gtk_pattern_*() code, but with a couple of bug fixes
1076 and a number of optimizations.
1078 2001-04-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1080 * gthreadpool.c: Added documentation.
1082 * gthreadpool.c: The global thread pool now also is seperated for
1083 bound and unbound threads. Only threads with standard stack size
1084 go to the global pool. g_thread_pool_new now protects the global
1085 setup of inform_mutex etc. with a lock. Fixed some typos. Unlock
1086 the queue after g_thread_pool_wakeup_and_stop_all in the proxy.
1088 2001-04-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1090 * gmain.c: Use the new GRealThread member "context" instead of a
1091 GStaticPrivate to store the thread specific main loop context.
1093 * gthread.c: Added "context" member to GRealThread and updated
1094 g_thread_create, g_thread_self and g_thread_cleanup accordingly.
1096 * gthread.c, gthread.h: Removed the functions
1097 g_static_private_(get|set)_for_thread and adapted
1098 g_static_private_(get|set) and g_static_private_free
1099 accordingly. This fixes Bug #51435.
1101 2001-03-30 Sven Neumann <sven@gimp.org>
1104 * docs/reference/glib/tmpl/hash_tables.sgml: added new functions
1105 g_hash_table_new_full, g_hash_table_replace, g_hash_table_steal and
1106 g_hash_table_foreach_steal. Moved most docs out of the template
1107 file into the C file. Please proofread the new documentation.
1109 2001-03-29 Tor Lillqvist <tml@iki.fi>
1111 * glib.def: Updates.
1112 * tests/makefile.mingw.in
1113 * tests/makefile.msc.in: Add module-test rules.
1115 Mon Mar 26 14:14:53 2001 Owen Taylor <otaylor@redhat.com>
1117 * Makefile.am (INCLUDES): -DG_DISABLE_DEPRECATED
1119 * gmain.h timeloop.c: Surround the cruftiest stuff with
1120 #ifndef G_DISABLE_DEPRECATED.
1122 * gcompat.h gdate.h: Move compat defines back to
1123 gdate.h, surround with #ifndef G_DISABLE_DEPRECATED.
1126 Mon Mar 26 13:34:50 2001 Owen Taylor <otaylor@redhat.com>
1128 [ Patch from DindinX <David.Odin@bigfoot.com>, added docs ]
1130 * gstrfuncs.c, gstrfuncs.h: Add g_stpcpy () for platform that don't
1132 * gstrfuncs.c (g_strjoin, g_strjoinv and g_strconcat): use
1133 g_stpcpy () so these functions run much faster.
1134 * config.h.win32.in, glib.def: add reference to g_stpcpy ()
1135 * configure.in: Add a test for the stpcpy () function.
1137 2001-03-20 Havoc Pennington <hp@redhat.com>
1139 * gutf8.c (g_utf8_strlen): rewrite, based on bug #52328 from
1142 2001-03-19 Havoc Pennington <hp@redhat.com>
1144 * gutf8.c (g_unichar_validate): added this function
1146 2001-03-18 Tor Lillqvist <tml@iki.fi>
1148 * gspawn-win32.c (SETUP_DEBUG): Add braces to silence gcc -Wall.
1150 * gspawn-win32-helper.c (write_no_error): Remove unused function.
1152 * tests/makefile.mingw.in (module-test.exe): Add rules for
1153 building module-test.
1155 Wed Mar 14 18:46:54 2001 Tim Janik <timj@gtk.org>
1157 * gscanner.[hc]: removed archaic gpointer derived_data; relict and
1158 added a GData member instead.
1160 * glist.[hc]: added g_list_remove_all().
1162 * gslist.[hc]: added g_slist_remove_all().
1164 Sat Mar 17 19:54:51 2001 Owen Taylor <otaylor@redhat.com>
1166 * timeloop.c: Reorder headers to make FreeBSD happy.
1168 2001-03-13 Tor Lillqvist <tml@iki.fi>
1170 From Edward M. Lee <tailbert@yahoo.com>:
1172 * gdate.c (g_date_set_parse): add support for dates that in the
1173 form "Wed Mar 14 2001". Running testgdate on cygwin requires this.
1175 Fri Mar 9 18:01:43 2001 Tim Janik <timj@gtk.org>
1177 * gscanner.[hc]: made config arg to g_scanner_new() const.
1179 2001-03-12 Tor Lillqvist <tml@iki.fi>
1181 * tests/Makefile.am (libmoduletestplugin_b_la_LIBADD,
1182 libmoduletestplugin_b_la_LIBADD): Link with the libgmodule la only
1185 2001-03-10 Tor Lillqvist <tml@iki.fi>
1187 * glibconfig.h.win32.in: Define G_PLATFORM_WIN32 here, too.
1189 * tests/Makefile.am: Use the _LIBADD dependency on libglib only on
1192 2001-03-09 Tor Lillqvist <tml@iki.fi>
1194 * README.win32: Update with some information about using configure
1197 2001-03-09 Hans Breuer <hans@breuer.org>
1199 * gobject/gobject.def : updated
1201 2001-03-08 Tor Lillqvist <tml@iki.fi>
1204 * gobject/gobject.def
1205 * gobject/makefile.mingw.in: Update.
1207 2001-03-08 Sven Neumann <sven@gimp.org>
1210 * docs/reference/glib/tmpl/trees-binary.sgml: added new function
1211 g_tree_lookup_extended().
1213 Thu Mar 8 16:23:34 2001 Tim Janik <timj@gtk.org>
1215 * ghook.[hc]: destruction cleanup. there's one
1216 ->finalize_hook member in the hooklist now that gets
1217 called when a hook should be destroyed, that's it.
1218 that function is guarranteed to be called only when
1219 all ref_counts to the hook vanished, thus also when
1220 the hook is not in call.
1222 2001-03-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1224 * configure.in (FLAG_DOES_NOT_WORK): Fix typo and thus bug #51862.
1226 Wed Mar 7 09:32:06 2001 Tim Janik <timj@gtk.org>
1228 * glib-object.h: add gvaluearray.h.
1230 * gstring.[hc]: fixup naming of g_string_sprint*.
1232 * gtypes.h: fixed GCompareDataFunc naming.
1234 2001-03-07 Christian Meyer <chrisime@gnome.org>
1236 * configure.in: Added de (German) to ALL_LINGUAS.
1238 2001-03-02 Christophe Merlet <redfox@eikonex.org>
1240 * configure.in: Added fr (French) to ALL_LINGUAS.
1242 2001-03-01 Tor Lillqvist <tml@iki.fi>
1244 * gutils.c (g_path_is_absolute): (Win32) Remove test for initial
1245 double backslash (UNC path), this will of course be matched by the
1246 test for an initial G_DIR_SEPARATOR right up front. Silly me.
1247 (g_find_program_in_path): Implement on Win32. Append the
1248 executable file name suffixes from PATHEXT in turn while looking
1250 (g_find_program_in_path): If the program we are looking for is a
1251 relative path in a subdirectory, don't do any path search.
1252 (g_get_any_init): (Win32) Also look for the USERPROFILE env var
1253 indicating the home directory equivalent.
1254 (g_find_program_in_path): (Win32): Use MAXPATHLEN, not PATH_MAX
1255 which isn't defined with MSVC.
1257 * testglib.c (main): Test g_find_program_in_path() on Win32 by
1258 looking for more.com and regedit.
1260 * glib.def: Add g_find_program_in_path.
1262 2001-02-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1264 * gthreadpool.c (g_thread_pool_thread_proxy): Make
1265 max_unused_threads work for -1 as well.
1267 2001-02-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1269 * gthread.h (struct _GThread): Change the order to match the order
1270 in g_thread_create().
1272 * gthread.c (g_static_rec_mutex_lock_full): Also do the right
1273 thing (behave like 'depth' calls to g_static_rec_mutex_lock) for a
1274 mutex, that is already locked.
1276 Thu Feb 22 10:31:36 2001 Owen Taylor <otaylor@redhat.com>
1278 * gmain.c (g_source_remove_poll): Add missing implementation
1279 of g_source_remove_poll. (Pointed out by Stefan Westerfeld)
1281 2001-02-21 Tor Lillqvist <tml@iki.fi>
1283 * gutils.c (g_find_program_in_path): Implement on Win32.
1285 Cygwin support contributed by Stefan Ondrejicka
1286 <ondrej@idata.sk>. Hopefully I got it all in while simultaneously
1287 adding support for auto*/libtool for mingw.
1289 * Makefile.am: Changes for auto* support on Cygwin and Win32. Do
1290 still distribute the hand-written makefiles and *.win32.in files,
1291 though. Use GIO, GSPAWN and PLATFORMDEP macros set by configure.
1292 Use -no-undefined. Pass -export-symbols glib.def to libtool.
1294 * configure.in: Define G_PLATFORM_WIN32 on both pure Win32 (mingw)
1295 and Cygwin. Add AC_CYGWIN, AC_EXEEXT and AC_LIBTOOL_WIN32_DLL
1296 calls for Cygwin and mingw support. Check for %I64u guint64
1297 format (in MS C library). Set G_MODULE_IMPL on mingw and
1298 Cygwin. Use ac_object and ac_exeext. Set GIO, GSPAWN, PLATFORMDEP
1299 and G_LIBS_EXTRA. Compile timeloop only on Unix. Define OS_WIN32
1300 automake conditional on Win32.
1302 * glib.h: Include gwin32.h also on Cygwin.
1304 * gfileutils.c (get_contents_posix): Use O_BINARY (defined as 0 on
1305 Unix) for Cygwin's sake.
1307 * gtimer.c (GETTIME): Reduce #ifdefs, use a macro GETTIME().
1312 * gutils.c: For code needed both on Cygwin and native Win32,
1313 test for G_PLATFORM_WIN32.
1315 * gmarkup.h: Use G_BEGIN_DECLS and G_END_DECLS.
1317 * gtypes.h: Refine GLIB_VAR definition. Also check for DLL_EXPORT
1318 in case compiling a static library on Win32 or Cygwin.
1320 * gwin32.c: No <direct.h> on Cygwin. No need for ftruncate() or
1321 dirent emulation on Cygwin.
1322 (get_package_directory_from_module) Convert return value from
1323 GetModuleFileName() to POSIX path on Cygwin.
1325 * tests/Makefile.am (progs_LDADD): Link with libglib, libgthread
1326 and libgmodule as appropriate. Use -no-undefined.
1328 * gbacktrace.c: Move #ifdefs around a bit on Win32.
1330 2001-02-21 Tor Lillqvist <tml@iki.fi>
1332 * gshell.c (unquote_string_inplace): Make static.
1334 * gthread.h: Include gtypes.h to be sure to get GLIB_VAR
1335 definition, remove definition from here.
1337 * gunicode.h: Remove duplicate GLIB_VAR definition from here, too.
1339 * gutils.c: (Win32) Use USERPROFILE as home dir if present. On
1340 Win2k, HOMEDRIVE and HOMEPATH aren't reliable.
1342 * Makefile.am (INCLUDES): Add -DGLIB_COMPILATION.
1344 * makefile.mingw.in: Remove install target, Windows isn't Unix.
1345 (DEFINES): Add -DDLL_EXPORT.
1349 * testglib.c: Undefine GLIB_COMPILATION.
1351 * testglib.c: Make some vars static. Add Cygwin path tests.
1353 * glib.def: Updates.
1356 * */.cvsignore: Ignore also .obj, .dll, .lib and .exe files.
1358 2001-02-19 Hans Breuer <hans@breuer.org>
1360 * glib/glib.def, gobject/gobject.def : added nissing symbols
1362 * gobject/makefile.msc : updated
1364 * glib/gmessages.c : call the "debug interrupt" before exiting the
1365 program, if build with msvc as debug version. Which gives the opportunity
1366 to see the callstack, etc.
1368 * glib/gthread.c : thread->pid is only defined #ifdef
1369 G_THREAD_USE_PID_SURROGATE
1371 Mon Feb 19 07:32:38 2001 Tim Janik <timj@gtk.org>
1373 * glib-config-2.0.in (lib_glib): my name is glib-config-2.0!
1374 don't exit with errorcode!=0 for --help or -h.
1377 * configure.in: build glib-config-2.0.
1379 2001-02-17 Havoc Pennington <hp@pobox.com>
1381 * gthread.c: include string.h
1383 Applied patch from Soeren Sandmann:
1385 * testglib.c: const fixes
1387 * gwin32.h: format cleanups
1389 * gutils.c (g_atexit): constify a variable
1390 (g_find_program_in_path): constification
1391 (g_basename): G_CONST_RETURN
1392 (g_path_skip_root): G_CONST_RETURN
1393 (g_getenv): G_CONST_RETURN
1394 (g_get_user_name): G_CONST_RETURN
1395 (g_get_real_name): G_CONST_RETURN
1396 (g_get_home_dir): G_CONST_RETURN
1397 (g_get_tmp_dir): G_CONST_RETURN
1398 (g_get_prgname): G_CONST_RETURN
1399 (_glib_gettext): G_CONST_RETURN
1401 * gunicode.h: formatting cleanups
1403 * gstrfuncs.c (g_strerror): G_CONST_RETURN
1404 (g_strsignal): G_CONST_RETURN
1406 * gspawn.c (g_execute): const on variables
1408 * gmessages.c (printf_string_upper_bound): fix const on a variable
1410 * gmem.c (g_mem_chunk_new): make the "name" arg const
1411 (struct _GRealMemChunk): make the "name" field const
1413 * gfileutils.c (g_file_open_tmp): store const return in a const
1416 * gdataset.c (g_quark_to_string): G_CONST_RETURN
1418 Sat Feb 17 07:26:33 2001 Tim Janik <timj@gtk.org>
1420 * configure.in (G_MODULE_HAVE_DLERROR): add check for broken RTLD_GLOBAL
1423 2001-02-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1425 * acconfig.h, configure.in: Reverted the changes necessary to
1426 enlarge the system thread for G_THREAD_USE_PID_SURROGATE.
1428 * gthread.c: Now implement G_THREAD_USE_PID_SURROGATE in gthread.c
1429 instead of gthread/gthread-posix.c. While the latter has the
1430 advantage, that it is conceptually cleaner, it makes
1431 g_thread_self_posix_impl _very_ slow and that hurts
1432 GStaticRecMutex and other things. So the new version is less
1435 2001-02-09 Havoc Pennington <hp@redhat.com>
1437 * gconvert.c (g_convert): don't overwrite errors
1439 * gerror.c (g_set_error): improve warning message if an error is
1441 (g_propagate_error): ditto
1443 2001-02-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1445 * gthread.c, gthread.h: Added functions g_static_rec_mutex_init,
1446 g_static_rec_mutex_free, g_static_private_init,
1447 g_static_private_free, g_static_rw_lock_init to allow the usage of
1448 all those types dynamically. (g_static_rw_lock_free already
1449 existed). Aditionally freed static_private indeces are reused
1450 now. Untill now the array would just grow if you would use more
1451 and more static_private. That required adding a slist of all
1452 running threads, which could potentially be of good use later. It
1453 is not exported however. Renamed a LOCK and small indentation
1456 * tests/thread-test.c: Test the new static_private index freing
1457 and reusing feature.
1459 Mon Feb 12 15:01:09 2001 Owen Taylor <otaylor@redhat.com>
1461 * configure.in (gtk_doc_min_version): Add check for gtk-doc version.
1463 2001-02-10 Tor Lillqvist <tml@iki.fi>
1466 * gutils.h: Move GLIB_VAR definition from gutils.h to gtypes.h
1469 * gmem.h: Mark glib_mem_profiler_table for export.
1471 * gwin32.c (get_package_directory_from_module): Don't store
1472 address of local variable in hashtable.
1474 2001-02-08 Fatih Demir <kabalak@kabalak.net>
1476 * configure.in: Added "tr" to ALL_LINGUAS.
1478 2001-02-04 Tor Lillqvist <tml@iki.fi>
1480 * gwin32.c (g_win32_getlocale): Use "nn" for Nynorsk, as nn.po
1481 files are appearing now. If the sublanguage starts with '@', don't
1482 use a '_' separator. South Africa is 'ZA', not 'SA'.
1484 Sun Feb 4 07:38:32 2001 Tim Janik <timj@gtk.org>
1486 * docs/debugging.txt: s/glib_trap_/g_trap_/. add comments on
1487 g_trap_instance_signals, g_trace_instance_signals and
1490 * gmem.c: s/glib_trap_/g_trap_/.
1492 2001-02-04 Tor Lillqvist <tml@iki.fi>
1494 * tests/Makefile.am (thread_LDADD): Change order of libs,
1495 put progs_LDADD last. Needed for cygwin, says jbdoll@kepri.re.kr.
1497 2001-02-02 Tor Lillqvist <tml@iki.fi>
1501 * gmain.c: Stylistic cleanups. Use G_STRLOC in g_warning() calls.
1503 * glib.def: Add missing functions.
1505 2001-02-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1507 * gthread.c, gthread.h: Added g_static_mutex_init to allow
1508 initialization of a GStaticMutex, that can not be initialized with
1509 G_STATIC_MUTEX_INIT, for example in allocated structures.
1511 Wed Jan 31 13:46:58 2001 Owen Taylor <otaylor@redhat.com>
1513 * acinclude.m4 glib-gettext.m4: Fix problem with --disable-nls.
1515 2001-01-31 Tor Lillqvist <tml@iki.fi>
1517 * glibconfig.h.win32.in: Corresponding change as below to
1520 2001-01-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1522 * gthread.c, gthread.h: Added g_static_mutex_free to allow using
1523 GStaticMutexes with limited lifetime without leaking.
1525 * configure.in: GStaticMutex doesn't have to provide extra space
1526 for debugging information for G_ERRORCHECK_MUTEXES, as then the
1527 non-default implementation (runtime_mutex) is used anyway.
1529 * gthread.h (g_cond_wait): Added debug information for
1530 g_mutex_free calls, if G_ERRORCHECK_MUTEXES is defined.
1532 2001-01-29 Tor Lillqvist <tml@iki.fi>
1534 * glibconfig.h.win32.in: Use the same GMutex structure as the
1535 configure-generated glibconfig.h does.
1537 * gstrfuncs.c (g_strsignal): Declare strsignal() on Cygwin, too,
1538 says jbdoll@kepri.re.kr.
1540 2001-01-29 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1542 * gthread.c: Broadcast the condition, if there are waiting
1543 readers, as all might read at the same time. Only signal the
1544 writer thread, if there are no more readers.
1546 2001-01-25 Tor Lillqvist <tml@iki.fi>
1549 * */makefile.mingw.in: Protect the rule to rebuild makefile.mingw
1550 if makefile.mingw.in has changed with a check if said .in file
1551 exists. (This rule is mainly a convenience for yours truly.)
1553 * giowin32.c: Socket support rewritten. It was utterly broken, and
1554 untested in fact. We still do use a thread for each socket being
1555 watched, but instead of blocking in recv() (which of course was
1556 plain stupid for sockets being listen()ed on in a server-type
1557 application), we block in select(). The read method for sockets
1558 calls recv(). It is now possible for the application to call
1559 accept(), recv() or send() in the callback, just like on
1560 Unix. Tested with code kindly provided by Andrew Lanoix.
1562 Rename g_io_channel_win32_new_stream_socket() to
1563 g_io_channel_win32_new_socket() as it isn't restricted to stream
1566 * gmain.c (g_poll): Related changes in the Win32 version of
1567 g_poll(). When polling for messages, always do a PeekMessage()
1568 first. We used to miss messages if several were posted between
1571 * giochannel.h: Improve Win32-related comments.
1573 * gutf8.c: (Win32) Include <stdio.h> for sprintf.
1575 * tests/gio-test.c: (Win32) Add tests for polling for Windows
1578 * tests/makefile.mingw.in: Remove superfluous compilation command
1581 2001-01-23 Alex Larsson <alexl@redhat.com>
1583 * gmain.c (g_source_callback_unref): Free the callback
1584 (g_source_set_callback): Initialize the callback refcount
1586 2001-01-20 Tor Lillqvist <tml@iki.fi>
1588 * gutils.c (g_get_codeset): (Win32) Even if g_get_codeset() is
1589 currently commented out from gutils.h, fix it to return the same
1590 CP%d value as g_get_charset().
1592 2001-01-19 Kjartan Maraas <kmaraas@gnome.org>
1594 * gconvert.c: Fix typo.
1595 * gfileutils.c: Same here.
1596 * configure.in: Added no to ALL_LINGUAS
1598 2001-01-17 Tor Lillqvist <tml@iki.fi>
1600 * gwin32.c (g_win32_getlocale, g_win32_error_message): Add doc
1602 (g_win32_get_package_installation_directory): Add one parameter,
1603 the name of a DLL in the package. Add possibility to use that to
1604 deduce the installation directory if not entered into the
1605 Registry. Make the return value dynamically allocated.
1606 (g_win32_get_package_installation_subdirectory): New convenience
1609 * gutils.c (GLIB_LOCALE_DIR)
1610 * gwin32.h: Adapt accordingly.
1612 * testglib.c (main): Adapt tests accordingly.
1614 Tue Jan 16 23:20:38 2001 Owen Taylor <otaylor@redhat.com>
1616 * gutils.c glibintl.h: Optimize for size rather than speed by
1617 making _() always call _glib_gettext() instead of conditionally
1618 calling gettext() or _glib_gettext_init. glib only uses translated
1619 strings in slow error handling code anyways.
1621 * glibintl.h: g'ify types.
1623 * Makefile.am: include glibintl.h in _SOURCES
1625 2001-01-17 Tor Lillqvist <tml@iki.fi>
1627 * config.h.win32.in: Define ENABLE_NLS and GETTEXT_PACKAGE.
1630 * makefile.msc.in: Use the GNU intl library.
1632 * gwin32.c (g_win32_get_package_installation_directory): New
1633 function. To be used by various GLib-using packages to get their
1634 installation directory, which should be stored in the Registry by
1637 * gwin32.h: Declare it.
1639 * testglib.c (main): Test it.
1641 * gutils.c: On Win32, define GLIB_LOCALE_DIR using
1642 g_win32_get_package_installation_directory().
1646 Mon Jan 15 21:39:06 2001 Owen Taylor <otaylor@redhat.com>
1648 * glib-2.0.pc.in (Libs) glib-config-2.0.in: Add @INTLLIBS@.
1650 Mon Jan 15 21:12:49 2001 Owen Taylor <otaylor@redhat.com>
1652 * configure.in acconfig.h glibintl.h gutils.c
1653 po/{Makefile.in.in,POTFILES.in,po2tbl.in}: Add gettext
1656 * glib-gettext.m4 acinclude.m4: Clean up the GTK+ gettext macros
1657 some more and put them in this file, though they also need
1658 to be included in acinclude.m4 due to the brokeness of
1661 * gspawn.c gspawn-win32.c gutf8.c gconvert.c gfileutils.c
1662 gshell.c: Remove dummy _() #defines, include glibintl.m4.
1664 2001-01-09 Tor Lillqvist <tml@iki.fi>
1666 * giowin32.c: Rework the changes needed to pass mainloop-test. Now
1667 we don't need to call TerminateThread() after all, which is a
1668 relief, as the docs have a BIG RED WARNING SIGN about using that
1669 API. Instead, when closing a fd channel that has a reader thread
1670 running, just mark it as non-running and additionally mark the fd
1671 as ripe for closing. When the reader thread hopefully eventually
1672 gets something (and EOF or some actual data), it will note that it
1673 shouldn't be running, break out of the loop, and close the fd.
1675 The socket channel closing code should probably be changed
1676 similarily, but that will have to wait until I have a test case.
1678 (g_pipe_readable_msg, g_io_channel_win32_new_pipe,
1679 g_io_channel_win32_new_pipe_with_wakeups,
1680 g_io_channel_win32_pipe_request_wakeups,
1681 g_io_channel_win32_pipe_readable): Remove these, have been
1682 obsolete for some time.
1684 * gutils.c (g_basename, g_dirname): Don't warn about deprecation
1685 on Win32. Code written for GLib 1.2 doesn't have much choice but
1686 to use GLib >= 1.3 on Win32.
1690 2001-01-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1692 * gmem.c: Made g_profile_mutex a GMutex* instead of
1693 G_LOCK_DEFINE_STATIC to avoid deadlock for thread implementations
1694 without native static mutexes. Contruct g_profile_mutex in
1697 2001-01-06 Tor Lillqvist <tml@iki.fi>
1699 * gconvert.c (g_locale_to_utf8, g_locale_from_utf8): Get len using
1700 strlen() if arg is negative in the Win32 code, too.
1702 * giowin32.c: Changes necessary to be able to run
1703 mainloop-test. We can't close the fd that our (internal) reader
1704 thread is sitting doing a blocking read() from. We must terminate
1705 the thread first. Keep track of thread handle, and close it when
1706 thread is dying. Start reader thread with the lower-level
1707 CreateThread() instead of _beginthreadex() from the C runtime, in
1708 order to be able to use TerminateThread(). Hopefuly this isn't
1713 * tests/makefile.{mingw,msc}.in (TESTS): Add mainloop-test and
1716 * tests/mainloop-test.c: Portability: <unistd.h>, need <fcntl.h>
1719 * tests/unicode-encoding.c (process): Add missing "line" argument
1720 to fail(). On Win32, convert UTF-16LE, as libiconv'c ivonf always
1721 converts to UTF-16BE if we ask for unspecific UTF-16.
1722 (main) Handle also '\r'.
1724 Fri Jan 5 11:25:42 2001 Owen Taylor <otaylor@redhat.com>
1726 * configure.in (PACKAGE): move $enable_debug down below
1727 checks for GCC to avoid setting CFLAGS prematurely,
1728 change checks to avoid adding -g twice.
1730 * gutf8.c (g_ucs4_to_utf8): Support len < 0 to mean
1733 * gutf8.c (g_utf8_to_ucs4): Terminate result with 0.
1735 * tests/mainloop-test.c (main): Fix uses of
1736 g_main_loop_destroy().
1738 * tests/unicode-encoding.c tests/Makefile.am tests/utf8.txt:
1739 Tests for unicode-conversion code.
1741 * gconvert.c (g_convert, g_convert_with_fallback): work around
1742 a couple of GNU libc bugs.
1744 * gconvert.[ch] (g_{locale,filename}_{to,from}_utf8): Standardize
1745 arguments to match g_convert(). Document.
1748 - Implement conversion functions to and from UTF-16
1749 - Standardize unicode conversion functions on prototype like
1751 - Add a lot of error checking to unicode conversion functions.
1753 * gunicode.[ch] (g_utf8_to_ucs4_fast): Add fast, non-checking
1754 variant of g_utf8_to_ucs4.
1756 * gutf8.c (g_utf8_validate):
1757 - add g_return_if_fail (str != NULL).
1758 - add checks for overlong strings, non-valid Unicode characters (>= 110000)
1759 and single surrogates.
1761 2001-01-05 Tor Lillqvist <tml@iki.fi>
1763 * testglib.c (main): Add test for g_path_skip_root().
1765 * gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
1766 forward slashes in the template.
1768 * gutils.c (g_path_skip_root): On Win32, skip the \\server\share
1769 part of UNC paths. On all platforms, skip several initial
1770 slashes. Add a few comments.
1771 (g_get_any_init): On Win32, in case HOME is Unix-style with
1772 (forward) slashes (some other applications apparently set it up
1773 this way, convert to backslashed form.
1775 * configure.in (glib_os): Remove stray 'v'. Add case for mingw,
1776 although using configure for mingw surely doesn't work yet.
1780 2001-01-02 Havoc Pennington <hp@redhat.com>
1782 * configure.in: remove glib-config-2.0
1784 * Makefile.am: remove glib-config-2.0
1786 2001-01-03 Havoc Pennington <hp@pobox.com>
1788 * tests/Makefile.am (INCLUDES): -I$(top_srcdir)/gmodule,
1789 fix from Michael Meeks
1791 * Makefile.am (INCLUDES): DISABLE was spelled wrong
1793 Wed Jan 3 14:10:49 2001 Owen Taylor <otaylor@redhat.com>
1795 * gmain.[ch]: Switch GMainLoop to be ref/unref, use to
1796 make dropping reference to running loop safe.
1798 Wed Dec 13 20:41:49 2000 Owen Taylor <otaylor@redhat.com>
1800 * gmain.c (g_source_unref_internal): Unref callback->cb_data
1801 if it was still set when the source is freed. (Usually, this
1802 will be done by g_source_destroy.)
1804 2001-01-02 Dan Winship <danw@helixcode.com>
1806 * garray.h (g_array_append_val, g_array_prepend_val,
1807 g_array_insert_val): Use parentheses around an argument to make
1808 these cause an error if you pass a non-lvalue for the value,
1809 rather than silently doing the wrong thing.
1811 2000-12-29 Tor Lillqvist <tml@iki.fi>
1813 * glibconfig.h.win32.in: Add GLIB_SIZEOF_VOID_P and GLIB_SIZEOF_LONG.
1817 * {.,*}/makefile.{mingw,msc}.in: Add -DG_ENABLE_DEBUG.
1819 Fri Dec 29 14:53:18 2000 Tim Janik <timj@gtk.org>
1821 * configure.in: we can't grow _cv_ variables by using a backticked
1822 expr that refers back to the variable (glib_cv_sizeof_system_thread for
1823 G_THREAD_USE_PID_SURROGATE), that'd keep the variable growing every time
1824 it's evaluated. quantum states, anyone?)
1826 Thu Dec 28 10:21:46 2000 Tim Janik <timj@gtk.org>
1828 * gmem.[hc]: got rid of outdated dmalloc support. provide g_try_malloc()
1829 and g_try_realloc() which _may_ fail and return NULL.
1830 nuked g_mem_check(), provided GMemVTable for memory function
1831 virtualization, alterable at program startup with g_mem_set_vtable().
1832 provided glib_mem_profiler_table and g_mem_profile() to support limited
1833 profiling information out of the box (uses mprotect() for free()ed areas
1835 provide globally visible G_MEM_ALIGN.
1838 * docs/macros.txt: file to get a clue about the various configuration
1841 * docs/debugging.txt: explain debugging traps.
1843 * configure.in: got rid of --enable-mem-check and --enable-mem-profile,
1844 define GLIB_SIZEOF_VOID_P and GLIB_SIZEOF_LONG. check malloc prototypes
1845 and define SANE_MALLOC_PROTOS is we can use them.
1846 <boy, is this file a mess>
1848 * gutils.c, gscanner.c: fix up compatibility warnings, use g_message().
1850 2000-12-27 Tor Lillqvist <tml@iki.fi>
1852 * README.win32: Update.
1854 2000-12-25 Tor Lillqvist <tml@iki.fi>
1856 * gmessages.c: (Win32) Use a MessageBox for fatal
1857 messages. Collect eror message into a buffer, and display that.
1861 * glibconfig.h.win32.in: Update. Remove unused wchar and wctype
1862 macros, add G_MODULE_SUFFIX.
1864 2000-12-24 Ali Abdin <aliabdin@aucegypt.edu>
1866 * Makefile.am, gcompat.h, glib.h: New gcompat.h header file
1867 as recommended by Havoc.
1869 * gdate.c, gdate.h, testgdate.c,
1870 docs/reference/glib/glib-sections.txt,
1871 docs/reference/glib/tmpl/date.sgml, tests/date-test.c: Rename some
1872 of the gdate functions to use the '_get' in their name. Patch
1875 2000-12-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1877 * configure.in: Determine the suffix of the shared librarries for
1878 this system. This is done analogous to
1879 ltconfig.sh. G_MODULE_SUFFIX in glibconfig.h is set to either
1880 "sl", "dll", or (most often) "so".
1882 * tests/Makefile.am, tests/module-test.c,
1883 tests/libmoduletestplugin_a.c, tests/libmoduletestplugin_b.c:
1884 Added new testcase for gmodule. This is mostly copied from
1885 gmodule/testgmodule.c, but unlike that is is quiet. (Why BTW are
1886 some tests that verbose, not to say loquacious...)
1888 2000-12-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1890 * grand.c: Updated G_RAND_DOUBLE_TRANSFORM to be more
1891 accurate. Redid g_rand_double() such that it returns 52 bits after
1892 the point instead of 32 as before. That OTOH requires calling
1893 g_rand_int() twice. Overhauled g_rand_int_range(), which is easier
1894 now thanks to the new precision of g_rand_double(). Thanks to
1895 Sverre Johansen <sj@ifi.uio.no> for the hint.
1897 * grand.h: Added g_rand_boolean() and g_random_boolean()
1898 macros. While they could be omitted due to extreme simplicity,
1899 they make intention clearer in code and are therefore good to have.
1901 * grand.c, grand.h: Renamed all 'min' and 'max' parameters to'
1902 begin' and 'end' resp. to avoid making people think, that 'max' is
1903 included in the interval. 'end' now isn't, whereas 'begin'
1904 is. That's similar to the use in the STL.
1906 * gslist.c, glist.c: Ok, I'm a moron. When I originally
1907 implemented ENABLE_GC_FRIENDLY, I forgot to include config.h into
1908 the affected files. Now that Alex did that for those two,
1909 inevitable typos surfaced, which are now fixed.
1911 * garray.c, ghash.c, gqueue.c, gtree.c: Include config.h as well,
1912 as ENABLE_GC_FRIENDLY should be known.
1914 2000-12-19 Alexander Larsson <alexl@redhat.com>
1917 Added --disable-mem-pools option.
1923 Disable free list and memory chunks if DISABLE_MEM_POOLS is defined.
1925 2000-12-17 Tor Lillqvist <tml@iki.fi>
1927 * gutf8.c (g_utf8_get_charset_internal): (Win32) Use GetACP to get
1928 the current ANSI codepage.
1930 * gunicode.h: Add comment that the static string g_get_charset
1931 sets the parameter to point to should be copied in case the
1932 charset might be changed later in the program.
1934 2000-12-14 Tor Lillqvist <tml@iki.fi>
1936 * makefile.{mingw,msc}.in: No need to -DGSPAWN_HELPER when
1937 compiling gspawn-win32-helper any longer.
1939 * giowin32.c (g_io_win32_dispatch): Warn if no callback. Call
1941 (g_io_win32_create_watch): Fix typo.
1942 (g_io_win32_fd_create_watch): Ditto.
1943 (g_io_channel_unix_new): If it is a file descriptor (i.e., a Unix
1944 fd lookalike provided by the C library), call
1945 g_io_channel_win32_new_fd(). If it is a socket (from WinSock),
1946 call g_io_cahnnel_win32_new_stream_socket(). Hopefully sockets and
1947 fds don't overlap. TODO: Implement also datagram sockets.
1948 (g_io_channel_win32_poll): Call g_main_context_get_poll_func().
1950 * gcompletion.h: Include <unistd.h> only on Unix. Is this
1951 inclusion really needed here? OTOH, do include <stddef.h>, for
1954 * gmessages.c: (Win32) Don't define a function called "write" that
1955 might clash with the prototype from <io.h>, use a #define.
1959 * gmain.c (g_source_add_poll): Don't return a value from void
1961 (g_main_context_get_poll_func): Compile also for non-Win32, as
1962 presumably was intended. The result var is a GPollFunc, not a
1963 GPollFunc*. Return the result!
1965 2000-12-13 Havoc Pennington <hp@redhat.com>
1967 * gconvert.c (open_converter): make static
1969 * gutf8.c (g_utf8_validate): Simplify logic a bit, maybe
1970 speeding it up - now we just return FALSE if we had to bail out
1971 for any reason before getting to the end of the string, as defined
1972 by a nul byte if len was -1, defined by the len otherwise. This
1973 also fixes a bug where nul bytes were not treated as invalid
1974 when the length was specified.
1976 2000-12-12 Havoc Pennington <hp@pobox.com>
1978 * gmain.c (g_main_context_destroy): don't try to use thread stuff
1979 unless G_THREADS_ENABLED
1980 (g_main_context_query): ditto
1981 (g_main_context_check): ditto
1982 (g_main_loop_quit): ditto
1984 Tue Dec 12 18:58:22 2000 Tim Janik <timj@gtk.org>
1986 * ghash.c (g_hash_table_remove): return whether a value
1989 Tue Dec 12 15:18:10 2000 Owen Taylor <otaylor@redhat.com>
1991 * gmain.[ch]: Revert unauthorized changes.
1993 2000-12-12 Elliot Lee <sopwith@redhat.com>
1995 * gmain.c, gmain.h (g_main_context_new, g_main_context_destroy):
1996 GMainContext useful in implementing some additional styles of
1997 main loop usage. To do this, however, Joe Hacker needs to be able
1998 to create/destroy GMainContext's at will. This is just an export
1999 of existing functionality, rather than any new functionality.
2001 They are listed in the "Low level functions for implementing custom
2002 main loops" section of the header file, to avoid confusing people.
2004 Sun Dec 10 10:47:11 2000 Owen Taylor <otaylor@redhat.com>
2006 * gmain.c (g_source_destroy_internal): Remove pollfds
2007 from the context here, not when actually freeing the
2010 * gmain.c (g_source_unref_internal): Free source list
2011 and source, call source->source_funcs->destroy().
2013 * giochannel.c: Unreference io_channel properly.
2015 Thu Dec 7 15:22:30 2000 Owen Taylor <otaylor@redhat.com>
2017 * tests/mainloop-test.c (recurser_start): Add a bunch
2020 * gmain.c (g_source_attach): Reference the source
2021 when adding (pointed out by Elliot)
2023 2000-12-08 Raja R Harinath <harinath@cs.umn.edu>
2025 * acglib.m4 (GLIB_AC_DIVERT_BEFORE_HELP):
2026 Rename from GLIB_DIVERT_BEFORE_HELP.
2027 Update to track autoconf 2.49b.
2028 * configure.in: Reflect above change.
2029 (AC_EGREP_HEADER): Rename from really obselete AC_HEADER_EGREP.
2030 (debug_default): Replace "if test `expr ...`" with "case".
2032 * tests/Makefile.am (TESTS): Rearrange into other variables, and
2033 include run-markup-tests.sh.
2034 (TESTS_ENVIRONMENT): New. Pass $srcdir to tests.
2035 (noinst_PROGRAMS): Rename to ...
2036 (check_PROGRAMS): ... this. 'automake' ensures that these are
2037 built before running the tests.
2038 * tests/run-markup-tests.sh: Support $srcdir != $builddir.
2040 2000-12-08 Havoc Pennington <hp@pobox.com>
2042 * tests/Makefile.am (TESTS): move markup-test to noinst_PROGRAMS;
2043 it isn't a proper test, the proper test would be
2044 run-markup-tests.sh, but that can't go in tests, so we need
2045 a manual make check rule. Didn't do that yet.
2047 2000-12-07 Raja R Harinath <harinath@cs.umn.edu>
2049 * gmain.h: Don't put anything after an #endif.
2050 * gmain.c: Likewise.
2052 2000-12-06 Havoc Pennington <hp@pobox.com>
2054 * tests/strfunc-test.c (main): add g_strdupv test
2056 * gstrfuncs.c (g_strdupv): Add a function to copy
2059 Tue Dec 5 12:23:04 2000 Owen Taylor <otaylor@redhat.com>
2061 * gmain.[hc]: Major change in API for creating sources
2062 to handle multiple main loops (GMainContext *).
2064 GSources are now exposed as GSource * and implemented
2065 with structure derivation.
2067 * giochannel.[ch]: Changed vtable for GIOChannel to correspond
2068 to the new mainloop API, add g_io_channel_create_watch().
2070 * gtypes.h: Move GTimeVal here.
2072 * gthread.h: Remove gmain.h include to avoid circularity.
2074 * giounix.c: Update for new GMain API.
2076 * giowin32.c: Update for new GMain API. (No check for
2077 proper compilation or working.)
2079 * timeloop.c timeloop-basic.c: A benchmarking program for
2080 the main loop comparing the main loop against a
2081 hand-written (timeloop-basic.c) variant.
2083 * tests/mainloop-test.c: New torture test of mainloop.
2085 * docs/Changes-2.0.txt: Started. Added text about
2088 * gmain.c (g_main_add_poll_unlocked): Initial fd->revents
2089 to zero. (#8482, Benjamin Kahn)
2091 2000-12-01 Tor Lillqvist <tml@iki.fi>
2093 * {.,*}/makefile.msc.in: Include make.msc from GLib's build subdir.
2095 * makefile.{mingw,msc}.in (glib_OBJECTS): Add gunibreak.
2097 * glib.def: Update correspondingly.
2099 2000-11-21 Havoc Pennington <hp@pobox.com>
2101 * gmacros.h: Provide G_CONST_RETURN which is 'const' by default,
2102 and nothing when G_DISABLE_CONST_RETURNS is defined.
2104 2000-11-29 Havoc Pennington <hp@redhat.com>
2106 * gunidecomp.c (COMBINING_CLASS):
2107 s/UNICODE_LAST_CHAR/G_UNICODE_LAST_CHAR/
2109 * gunichartables.h: Update for data in Unicode 3.0.1
2111 * gunidecomp.h: Ditto
2113 * gunicode.h (GUnicodeBreakType): Enum for line break properties
2114 (g_unichar_break_type): Get the break property for a char
2116 * gunibreak.h: Autogenerated line break property tables
2118 * gunibreak.c (g_unichar_break_type): added
2120 * Makefile.am (EXTRA_DIST): dist gen-unicode-tables.pl
2122 * Makefile.am (libglib_1_3_la_SOURCES): Add gunibreak.h, gunibreak.c
2124 * gen-unicode-tables.pl: Include the script to update the unicode
2127 2000-11-28 Elliot Lee <sopwith@redhat.com>
2129 * gmarkup.c: Fix warnings.
2131 * guniprop.c, gunidecomp.c: Make warnings go away by using
2132 GPOINTER_TO_INT() instead of (int).
2134 * gcompletion.[ch]: Add g_completion_set_compare(),
2135 to allow (for example) using case-insensitive completion.
2137 2000-11-28 Tor Lillqvist <tml@iki.fi>
2139 Patches by Hans Breuer:
2141 * gspawn-win32.c: Move the code for gspawn-win32-helper to its own
2144 * makefile.{mingw,msc}.in: Change accordingly.
2146 * gspawn-win32-helper.c: New file.
2148 * Makefile.am (EXTRA_DIST): Add it.
2150 * gmarkup.c (find_current_text_end): Fix assertion not to check an
2151 uninitialised variable.
2153 2000-11-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2155 * gthread.c: Set the thread data before locking the mutex, because
2156 the locking call might use g_thread_self ().
2158 * gthread.h: Do only show the location of the locking/unlocking
2159 for -DG_ERRORCHECK_MUTEXES and not the name of the mutex. Add the
2160 errorcheck capability for g_cond_wait and g_cond_timed_wait as
2163 2000-11-27 Havoc Pennington <hp@redhat.com>
2165 * gthread.h: Add void in empty function arg list
2167 2000-11-22 Tor Lillqvist <tml@iki.fi>
2169 * makefile.{mingw,msc}.in: Add gqsort.
2173 2000-11-21 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2175 * configure.in: Add a surrogate for thread priorities using PID
2176 niceness for systems with no thread priorities and different PIDs
2177 for threads of the same process (most notably: Linux). Define
2178 G_THREAD_USE_PID_SURROGATE in that case, as used by
2179 gthread-posix.c. Also make the system thread bigger by
2180 sizeof (long) to contain the thread's PID.
2182 * gfileutils.c: Include stdlib.h for mkstemp prototype.
2184 * gthread.c: Add priority range checks to the affected functions.
2186 * gthreadpool.c: Remove unused variable.
2188 Mon Nov 20 18:55:17 2000 Jonathan Blandford <jrb@redhat.com>
2190 * gtree.[hc]: Patch from David Benson <daveb@idealab.com> to add
2191 user_data support to gtree functions.
2193 Mon Nov 13 18:35:52 2000 Jonathan Blandford <jrb@redhat.com>
2195 * gtypes.h (GCompareFuncData): new func type to let you use user
2196 data when comparing nodes.
2198 * gslist.c (g_list_sort_with_data): new function to sort with
2201 * glist.c (g_list_sort_with_data): new function to sort with
2204 * garray.[ch]: Added convenience functions to sort arrays.
2206 2000-11-16 Havoc Pennington <hp@redhat.com>
2208 * guniprop.c (g_unichar_isspace): Use a switch here, maybe helps
2209 the compiler optimize things. Also, ' ' is a SPACE_SEPARATOR,
2210 so don't special case it.
2212 2000-11-17 Tor Lillqvist <tml@iki.fi>
2214 * glib.def: Add g_trash_stack entry points.
2216 Fri Nov 17 15:43:00 2000 Owen Taylor <otaylor@redhat.com>
2222 * tests/Makefile.am (dist-hook): Add code to distribute
2225 2000-11-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2227 * configure.in: Check for the sched.h header and include it on
2228 gthread/gthread-posix.c if available.
2230 * configure.in: Add -D_POSIX4_DRAFT_SOURCE to
2231 GTHREAD_COMPILE_IMPL_DEFINES. Also add -D_POSIX4A_DRAFT10_SOURCE
2232 to G_THREAD_CFLAGS. Really deploy GTHREAD_COMPILE_IMPL_DEFINES,
2233 when searching for thread libs. Look for sched_* functions in
2234 -lrte as well. All of that is necessary on DG/UX.
2236 * configure.in: Use AC_TRY_COMPILE instead of AC_EGREP_HEADERS in
2237 various places to make it work more reliable, to make it accept
2238 macros instead of functions etc.
2240 * configure.in: Replace some NULL's for checks with 0 to make it
2241 work without stdio.h everywhere.
2243 * configure.in, gutils.c: changed the test for getpwuid_r to first
2244 test for a posix version and then for a non-posix version. No code
2245 change in gutils.c. Again this change deals better with getpwuid_r
2246 being a macro and not a function. Most of the above with kind help
2247 from Tethys <tet@isengard.europe.dg.com>. This fixes Bug #13403.
2249 2000-11-14 Tor Lillqvist <tml@iki.fi>
2251 * gwin32.h: Make #endif comment match #ifdef.
2253 Mon Nov 13 14:00:20 2000 Owen Taylor <otaylor@redhat.com>
2255 * configure.in: Up version to 1.3.2
2257 * gconvert.h (enum GConvertError): Remove trailing ,
2259 * gfileutils.c (g_file_open_tmp): Fix comment to
2260 properly describe return value.
2262 2000-11-13 Tor Lillqvist <tml@iki.fi>
2264 * config.h.win32.in: Add USE_LIBICONV.
2266 * gconvert.c: Check G_OS_WIN32 only after including glib.h.
2270 2000-11-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2272 * gthread.c (g_static_rec_mutex_*): Made recursive mutexes also
2273 work when the thread system is not (yet) initialized.
2275 Sun Nov 12 18:34:32 2000 Owen Taylor <otaylor@redhat.com>
2277 * gconvert.[ch]: Create wrapper functions for iconv()
2278 so that we can transparently use the native iconv,
2279 libiconv, or (in the future) a mini-iconv included
2282 * glib-config-2.0.in glib-2.0.pc.in: Include @ICONV_LIBS@
2284 * INSTALL: Added note about libiconv.
2286 * configure.in: Add checks for libiconv from pango. If
2287 EILSEQ is not defined in errno.h add define for it into
2288 glibconfig.h so g_iconv can use it. (Note, recompiling
2289 from a system without EILSEQ to a system with EILSEQ
2290 will break binary compatibility)
2292 2000-11-12 Robert Brady <robert@suse.co.uk>
2294 * gstrfuncs.c, gstrfuncs.h: Remove g_filename_{to,from}_utf8
2296 * gconvert.c, gconvert.h: Add g_filename_{to,from}_utf8 and
2297 g_locale_{to.from}_utf8. The locale_ variant honours
2298 nl_langinfo(CODESET), the filename_ variant uses UTF-8 unless
2301 (g_convert): Add G_CONVERT_ERROR_PARTIAL_INPUT error, if bytesread
2302 != length and no bytesread pointer passed.
2304 Sun Nov 12 15:29:53 2000 Owen Taylor <otaylor@redhat.com>
2306 * gfileutils.[ch]: template is a reserved word in
2307 C++ s/template/tmpl/.
2309 2000-11-11 Havoc Pennington <hp@pobox.com>
2311 * gmarkup.c (g_markup_parse_context_parse): Handle a long stream
2312 of bytes containing no UTF-8 character starts
2314 2000-11-11 Tor Lillqvist <tml@iki.fi>
2316 * glib.def: Add missing entry points.
2318 * gfileutils.c (g_mkstemp): Improve chance to generate unique
2319 names with less effort a bit.
2321 * gfileutils.h: Add g_file_open_tmp() declaration.
2323 * testglib.c: Include <io.h> on Win32.
2325 * makefile.mingw.in: Correct the way to invoke sub-makes.
2327 Sun Nov 5 13:20:54 2000 Owen Taylor <otaylor@redhat.com>
2329 * glib-object.h: Add gtypemodule.h
2331 2000-11-11 Tor Lillqvist <tml@iki.fi>
2333 * gfileutils.c (g_file_open_tmp): New function, suggested by Havoc
2335 (g_mkstemp): Use only one case for letters in temp file name, as
2336 this will be used on systems with case-insensitive file systems.
2338 * testglib.c (main): Test g_mkstemp() and g_file_open_tmp().
2340 2000-11-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2342 * gthreadpool.c: Don't take other threads with other priorities
2343 into account as changing the priority is highly
2344 unportable. (Actually using it at all already is unportable, but
2345 even sometimes where that works, changing priority is not
2348 2000-11-05 Havoc Pennington <hp@pobox.com>
2350 * gmarkup.h: rename G_MARKUP_FOO to
2351 G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG
2353 * gmarkup.c: don't start doc comments with "Returns"
2355 2000-11-05 Havoc Pennington <hp@pobox.com>
2357 * gmarkup.c: inline docs
2358 (unescape_text): properly check strtoul for failure.
2360 * gerror.c (g_propagate_error): Free the src error if the dest
2361 location is NULL - I'm pretty sure that's what this function was
2364 2000-11-05 Havoc Pennington <hp@pobox.com>
2366 * gutils.c (g_find_program_in_path): cleanup docs, sync param
2367 names to those in the header
2369 * gfileutils.c (g_mkstemp): clean up docs
2371 * gshell.h: sync param names with param names in .c file
2373 * gfileutils.h (enum GFileTest): remove trailing comma from last
2374 member, confuses gtk-doc
2376 * gmarkup.h: s/GMarkupErrorType/GMarkupError/g; to follow
2379 2000-11-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2381 * gasyncqueue.c: Added documentation for asyncronous queues.
2383 * gspawn.c: Include sys/select.h (some platforms need it for
2386 * gspawn.c: Changed unportable __FUNCTION__ to the verbatim
2389 2000-10-31 Tor Lillqvist <tml@iki.fi>
2394 * gfileutils.h: Actually, g_mkstemp() is better suited in gfileutils.
2396 2000-10-30 Tor Lillqvist <tml@iki.fi>
2398 * configure.in: Check for mkstemp.
2400 * gutils.c (g_mkstemp): New function. If HAVE_MKSTEMP, just call
2401 it, otherwise use code lifted from glibc.
2403 * gutils.h: Declare it.
2405 * glib.def: Here, too. Plus two missing functions.
2407 2000-10-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2409 * gcache.h, gcache.c, ghash.h, ghash.c, grel.c, grel.h, gtypes.h:
2410 Introduced new function type GEqualFunc to return TRUE for equal
2411 params. This is now used instead of GCompareFunc (which should
2412 work akin to strcmp) here. This kind of fixes Bug #14412. Note
2413 that technically GCompareFunc and GEqualFunc are still the same
2414 types, as gint == gboolean.
2416 * ghash.h, gutils.c: g_int_equal and g_direct_equal now return
2417 gboolean to be really become GEqualFunc.
2419 * gscanner.c, testglib.c, tests/hash-test.c: Some tiny changes to
2420 follow the above change.
2422 2000-10-27 Tor Lillqvist <tml@iki.fi>
2424 * makefile.{mingw,msc}.in (glib_OBJECTS): Add gmarkup.
2426 * glib.def: Add missing functions.
2428 * tests/makefile.{mingw,msc}.in (TESTS): Add markup-test.
2430 2000-10-24 Havoc Pennington <hp@pobox.com>
2432 * gmarkup.h, gmarkup.c: New module to parse a simple
2435 * Makefile.am: add gmarkup.h, gmarkup.c
2437 * tests/Makefile.am: add markup-test
2439 * gstring.h (g_string_new_len): new function to create a string
2441 (g_string_new): avoid a gratuitous realloc
2443 2000-10-26 Tor Lillqvist <tml@iki.fi>
2445 * makefile.{mingw,msc}.in: Cosmetics.
2447 2000-10-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2449 * gstrfuncs.c (g_strsplit): When the string is ended by a
2450 delimiter, return an extra empty string just like for a delimiter
2451 at the start of the string. This makes the function behave more
2452 consistent and also fixes Bug #15026.
2454 Tue Oct 24 22:09:14 2000 Tim Janik <timj@gtk.org>
2456 * glib-object.h: added newly added gobject/ headers.
2458 * gmesage.c: print g_message() output to stderr instead of stdout.
2460 2000-10-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2462 * configure.in: Use one = instead of two, which is plainly wrong.
2464 2000-10-19 Tor Lillqvist <tml@iki.fi>
2466 * makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
2470 * gfileutils.c: Make them compile with picky MSVC.
2472 * gwin32.h: New file. Move Win32-only stuff that isn't related to
2473 GIOChannels here from giochannel.h.
2475 * Makefile.am: Add it here.
2477 * giochannel.h: Move stuff to gwin32.h.
2479 * glib.h: On Win32, include gwin32.h.
2481 Mon Sep 11 10:03:24 2000 Owen Taylor <otaylor@redhat.com>
2483 * glib.h convert.c (g_convert_with_fallback): Change
2484 ERROR_OTHER to ERROR_FAILED, add some dummy marking with _().
2486 * docs/reference/glib/glib-sections.txt
2487 docs/reference/glib/glib-docs.sgml Update for g_convert,
2490 2000-10-16 Tor Lillqvist <tml@iki.fi>
2492 * glibconfig.h.win32.in: Remove alloca stuff from here. galloca.h
2493 takes care of it, correctly.
2495 * giowin32.c (reader_thread): Some more debugging output.
2496 (g_io_channel_win32_poll): Remove unused vars.
2498 * gfileutils.c: Changes for Win32, with no unistd.h and no
2501 * gspawn-win32.c: Implementation of the g_spwan_* functions for
2502 Win32. Due to the general non-Unixness of Win32, much of the
2503 functionality that is relatively clean to implement on Unix, is
2504 hard to do on Win32. We must use a separate helper program to
2505 change directory, close extra file descriptors, redirect the std
2506 ones, as needed, and only then start the child process. No child
2507 process pid can be returned, unfortunately. Or if we used
2508 CreateProcess directly, it probably could. (Now we use the spawnv*
2509 functions from msvcrt.)
2511 * Makefile.am (EXTRA_DIST): Add gspawn-win32.c
2513 * glib.def: Add new entry points.
2516 * giowin32.c: Remove g_io_channel_win32_wait_for_condition(),
2517 g_io_channel_win32_poll() subsumes it.
2519 * gbacktrace.h: G_BREAKPOINT for MSVC (on the ix86).
2521 * gwin32.c (g_win32_getlocale): Use "sp" for
2522 LANG_CROATIAN+SUBLANG_SERBIAN_LATIN.
2524 * makefile.{mingw,msc}.in (glib_OBJECTS): Add new files.
2525 Add gspawn-win32-helper.exe rule.
2527 * tests/makefile.{mingw,msc}.in (TESTS): Add shell-test and
2530 * tests/spawn-test.c: (run_tests): On Win32, don't try to run
2531 /bin/sh, but ipconfig (no special significance in choosing that,
2532 just a program that outputs something to stdout).
2534 2000-10-15 Raja R Harinath <harinath@cs.umn.edu>
2536 Remove need for acconfig.h, and misc. cleanups.
2537 * acglib.m4 (GLIB_SIZEOF): Add 'autoheader' comment to
2539 (GLIB_BYTE_CONTENTS): Likewise.
2541 * configure.in: Add 'autoheader' comments to all AC_DEFINE(...)
2542 and AC_DEFINE_UNQUOTED(...) lines.
2543 Replace AC_MSG_CHECKING/AC_CACHE_VAL with AC_CACHE_CHECK.
2544 (AM_PROG_LIBTOOL): Move after AC_PROG_CC.
2546 * acconfig.h: Empty out.
2548 * Makefile.am (BUILT_EXTRA_DIST): New variable. List 'dist'able
2549 files that are created in the builddir.
2550 (dist-hook): Handle those files.
2551 (libglib_1_3_la_SOURCES): Remove @ALLOCA@. @ALLOCA@ should only
2552 be used in an _LDADD or _LIBADD, since it expands (if necessary)
2555 * tests/Makefile.am (BUILT_EXTRA_DIST): New variable.
2556 (dist-hook): Handle $(BUILT_EXTRA_DIST).
2558 2000-10-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2560 * grand.c: Added inline documentation.
2562 * gtypes.h, gnode.h, gutils.h: Readded GFreeFunc,
2563 g_node_insert_after and g_find_program_in_path resp., which
2564 mysteriously disappeared during the glib.h dissection.
2566 2000-10-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2568 * glibconfig.h.win32.in: Adapted accordingly to header separation
2569 and GLIB_HAVE_ALLOCA_H renaming.
2571 * Makefile.am: Added the new headers to glibinclude_HEADERS.
2573 * glib.h: Forgot to include gerror.h.
2575 * glib.h, galloca.h, garray.h, gasyncqueue.h, gbacktrace.h,
2576 gcache.h, gcompletion.h, gconvert.h, gdataset.h, gdate.h, ghash.h,
2577 ghook.h, giochannel.h, glist.h , gmacros.h, gmain.h, gmem.h,
2578 gmessages.h, gnode.h, gprimes.h, gquark.h, gqueue.h, grand.h,
2579 grel.h, gscanner.h, gslist.h, gstrfuncs.h, gstring.h, gthread.h,
2580 gthreadpool.h, gtimer.h, gtree.h, gtypes.h, gutils.h: Split glib.h
2581 into many header files mostly according to the resp. *.c-files.
2583 * gmacros.h: Added G_BEGIN_DECLS and G_END_DECLS to mean: 'in case
2584 of C++: extern "C" { ... }' analogous to glibc __BEGIN_DECLS and
2587 * configure.in, gerror.h, gfileutils.h, gshell.h, gspawn.h,
2588 gunicode.h, : Changed guard-macro names to something more
2591 * configure.in, *.h: Use G_BEGIN_DECLS and G_END_DECLS.
2593 * configure.in: Defined GLIB_HAVE_ALLOCA_H instead of including
2594 alloca.h in glibconfig.h, GLIB_HAVE_ALLOCA_H is used in glib.h.
2596 * configure.in: Removed cruft from old threading code.
2598 2000-10-09 Raja R Harinath <harinath@cs.umn.edu>
2600 Work with beta autoconf 2.50.
2601 * configure.in (GLIB_MAJOR_VERSION): Use GLIB_DIVERT_BEFORE_HELP
2602 instead of AC_DIVERT_PUSH(),AC_DIVERT_POP.
2603 (AC_CHECK_HEADERS): Remove redundant AC_DEFINE(HAVE_...).
2604 (REALLOC_0_WORKS): Move AC_DEFINE outside AC_CACHE_VAL.
2605 (dlopen): Quote nested AC_CHECK_... calls.
2607 * acglib.m4 (GLIB_TR_SH, GLIB_TR_CPP): Utility macros copied from
2609 (GLIB_DIVERT_BEFORE_HELP): New macro that works both with autoconf
2610 2.13 and beta autoconf 2.50.
2611 (GLIB_SIZEOF, GLIB_BYTECONTENTS): Use GLIB_TR_*.
2613 * Makefile.am (CONFIGURE_DEPENDENCIES): Use this to specify
2614 that 'configure' depends on acglib.m4.
2616 2000-10-09 Havoc Pennington <hp@redhat.com>
2618 * Makefile.am, tests/Makefile.am: Add new files.
2620 * tests/spawn-test.c, tests/shell-test.c: new tests for
2621 the shell/spawn stuff
2623 * gutils.c (g_find_program_in_path): convert a relative
2624 program name into an absolute pathname to an existing
2627 * gspawn.h, gspawn.c: New fork/exec API
2629 * gshell.h, gshell.c: Shell-related utilities, at the moment
2630 simply routines to parse argv and quote/unquote strings
2632 * guniprop.c (g_unichar_isspace): Return TRUE for the
2633 ASCII space characters isspace() returns TRUE for.
2635 * gfileutils.c (g_file_get_contents): Convenience function
2636 to slurp entire file into a string and return it. Partially
2637 written by Joel Becker.
2638 (g_file_test): file test function
2640 2000-10-06 Tor Lillqvist <tml@iki.fi>
2642 * makefile.msc.in: Revamp to be like makefile.mingw.in, make
2643 the MSVC build actually work again.
2645 * gmodule/makefile.msc.in
2646 * gobject/makefile.msc.in
2647 * gthread/makefile.msc.in: New files, like their mingw counterparts.
2649 * gmodule/Makefile.am
2650 * gobject/Makefile.am
2651 * gthread/Makefile.am: Make and distribute them.
2653 * */makefile.mingw.in: Allow override of GLib version number from
2654 the build/win32/module.defs file.
2656 * glib.def: Add new entry point.
2658 * tests/gio-test.c (main): Fix the Win32-only code to use current
2659 API, g_io_channel_win32_make_pollfd() and g_io_channel_win32_poll().
2661 Fixes from Hans Breuer:
2663 * glib.h (struct DIR): Keep the last readdir result cached inside
2664 the DIR struct, to enable several DIRs being open simultaneously.
2666 * gwin32.c (g_win32_readdir): Use the above instead of static.
2668 * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
2671 2000-10-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2673 * glib.h: Changed alloca stuff a bit: when we have a working
2674 alloca.h, we're not messing with alloca any further. Should fix a
2675 bug reported by Bernd Demian <wega@csc-dd.de>.
2677 2000-09-29 Jonathan Blandford <jrb@redhat.com>
2679 * gnode.c (g_node_insert_after): Added function to keep symmetry
2680 with g_node_insert_before.
2682 2000-09-29 Martin Baulig <baulig@suse.de>
2684 Several minor ANSI C fixes.
2686 Added missing casts:
2687 * gdate.c (g_date_fill_parse_tokens): `s = (guchar *) str'.
2688 * gmain.c (g_idle_dispatch): `func = (GSourceFunc) source_data'.
2689 (g_idle_add_full): `(gpointer) function' in call to g_source_add().
2690 * gstrfuncs.c (g_strdown): `s = (guchar *) string' and
2691 `return (gchar *) string'.
2692 (g_strup): Likewise.
2693 (g_strchug): `start = (guchar*) string' in 1st for() argument;
2694 `strlen ((gchar *) start)' in call to g_memmove().
2695 * gstring.c (g_string_down): `s = (guchar *) string->str'.
2696 (g_string_up): Likewise.
2697 * gthreadpool.c (stop_this_thread_marker):
2698 `(gpointer) &g_thread_pool_new'.
2699 * gunidecomp.h (decomp_table[]): Cast all the strings to
2702 Put text following #endif into comments:
2705 2000-09-29 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2707 * configure.in, glib.h: Added errorcheck mutexes. These are
2708 activated through the preprocessor symbol
2709 G_ERRORCHECK_MUTEXES. Need to add an extra word to StaticMutex in
2710 order to achieve this. g_(static_)mutex_* functions instrument the
2711 mutex operations with mutex name and location, when compiled with
2712 -DG_ERRORCHECK_MUTEXES. g_thread_init activates the errorcheck
2713 mutexes, when compiled with -DG_ERRORCHECK_MUTEXES.
2715 2000-09-28 Havoc Pennington <hp@pobox.com>
2717 * glib.h (GThreadPriority): fix indentation
2718 (GConvertError): generic error is conventionally called
2719 _FAILED rather than _OTHER, at least at the moment,
2720 according to GError docs in docs/reference.
2722 * gconvert.c: s/_OTHER/_FAILED/
2724 2000-09-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2726 * configure.in: Adjusted the test for an unimplemented
2727 getpwuid_r. Info from Michael Pruett. This is just a forward
2728 merge from glib-1-2.
2730 * configure.in: Moved determination of G_THREAD_FLAGS before
2731 G_THREAD_LIBS. Check for UnixWare systems and set the right cflags
2732 and libs there (it needs -Kthread for the native compiler and
2733 -pthread for gcc). Thanks to Boyd Lynn Gerber <gerberb@zenez.com>
2736 * configure.in: Fail immediately, when no thread library is found,
2737 instead of continuing searching for rt libs etc. Changed almost
2738 all occurances of $enable_threads to $have_threads, as that's,
2741 * tests/threadpool-test.c: Define vars inside the guard to avoid
2744 * configure.in, tests/type-test.c: Some platforms support 64 bit
2745 'long long', but you can not printf or scanf them. In that case,
2746 don't define G_G{UINT|INT}64_FORMAT. Changed the type-test program
2749 * gutils.c (g_get_current_dir): max_len can't be initialized
2750 statically as it might call a function. So do it at first call.
2752 Tue Sep 26 2000 Elliot Lee <sopwith@redhat.com>
2754 * glib.h: Add G_GNUC_PURE macro (but don't use it anywhere).
2756 Mon Sep 25 2000 Elliot Lee <sopwith@redhat.com>
2758 * garray.c, glib.h, gmem.c: Add a few missing G_GNUC_CONST's.
2760 2000-09-21 Tor Lillqvist <tml@iki.fi>
2762 * makefile.mingw.in: Add gconvert.o. Use libiconv.
2764 * config.h.win32.in: Define HAVE_GETCWD.
2766 * glib.def: Add new entry points.
2768 2000-09-21 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2770 * configure.in: The last released automake (1.4) still requires
2771 AM_PROG_LIBTOOL instead of AC_PROG_LIBTOOL, so use that for the
2774 2000-09-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2776 * acconfig.h, configure.in, gutils.c: Test for the existence of
2777 getcwd, and use it only when found.
2779 * glib.h: Only use the gcc-variable-macro-argument-extension for
2780 gcc >= 2.4. Both patches from Jonas Oberg <jonas@gnu.org>.
2782 Mon Sep 18 10:58:21 2000 Owen Taylor <otaylor@redhat.com>
2784 * gutf8.c: Implement g_ucs4_to_utf8 which was in
2785 the header file but not implemented.
2787 Sun Sep 17 2000 Elliot Lee <sopwith@redhat.com>
2789 * glib.h configure.in: Define g_alloca() as an
2790 alloca-that-works-anywhere.
2792 * gconvert.c: Fix warnings which could have caused problems on
2795 Sun Sep 10 12:37:40 2000 Owen Taylor <otaylor@redhat.com>
2797 * glib.h gconvert.c (g_convert): Havoc Pennington's implementation
2798 of convenient character set conversion using iconv, with
2799 the addition of GError. We probably need a fallback that
2800 just does conversions between, say UTF-8,16,32 and ISO-8859-1
2801 for targets without iconv at all.
2803 Also add g_convert_with_fallback() to take care of conversions
2804 where we accept some loss going to the target encoding.
2806 2000-09-10 Havoc Pennington <hp@redhat.com>
2808 * gutf8.c (g_utf8_validate): Add this function.
2810 Sat Sep 9 18:50:42 2000 Owen Taylor <otaylor@redhat.com>
2812 * gstrfuncs.c (g_strescape): Add a missing g_return_if_fail().
2814 Mon Aug 21 03:57:46 2000 Tim Janik <timj@gtk.org>
2816 * glib.h (G_BREAKPOINT): for non-i386 and non-alpha, or non gcc,
2817 implement BREAKPOINT() as raise (5 /* SIGTRAP */);
2819 * glib.h: provide user-definable switch G_IMPLEMENT_INLINES,
2820 to turn on compilation of inline function implementations provided
2821 in header files with extern linkage.
2822 wrap inline function implementations into ifdef __G_UTILS_C__, so we
2823 really only compile them for gutils.c and not also into arbitrary user
2824 code that wants to make use of G_IMPLEMENT_INLINES.
2825 adjusted comment apropriately.
2827 * gutils.c: to turn on compilation of inline functions, provide
2828 #define G_IMPLEMENT_INLINES 1 and #define __G_UTILS_C__.
2830 2000-09-06 Havoc Pennington <hp@redhat.com>
2834 * docs/reference/glib/tmpl/error_reporting.sgml: docs
2836 Wed Sep 6 10:28:34 2000 Owen Taylor <otaylor@redhat.com>
2838 * guniprop.c gunicode.h gutf8.c: Some inline docs fixes.
2840 2000-09-06 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2842 * glib.h, gtimer.c, tests/thread-test.c:
2843 s/G_MICROSEC/G_USEC_PER_SEC/
2845 * glib.h: Removed G_G{U}{SHORT|INT|LONG}_FORMAT from glib.h, as
2846 they are really superfluous.
2848 Tue Sep 5 20:16:27 2000 Owen Taylor <otaylor@redhat.com>
2850 * configure.in docs/Makefile.am: Add gtk-doc checks
2851 for newly added docs/reference/ subdir.
2853 2000-09-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2855 * gthread.c (g_thread_error_quark): Don't use a G_LOCK, as it
2858 2000-09-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2860 * gstring.c (g_string_free): Use g_return_val_if_fail instead of
2861 g_return_if_fail, as the function now is supposed to return
2864 * gerror.c, gerror.h (g_propagte_error): Added function
2865 g_propagte_error to hand over local errors to the calling
2868 * glib.h: Include gerror.h before it is used for some g_thread_*
2871 * gthread.c, gthreadpool.c, glib.h: Enable error reporting for
2872 thread creation, namely for g_thread_create, g_thread_pool_new,
2873 g_thread_pool_push and g_thread_pool_set_max_threads.
2875 * tests/thread-test.c, tests/threadpool-test.c: Adapted
2878 2000-08-31 Tor Lillqvist <tml@iki.fi>
2882 * giowin32.c (g_io_channel_win32_make_pollfd): New function, to
2883 make a GPollFD from a GIOChannel. Creates the events and starts
2884 the reader thread if necessary.
2887 * giowin32.c (g_io_channel_win32_poll): No use for separate
2888 condition parameter.
2890 * gmain.c (g_get_current_time): (Win32): Simplify, use
2891 GetSystemTimeAsFileTime().
2893 2000-08-27 Tor Lillqvist <tml@iki.fi>
2895 * giowin32.c (g_io_channel_win32_poll): New function, otherwise
2896 like g_io_channel_win32_wait_for_condition(), but accept several
2898 (g_io_channel_win32_wait_for_condition): Call
2899 g_io_channel_win32_poll().
2901 * glib.h: Declare g_io_channel_win32_poll().
2903 * gwin32.c (g_win32_error_message): Don't believe return value
2906 2000-08-25 Elliot Lee <sopwith@redhat.com>
2908 * glib.h, gunicode.h, gmodule/gmodule.h:
2909 Mark the following functions G_GNUC_CONST (to allow optimization)
2910 because their results are a function of only their parameters:
2911 g_int_hash, g_int_equal, g_direct_hash, g_direct_equal,
2912 g_quark_to_string, g_date_is_leap_year, g_date_days_in_month,
2913 g_date_monday_weeks_in_year, g_date_sunday_weeks_in_year,
2914 g_spaced_primes_closest, g_unichar_is*, g_unichar_to*,
2915 g_unichar_*digit_value, g_unichar_type
2917 2000-08-21 Elliot Lee <sopwith@redhat.com>
2919 * gobject/Makefile.am, gobject/gobject-query.c,
2920 gobject/gparamspecs.c: Fix inclusion of config.h
2922 Mon Aug 21 14:46:23 2000 Owen Taylor <otaylor@redhat.com>
2924 * tests/gio-test.c: Fix a couple of trivial bugs that
2925 were causing warnings.
2927 Mon Aug 21 14:39:36 2000 Owen Taylor <otaylor@redhat.com>
2929 * glib.h: Use C99 varargs macros where possible
2930 (check __STDC_VERSION__), otherwise, on gcc, use an alternate
2931 form of gcc varargs which is more likely
2932 to be supported going forward. (Based on some code
2935 2000-08-17 Darin Adler <darin@eazel.com>
2938 * garray.c: (g_array_free), (g_ptr_array_free),
2939 (g_byte_array_free): Return the data left behind.
2940 * gstring.c: (g_string_free): Return the data left behind.
2942 Changed the free calls that leave data behind so they
2943 return a pointer to the left-behind data, NULL if told not
2944 to leave anything behind. This makes these calls easier
2945 to use correctly, without any incompatible API change for
2946 callers that don't know about the return value. Of course,
2947 it would be even clearer if the free calls weren't dual-purpose
2950 2000-08-12 Tor Lillqvist <tml@iki.fi>
2952 * giowin32.c: Some indentation and spacing fixes. Add some more
2954 (g_io_win32_add_watch): New function, with common code from
2955 g_io_win32_fd_add_watch and g_io_win32_sock_add_watch. Don't start
2956 more than one reader thread for a GIOChannel. We should obviously
2957 have just one reader thread reading a file descriptor or socket.
2959 2000-08-10 Havoc Pennington <hp@redhat.com>
2961 * gthread-2.0.pc.in (Cflags): don't duplicate glib Cflags
2963 * gmodule-2.0.pc.in (Cflags): don't duplicate glib Cflags
2965 * gobject-2.0.pc.in (Cflags): don't duplicate Cflags from glib
2968 2000-08-10 Havoc Pennington <hp@redhat.com>
2970 * glib-2.0.pc.in (Cflags): Look in glib-2.0/include for
2973 2000-08-07 Tor Lillqvist <tml@iki.fi>
2975 * tests/gio-test.c (shutdown_source): New function, that calls
2976 g_source_remove(). Check return value of g_source_remove(), and
2977 decrement running subprocess counter only if g_source_remove()
2978 actually did remove the source.
2980 (recv_message): Call shutdown_source() on EOF condition. Return
2981 FALSE on G_IO_HUP and G_IO_ERR condition. Fix printf format typo.
2983 Sun Aug 6 20:06:02 2000 Tim Janik <timj@gtk.org>
2985 * gmessages.c (g_log_domain_check_free): keep *last updated while
2986 running through the domain list, so we don't screw up the removal,
2987 patch provided by Gady Kozma <gadykozma@hotmail.com>.
2989 Sun Aug 6 20:03:41 2000 Tim Janik <timj@gtk.org>
2991 * gmessages.c (g_log_remove_handler): keep *last updated while running
2992 through the handler list, so we don't screw up the removal.
2994 Sun Jul 30 16:54:13 2000 Owen Taylor <otaylor@redhat.com>
2996 * gunicode.h: Fix stray character
2998 * gutf8.c (g_unichar_to_utf8): Allow outbuf to be NULL, in
2999 which case we just compute the length.
3001 2000-07-31 Havoc Pennington <hp@redhat.com>
3003 * Makefile.am (EXTRA_DIST): forgot to add .pc.in to EXTRA_DIST
3005 2000-07-31 Havoc Pennington <hp@redhat.com>
3007 * glib-2.0.pc.in, gobject-2.0.pc.in, gmodule-2.0.pc.in,
3008 gobject-2.0.pc.in: pkg-config data files
3010 * Makefile.am: Install/dist the .pc files
3012 * configure.in: Output the .pc files
3014 2000-07-31 Tor Lillqvist <tml@iki.fi>
3016 * giowin32.c (buffer_read): The code didn't compile (must
3017 have been sleepy when committing). "return" instead of "break"
3019 (g_io_win32_fd_add_watch): Cannot check if the file descriptor is
3020 readable by calling ReadFile to read zero bytes. ReadFile blocks
3021 on NT even if trying to read nothing at all. So, don't check if
3022 file descriptor is readable; assume this function isn't called
3025 Sun Jul 30 10:44:16 2000 Tim Janik <timj@gtk.org>
3027 * gmain.c (g_get_current_time): fix tor's recent changes which
3028 got rid of a required variable in the non-windows path.
3030 2000-07-30 Tor Lillqvist <tml@iki.fi>
3032 Finally, a new and improved IO Channel and condition watch
3033 implementation for Win32. Based on code provided by Craig Setera.
3035 When watching file descriptors, for which there is no select()
3036 like functionality on Win32 that would work on all Win32 platforms
3037 for all types of file descriptors (including anonymous pipes), we
3038 start a new thread that blocks while trying to read from the file
3039 descriptor. When the read returns, a Win32 Event is signalled that
3040 the polling routine eventually notices. Meanwhile, the data being
3041 read is stored in a circular buffer, from where the IO channel's
3042 read() method picks it up.
3044 If the buffer fills up the reading thread has to wait for space
3045 becoming available. For this another Win32 Event is used. The IO
3046 Channel's read() method signals this when it has read some data
3049 The separate reader thread(s), and the circular buffer(s) with
3050 associated events mean lots of possibilities for fun parallelism
3051 errors. But it seems to work OK, i.e. GIMP runs.
3053 * gmain.c: Small changes to the Win32 polling function.
3054 (g_main_win32_get_poll_func): New function. Perhaps it would be a
3055 good idea to provide this on all platforms.
3057 * giowin32.c: The bulk of the new implementation.
3058 (g_io_channel_win32_wait_for_condition): New function. To be used
3059 where on Unix one does a select() on the channel's fd, like
3060 libgimp's gimp_extension_process(). Could be provided on all
3063 * glib.h: Update documentation for IO Channels on Win32. Remove
3064 the declarations for the as of now obsolete old functions related
3065 to IO Channels for pipes with "wakeup" messages.
3067 * glib.def: Some new functions.
3069 * tests/gio-test.c: New file, to test GIOChannel and main loop.
3072 * tests/makefile.mingw.in: Add it.
3074 (Later the same night:)
3076 * giowin32.c: Compile in the debugging code all the time, but only
3077 output debug messages if told so. Add (unadvertised) function to
3078 turn on/off debug messages for a channel.
3080 (buffer_read): Don't loop. It is expected behaviour to return a
3081 short read occasionally, for instance when reading from
3082 pipes. It's the calling code that should loop if it *knows* how
3083 much the writer has written.
3085 * tests/gio-test.c: Correct the program's name in the output.
3086 (recv_message): Loop calling g_io_channel_read() (in a new
3087 function read_all()) until we have all the bytes we want (that we
3088 know the writer has written/will write).
3090 Thu Jul 27 05:15:11 2000 Tim Janik <timj@gtk.org>
3092 * gstrfuncs.c (g_strlcpy, g_strlcat): completed tor's fix
3093 to cover both #ifdef branches.
3095 2000-07-26 Tor Lillqvist <tml@iki.fi>
3097 * gstrfuncs.c (g_strlcpy, g_strlcat): Return 0 on error, not NULL.
3099 * glib.def: Add g_strlcpy, g_strlcat.
3101 * glibconfig.h.win32.in: Add gsize and gssize.
3103 Wed Jul 26 12:59:31 2000 Tim Janik <timj@gtk.org>
3105 * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
3106 updates the license headers to the GNU Lesser General Public License,
3107 as well as updating the copyright year to 2000.
3109 Wed Jul 26 05:47:48 2000 Tim Janik <timj@gtk.org>
3114 * glib.h: added g_strlcat() and g_strlcpy() wrappers, supplied by
3115 David Wheeler <dwheeler@ida.org>:
3117 * glib.h, gstrfuncs.c: added g_strlcpy and g_strlcat to support
3118 safe manipulation of fixed-length string buffers.
3119 These functions were originally developed by Todd Miller to simplify
3120 development of security-related programs, and
3121 are available on many (but not all) Unix-like systems,
3122 including OpenBSD, FreeBSD, and Solaris. See
3123 ftp://ftp.openbsd.org/pub/OpenBSD/src/lib/libc/string/strlcpy.3
3124 and http://www.openbsd.org/security.html.
3125 If there's a strlcpy/strlcat on the system, it's called, otherwise
3126 an implementation is provided.
3128 * testglib.c: Added tests for g_strlcpy, g_strlcat.
3130 Wed Jul 26 05:03:24 2000 Tim Janik <timj@gtk.org>
3132 * acglib.m4 (GLIB_SIZEOF): include <stdlib.h> and <stddef.h> if
3133 STDC_HEADERS is defined.
3136 * glibconfig.h: define gsize and gssize in terms of GLIB_SIZEOF_SIZE_T
3138 * glib.h (g_return_if_reached): applied darin's fix for copy'n
3139 paste error in the macro implementation.
3141 Wed Jul 26 00:46:03 2000 Tim Janik <timj@gtk.org>
3143 * glib.h: applied patch from Darin Adler <darin@eazel.com> which
3144 supplies g_return_if_reached(), g_return_val_if_reached() and
3147 2000-07-22 Tor Lillqvist <tml@iki.fi>
3149 * build-dll: Fix resource handling, the resource file got left out
3150 from the DLL after all... Remove the WIN32APIHEADERS, not needed
3151 with current windres.
3153 * glib.def: Add new functions.
3155 2000-07-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3157 * gutils.c, glib.h: Mark the functions g_basename and g_dirname
3158 deprecated. They will issue an warning once, when compiled with
3159 G_ENABLE_DEBUG, but continue to work as before. Instead the
3160 functions g_path_get_basename and g_path_get_dirname should be
3161 used, which BOTH return newly allocated memory, that has to freed
3162 by g_free. The new g_path_get_basename now strips trailing slashes
3163 from the path. This fixes #5097. For discussion see
3164 http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
3166 * gwin32.c, testglib.c, tests/dirname-test.c: Use the new
3167 functions instead of the old ones.
3169 * ghash.c, gscanner.c, glib.h: Mark the functions
3170 g_hash_table_freeze, g_hash_table_thaw and thus
3171 g_scanner_freeze_symbol_table and g_scanner_thaw_symbol_table
3172 deprecated. They will issue an warning once, when compiled with
3173 G_ENABLE_DEBUG. This fixes Bug #3883. For discussion see
3174 http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
3176 2000-07-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3178 * configure.in, glib.h: glibconfig.h and glib.h now include files
3179 outside of the extern "C" block. Makes some C++ compiler
3180 happy. Reported by Denis Vakatov <vakatov@peony.nlm.nih.gov>.
3182 Sat Jul 15 23:49:03 2000 Owen Taylor <otaylor@redhat.com>
3184 * glib/glib.texi: Remove incomplete start of info file -
3185 real docs are in RDP.
3187 Sat Jul 15 22:44:22 2000 Owen Taylor <otaylor@redhat.com>
3189 * configure.in: Add build/Makefile and
3190 build/win32/Makefile to AC_OUTPUT() so things build
3193 Sat Jul 15 09:11:46 2000 Tim Janik <timj@gtk.org>
3195 * gstrfuncs.c (g_strncasecmp): fixed an off by 0 error (yeah,
3196 the function went off when the while (n--) loop failed due to
3197 n==0 ;), reported by Jean-Louis HAMEL <jlhamel@club-internet.fr>.
3199 2000-07-15 Tor Lillqvist <tml@iki.fi>
3201 * Makefile.am (SUBDIRS): Include the "build" module in GLib, too,
3202 to make it more self-contained. If your CVS client doesn't
3203 automatically get it, do a cvs get build in glib.
3205 * */makefile.mingw.in: Include make.mingw from build in the glib
3208 Fri Jul 14 16:26:35 2000 Owen Taylor <otaylor@redhat.com>
3212 Fri Jul 14 12:22:49 2000 Owen Taylor <otaylor@redhat.com>
3214 * configure.in Makefile.am glib-config.m4 glib.m4: Move
3215 glib-config to glib-config-2.0 move glib.m4 to
3218 * Makefile.am gobject/Makefile.am gmodule/Makefile.am
3219 gthread/Makefile.am tests/Makefile.am: Change
3220 library names to libglib-1.3.la, etc, so that we
3221 can distinguish glib-1.2 and glib-2.0 on the linkline.
3223 * Makefile.am gobject/Makefile.am gmodule/Makefile.am:
3224 Move include files into /usr/include/glib-2.0.
3226 Thu Jul 6 18:54:49 2000 Owen Taylor <otaylor@redhat.com>
3228 * docs/Makefile.am (EXTRA_DIST): Remove info files
3231 2000-07-14 Tor Lillqvist <tml@iki.fi>
3233 * glib.def: Add g_error functions.
3235 * makefile.mingw.in: Add gbacktrace.o.
3237 * gbacktrace.c: No need to include <process.h>.
3239 2000-07-12 Havoc Pennington <hp@redhat.com>
3241 * glib.h: #include <gerror.h>
3243 * Makefile.am (include_HEADERS): Add gerror.h
3244 (libglib_la_SOURCES): Add gbacktrace.c
3246 * gbacktrace.c: Move g_on_error_query() in here (moved on the
3247 server, so history is preserved)
3249 * gerror.h: GError interface
3251 * gerror.c: GError implementation replaces stuff that's now in
3254 Sun Jul 9 21:20:45 2000 Owen Taylor <otaylor@redhat.com>
3256 * gunicode.h: Include stddef.h instead of stdlib.h
3258 2000-07-08 Tor Lillqvist <tml@iki.fi>
3260 * glib.h (GLIB_VAR): Rename the GUTILS_C_VAR macro to GLIB_VAR.
3262 * gunicode.h: Mark the g_utf8_skip array with GLIB_VAR.
3264 * glib.def: Add two missing entry points.
3266 Thu Jul 6 15:35:28 2000 Owen Taylor <otaylor@redhat.com>
3270 * Makefile.am (EXTRA_DIST): Dist fixes.
3272 * configure.in: Moderate the warnings just a little bit.
3274 2000-07-05 Tor Lillqvist <tml@iki.fi>
3276 * README.win32: Update.
3278 Mon Jul 3 17:58:02 2000 Owen Taylor <otaylor@redhat.com>
3280 * gutf8.c (g_utf8_get_charset_internal): Fix up
3281 to correspond to configure.in checks.
3283 Mon Jul 3 17:18:19 2000 Owen Taylor <otaylor@redhat.com>
3285 * glib.h: Comment g_get_codeset() out of the header file
3286 temporarily. (Very similar to g_get_charset(), need
3287 to resolve the two.)
3289 2000-07-01 Tor Lillqvist <tml@iki.fi>
3291 * glib.def: Add new entry points.
3293 * makefile.{mingw,msc}.in: Add the new Unicode object files.
3295 Thu Jun 29 15:57:28 2000 Owen Taylor <otaylor@redhat.com>
3299 * Makefile.am: added snapcheck target to go along with snapshot
3301 * gstring.c glib.h (g_string_hash): Add g_string_hash to
3302 go along with g_string_equal.
3304 Tue Jun 27 12:40:23 EDT 2000 David A. Wheeler <dwheeler@dwheeler.com>
3306 * glib.h: Added g_string_equal for comparing GStrings;
3307 changed g_str_equal so it returns gboolean (instead of gint).
3309 * gstring.c: Modified GString implementation to support embedded
3310 ASCII NUL ('\0') characters, and implemented g_string_equal.
3312 * testglib.c tests/string-test.c: Added tests for g_string_equal
3313 and tests for proper handling of embedded ASCII NUL characters.
3315 Wed Jun 28 22:52:00 2000 Owen Taylor <otaylor@redhat.com>
3317 * Makefile.am (libglib_la_SOURCES): Fix
3318 gunichartable.h => gunichartables.h. (From Eric Limings)
3320 Fri Jun 23 17:20:26 2000 Tim Janik <timj@gtk.org>
3322 * glib.h: define gstring in terms of gchar*. this typedef reflects
3323 the type name of the primitive G_TYPE_STRING in the gobject module.
3325 Wed Jun 21 12:09:03 2000 Owen Taylor <otaylor@redhat.com>
3327 * gunicode.h gutf8.c guniprop.c gunidecomp.[ch] gunichartables.h
3328 Makefile.am glib.h: Initial pass at adding unicode support
3329 functions. A few things still need to be implemented, a bit
3330 of cleanup needs to be done, tests need to be added, and
3331 the docs need to be finished, but this should allow replacing
3332 most or all use of libunicode.
3334 2000-06-06 Tor Lillqvist <tml@iki.fi>
3336 * giowin32.c (g_io_channel_win32_pipe_readable): If we are
3337 watching the same pipe for different conditions (with different
3338 callbacks), check them all. Only call the callback for G_IO_IN
3339 from here. (This bug popped up when a watch for G_IO_ERR|G_IO_HUP
3340 was added to gimplib.)
3342 2000-05-30 Tor Lillqvist <tml@iki.fi>
3344 * gutils.c (g_locale_get_codeset): Implement on Win32.
3346 * glib.def: Add g_get_codeset.
3348 * tests/Makefile.am (EXTRA_DIST): makefile.cygwin* has been
3349 renamed to makefile.mingw*.
3351 Tue May 30 16:01:32 2000 Owen Taylor <otaylor@redhat.com>
3353 * glib.h gutils.c: Move the g_locale_get_codeset() up in the
3354 header file to correspond to to comments about memory
3355 management. Rename to g_get_codeset() to avoid
3356 polluting the g_locale_* namespace, which probably
3357 would have g_locale_get_codeset (GLocale *locale).
3360 Mon May 29 14:10:35 2000 Owen Taylor <otaylor@redhat.com>
3362 * gutils.c (g_locale_get_codeset): Add function to get the
3363 codeset name for the current locale.
3365 * configure.in acconfig.h: Add check for nl_langinfo(CODESET);
3367 Fri May 19 11:39:29 2000 Tim Janik <timj@gtk.org>
3369 * gutils.c (g_snprintf):
3370 (g_vsnprintf): added argument assertments.
3372 * gstring.c (g_string_assign): added argument assertments.
3373 (g_string_truncate): make len a guint.
3375 Fri May 19 09:00:44 2000 Tim Janik <timj@gtk.org>
3377 * gmem.c (g_free): fixed SIZEOF_LONG==4 assumption with
3378 ENABLE_MEM_CHECK, from Art Haas <ahaas@neosoft.com>.
3380 * gslist.c (g_slist_reverse): shut up compiler.
3382 * gscanner.c (g_scanner_get_token_ll): removed inline assignment.
3384 * garray.c: remove index>=0 checks for unsigned indices.
3386 * gmain.c (g_idle_prepare): timeout assignment fix.
3388 * gtree.c (g_tree_node_rotate_right): shut up compiler.
3390 2000-05-13 Tor Lillqvist <tml@iki.fi>
3393 * tests/makefile.mingw.in
3394 * build-dll: Rename makefile.cygwin(.in) to
3395 makefile.mingw(.in), which better describes what it is. Move the
3396 build of gmodule, gthread and gobject DLLs to makefiles in those
3397 directories. Move resource file handling and build number bump to
3398 build-dll, where it sits much cleaner.
3401 * Makefile.am (EXTRA_DIST): Update accordingly.
3403 * glib.h: Add G_PI, G_PI_2, G_PI_4, G_E, G_LN2, G_LN10 and
3404 G_SQRT2. M_PI etc aren't necessarily in <math.h> in strict ISO C
3407 * glib.def: Add g_strcanon.
3409 * gtree.c (g_tree_node_rotate_left): Remove unused variables.
3411 * gwin32.c (g_win32_opendir): Remove unneeded statement.
3413 Thu May 4 02:04:46 2000 Tim Janik <timj@gtk.org>
3415 * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
3416 broken and require an empty arg, give it to them.
3418 Fri Apr 28 23:54:35 2000 Tim Janik <timj@gtk.org>
3420 * setup things for a new sub-library libgobject:
3422 * Makefile.am (SUBDIRS): added gobject
3424 * glib-config.in: feature -lgobject.
3426 * configure.in (AC_OUTPUT): generate gobject/Makefile.
3428 * glib.m4 (AM_PATH_GLIB): feature gobject module.
3430 * glib.spec.in: added %{prefix}/lib/libgobject-1.3.so.*
3432 Fri Apr 28 21:41:49 2000 Tim Janik <timj@gtk.org>
3434 * glib.h: added G_STRLOC macro.
3435 G_STRUCT_OFFSET(): signedness corrections.
3436 (G_CSET_DIGITS): list 0-9.
3437 * gscanner.c (g_scanner_config_template): use G_CSET_DIGITS.
3443 (g_strreverse): return the modified string instead of void, so
3444 calls to these functions can be nested.
3445 (g_strcanon): new function, canonicalizes string according to
3446 a given character set.
3448 Fri Apr 28 19:45:16 2000 Tim Janik <timj@gtk.org>
3450 * gasyncqueue.c (g_async_queue_unref): get rid of an unused variable.
3452 Wed May 10 19:52:44 2000 Owen Taylor <otaylor@redhat.com>
3454 * glib.m4: Print found version when test succeeds.
3456 2000-05-04 Tor Lillqvist <tml@iki.fi>
3458 * makefile.cygwin.in
3459 * tests/makefile.cygwin.in: Include the common makefile snippet
3460 from ../build/win32.
3462 Maybe CVSROOT/modules should be changed so that the 'build' module
3463 is included within the glib module (and gtk+, and gimp, and maybe
3464 others later), in the same way as the 'macros' module is included
3465 in lots of GNOME CVS modules?
3467 2000-05-02 Tor Lillqvist <tml@iki.fi>
3469 * glib.def: Add new functions.
3471 * makefile.{cygwin,msc}.in (glib_OBJECTS): Add new object files.
3473 * tests/makefile.{cygwin,msc}.in: Add threadpool-test.
3475 2000-04-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3477 * gasyncqueue.c: New File implementing an asynchronous queue to be
3478 used for asynchronous inter-thread communication.
3480 * gthreadpool.c: New File implementing a thread pool to be used
3481 for distributing work among several threads.
3483 * glib.h: Added the type and function declarations for these two
3486 * tests/threadpool-test.c: New File implementing a test for the
3487 thread pool. This also checks the asynchronous queue underlying
3490 * tests/Makefile.am: Changed accordingly.
3492 2000-04-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3494 * configure.in: Look for both pthread_create and pthread_join in
3495 the thread library. Some systems define one of them, but not both
3496 in libc. Arghh. Now we really start a thread and join it later and
3497 check, whether the thread to actually ran.
3499 * glib.h, gcache.c, gtree.c: Changed the 'value' parameter of
3500 g_cache_remove from gpointer to gconstpointer. Dito for the 'key'
3501 parameter of g_tree_lookup and g_tree_remove and the 'data'
3502 parameter of g_tree_search. This function now takes a function of
3503 type GCompareFunc instead of GSearchFunc. This fixes Bug
3504 #8267. Thanks to Juan Toledo <toledo@users.sourceforge.net> for
3507 * glib.h: Removed declaration of GSearchFunc.
3509 * gmem.c: s/GSearchFunc/GCompareFunc/.
3511 2000-04-19 Tor Lillqvist <tml@iki.fi>
3513 * glib.def: Update entry point list.
3515 2000-04-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3517 * glib.h (G_TRYLOCK): Made the debugging G_TRYLOCK call also work
3518 for compilers with funny G_STMT_(START|END) macros.
3520 * tests/thread-test.c: Implemented a check for that.
3522 * gutils.c (g_getenv): Changed the win32 part of this function to
3523 be thread safe and to make the returned environment string
3524 persistent to match the UN*X behavior. This is again a response to
3527 * glib.h (G_LOCK_NAME): Removed parentheses around the lock name,
3528 as that seems to cause problems for some compilers and really
3531 Wed Apr 19 08:32:32 2000 Tim Janik <timj@gtk.org>
3533 * gscanner.c (g_scanner_new): make sure that
3534 scanner->config->cset_skip_characters is "" instead of NULL, so we
3535 don't segfault further on.
3537 2000-04-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3539 * glib.h, glist.h, gslist.h: Changed the 'data' parameters from
3540 gpointer to gconstpointer for the functions
3541 g_(list|slist)_(remove|find|find_custom|index), as they do not
3542 change this parameter. This fixes bug #4836.
3544 * glib.h: Changed comment for g_getenv to reflect, that the
3545 returned memory must not be freed. Fixes bug #8983.
3547 2000-04-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3549 * configure.in, acconfig.h: Add configure test for garbage
3550 collector friendliness for GLib. If enabled, ENABLE_GC_FRIENDLY
3553 * garray.c, ghash.c, glist.c, gmain.c, gmem.c, gnode.c, gqueue.c,
3554 gslist.c, gtree.c: If ENABLE_GC_FRIENDLY is defined, NULLify all
3555 memory released by the user, but cached by GLib. This lets a
3556 garbage collector have a more correct view of the actually used
3559 * garray.c, glib.h: Added g_(array|ptr_array|byte_array)_sized_new
3560 functions, that reserve a certain amount of memeory for the array
3561 at creation time to avoid reallocation. Fixes bug #6707 from
3562 Charles Kerr <ckerr@osserver1.nssl.noaa.gov>.
3564 * glib.h, gqueue.c, tests/queue-test.c (main): Renamed
3565 g_queue_create to g_queue_new in conformance to all other GLib
3568 2000-04-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3570 * grand.c (g_rand_new): Fixed bug. Thanks to Marko Kreen
3571 <marko@l-t.ee> for reporting that.
3573 2000-03-26 Tor Lillqvist <tml@iki.fi>
3575 * README.win32: Tell about using the mingw-based gcc, which is
3576 much easier than modifying the cygwin gcc to product mingw code
3577 for the msvcrt runtime.
3579 * makefile.cygwin.in (WIN32APIHEADERS): Kludge to make it work
3580 with a "pure" mingw gcc, too.
3582 2000-03-24 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3584 * garray.c: Made GArray behave correctly. Now zero_terminated
3585 really means, that the element array->data[array->len] exists and
3586 is zeroed, and clear means that any unassigned elements obtained
3587 through g_array_set_size (the only way to get unassigned elements
3588 AFAICT) are zeroed. Added some macros to make the code more
3589 obvoius. Also made GPtrArray zero elements after
3590 g_ptr_array_set_size. This is done in a portbale way (assignment
3591 of NULL instead of just memsetting it to zero), though that might
3592 be more portability than we actually want.
3594 * Makefile.am, gthread/Makefile.am, gmodule/Makefile.am,
3595 tests/Makefile.am: Added various win32 related *.in files to
3596 EXTRA_DIST to let 'make distcheck' procude all the corresponding
3597 files, which it silently fails to do currently.
3599 2000-03-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3601 * configure.in: After finding the right thread library (containing
3602 e.g. pthread_create) we now search for the right realtime library
3603 (containing e.g. sched_get_priority_max). Makes the output of the
3604 thread related libraries correct.
3606 * gtimer.c (g_usleep): The current implementation of g_usleep
3607 (simply calling select) doesn't work reliable for multi-threaded
3608 programs on some platforms (bad omen for the main loop....), so I
3609 changed the implementation for thread-using programs to wait for a
3610 GCond for the specified amount of time (NB: sleep and usleep are
3611 not MT-safe in general, because they often use signals).
3613 Wed Mar 22 16:49:57 2000 Owen Taylor <otaylor@redhat.com>
3615 * gmem.c (g_mem_chunk_area_compare): Fix indentation.
3617 2000-03-22 Elliot Lee <sopwith@redhat.com>
3619 * gmem.c (g_mem_chunk_area_compare): Fix 64-bitness bug in
3620 comparing two pointers more than 4G apart.
3622 2000-03-22 Tor Lillqvist <tml@iki.fi>
3624 * gutils.c: Move Win32-only includes after inclusion of glib.h, so
3625 that G_OS_WIN32 is defined.
3627 * glibconfig.h.win32.in: Add GSystemThread.
3629 2000-03-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3631 * gutils.c (g_get_current_dir): Ok, Marcus Brinkmann
3632 <Marcus.Brinkmann@ruhr-uni-bochum.de> convinced me, that 128 KB
3633 path length might not be enough for the HURD. So I changed the
3634 loop to at least avoid an integer overflow, which could happen at
3637 * configure.in: Test for sched_yield as the native yield function
3638 first. Corrected typo g_thread_sleep -> g_usleep. Corrected
3639 message for the pthread_create test. Negative Priorities are
3640 allowed (and used on Solaris), so consider
3641 sched_get_priority_min failed only if it returns -1, not <0. Check
3642 for sched_get_priority_min also in -lrt, if not found in -lpthread
3643 alone and add -lrt to G_THREAD_LIBS then. Remove special case
3644 handling of priorities for older solaris versions and posix
3645 threads. Thanks to Wan-Teh Chang <wtc@netscape.com> for suggesting
3646 some of those changes.
3648 * config.guess, config.sub, ltconfig, ltmain.sh:
3649 Upgrade to libtool 1.3.4.
3651 2000-03-21 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3653 * glib.h, configure.in, gutils.h: always define G_GNUC_EXTENSION,
3654 even when not needed by GLib. That's actually also the way, the
3655 GLib reference manual describes that macro. Therefore I had to
3656 remove the lonesome #include <glibconfig.h> in gutils.c, which
3657 doesn't seem to be needed there however. This change should make
3658 Ben Gertzfield <che@debian.org> happy.
3660 * gutils.c: Furthermore two warnings in gutils.c were voided,
3661 which crept in due to my last change.
3663 * gutils.c (g_get_current_dir): Allocate only up to 128KB for a
3664 pathname. While this is an arbitrary value just like 2048, it
3665 seems to be enough (after all, even 4GB is an arbitrary value).
3667 2000-03-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3669 * gmain.c (g_main_poll): Warn in case of an error during the call
3670 to poll(2). Closes Bug#7564 as reported by David Helder
3671 <dhelder@umich.edu>.
3673 * gutils.c (g_get_current_dir): Make g_get_current_dir work on
3674 systems with unlimited pathname length like the HURD (It worked
3675 there before, but only for pathes shorter than 2048). Closes
3676 Bug#4525 as reported by Marcus Brinkmann
3677 <Marcus.Brinkmann@ruhr-uni-bochum.de>.
3679 2000-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3681 * giounix.c (g_io_unix_write, g_io_unix_read): Interpret EINTR as
3684 2000-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3686 * configure.in: Added the missing POSIX_NO_YIELD and
3687 POSIX_NO_PRIORITIES warning messages.
3689 * configure.in: Use AC_TRY_RUN instead of AC_TRY_LINK, to test for
3690 real thread support. On solaris pthread_create can be linked to
3691 even in -lc, but it doesn't work then.
3693 * configure.in: Don't use priorities for threads, when the
3694 minimal/maximal priorities couldn't be determined at configure
3697 * configure.in, gthread.c: Always define GSystemThread in
3698 glibconfig.h to represent a system thread.
3700 * configure.in: Do not use native recursive threads, when
3701 possibe. We use some features, that they do not expose (namely the
3704 * glib.h, gthread.c: Redefined GStaticRecMutex. The functions are
3705 now implemented in a different way, which should be way
3706 faster. Alsothere are now functions g_static_rec_mutex_unlock_full
3707 and g_static_rec_mutex_lock_full to leave/enter a recursive mutex
3710 * gthread.c (g_thread_self): Do not test the system_thread to be
3711 non-zero to speed things up.
3713 * gthread.c (g_mutex_init): Therefore set the system_thread of the
3716 * tests/thread-test.c: Rerun all tests once again, but this time
3717 we fool the system into thinking, that the available thread system
3718 is not native, but userprovided.
3720 2000-03-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3722 * gqueue.c (g_queue_push_tail_link, g_queue_push_head_link): We
3723 want the next and prev pointer of the inserted link to be NULL.
3725 2000-03-06 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3727 * configure.in: Another small change to the pthread_.. search
3728 pattern. Should work *now* for AIX.
3730 2000-03-04 Tor Lillqvist <tml@iki.fi>
3732 * gwin32.c (g_win32_error_message): New function that returns the
3733 message string for a Win32 error code.
3735 * glib.h: Declare it.
3737 * glib.def: Export it, plus g_node_copy.
3739 2000-03-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3741 * configure.in: Make the search for pthread_attr_... prototypes
3742 find names at the start of a line also, like it is on AIX. Thanks
3743 to Valdis Kletnieks <Valdis.Kletnieks@vt.edu> for the info.
3745 Wed Mar 1 10:39:39 2000 Tim Janik <timj@gtk.org>
3747 * gslist.c (g_slist_reverse): minor optimization.
3749 * testglib.c (g_node_test): added a couple of tests for
3753 * gnode.c (g_node_copy): new function to copy subtrees,
3754 supplied by dbsears@ix.netcom.com.
3755 changed iterator to walk the children list backwards, so
3756 we get down from O(n^2) to O(n).
3758 * gnode.c (g_node_first_sibling): applied patch from
3759 dbsears@ix.netcom.com to optimize access if node->parent
3762 * gutils.c (g_get_any_init): backed out HAVE_PW_GECOS check around
3763 assignment of g_real_name, sicne HAVE_PW_GECOS is never defined and
3764 thus breaks the original code.
3766 * merged changes from 1.2.7.
3768 Fri Jan 28 11:37:41 2000 Owen Taylor <otaylor@redhat.com>
3770 Bug #4156 - Changes vaguely modelled after Scott Gifford's patch
3772 * gtimer.c (g_timer_elapsed): Never report negative times -
3775 * gmain.c (g_timeout_prepare): Guard against unexpected
3776 clock shifts by never setting a timeout of more than
3777 data->interval msecs.
3779 2000-02-27 Tor Lillqvist <tml@iki.fi>
3781 * glib.def: Add new functions.
3783 2000-02-23 Tor Lillqvist <tml@iki.fi>
3785 * README.win32: Add a missing step to the setup instructions for
3786 gcc-2.95.2. Thanks to Arnaud Charlet.
3788 * glib.def: Add missing entry point.
3790 2000-02-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3792 * configure.in: Changed GCC version test to also accept major
3793 versions > 2. Thanks to Ben Gertzfield <che@debian.org> for
3796 Thu Feb 17 12:53:44 2000 Tim Janik <timj@gtk.org>
3798 * gstring.c: changed g_str_hash() to a 31 bit version based on
3799 a submission by Karl Nelson and hand optimized ad absurdum by
3802 * gstring.c: applied patch from havoc for new gstring functions,
3803 added some more sanity checks, coding style fixups.
3805 2000-02-13 Havoc Pennington <hp@pobox.com>
3807 * tests/string-test.c (main): Add tests for the new GString
3810 * testglib.c (main): Add tests for the new GString features
3812 * gstring.c (g_string_insert_len): New function; insert
3813 a given length of string at a given position.
3814 (g_string_append): reimplement in terms of g_string_insert_len
3815 (g_string_append_len): new function
3816 (g_string_insert_c): accept -1 for "pos" arg to mean "append"
3817 (g_string_append_c): reimplement in terms of g_string_insert_c
3818 (g_string_prepend): reimplement in terms of g_string_insert_len
3819 (g_string_prepend_len): new function
3820 (g_string_prepend_c): reimplement in terms of g_string_insert_c
3821 (g_string_insert): reimplement in terms of g_string_insert_len
3823 * glib.h: Declare g_string_insert_len, g_string_append_len,
3824 g_string_prepend_len
3826 Sun Feb 13 08:16:47 2000 Tim Janik <timj@gtk.org>
3828 * configure.in: wtf??? someone destroyed the configure.in, reverting to
3829 an older version from Feb 4 which apears to still work.
3831 2000-02-07 Tor Lillqvist <tml@iki.fi>
3833 * gmodule.rc.in gthread.rc.in: Move to corresponding subdirectories.
3836 * gmodule/Makefile.am
3837 * gthread/Makefile.am: Change accordingly.
3839 * makefile.cygwin: Corresponding changes, some cleanup.
3841 2000-02-05 Tor Lillqvist <tml@iki.fi>
3843 * glib.rc.in gmodule.rc.in gthread.rc.in: New files, for putting
3844 version info in the DLLs on Win32.
3846 * Makefile.am: Generate corresponding *.rc files and distribute
3849 * makefile.cygwin.in: Add rules to automatically bump a "build
3850 number" in the version info in the rc files each time the DLL is
3851 built. But do this only for the person who releases binaries. If
3852 others build the DLLs, the build number is set to zero.
3854 Fri Feb 4 19:36:05 2000 Tim Janik <timj@gtk.org>
3857 * gdataset.c: return stolen data from g_datalist_id_remove_no_notify()
3858 and g_dataset_id_remove_no_notify() to avoid second lookup for common
3861 2000-02-01 Tor Lillqvist <tml@iki.fi>
3864 * gstrfuncs.c (g_filename_to_utf8, g_filename_from_utf8): New
3865 functions for conversion between UTF-8 and the encoding expected
3866 by C runtime functions like open() and stat(), and returned by
3869 Implement them on Win32 where we use the system "ANSI" codepage,
3870 which might be single-byte or double-byte. On Unix, just skip the
3871 issue for now and provide dummy implementations that return a copy
3876 * glib.def: Minor updates.
3878 Wed Jan 26 05:24:38 2000 Tim Janik <timj@gtk.org>
3881 * gmain.c: s/current_time/dispatch_time/ for the dispatch() handlers.
3882 refetch the current time after invocation of poll() to cover up for
3883 the time spent in that function call.
3885 Fri Jan 21 10:18:24 2000 Owen Taylor <otaylor@redhat.com>
3887 * glib.h (G_N_ELEMENTS): Added G_N_ELEMENTS macro to determine
3888 the number of elements in an array.
3890 Sun Jan 9 13:28:36 2000 Tim Janik <timj@gtk.org>
3892 * gstrfuncs.c (g_strtod): correctly fetch the current locale,
3895 1999-12-16 Tor Lillqvist <tml@iki.fi>
3897 * gmodule/gmodule-win32.c: Use FormatMessage to translate system
3898 error codes into textual messages.
3900 1999-11-25 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3902 * glib.h (G_TRYLOCK): This of course should return TRUE in a
3903 program with a thread-disabled GLib.
3905 1999-11-18 Tor Lillqvist <tml@iki.fi>
3907 * glib.def: g_strjoin was missing.
3909 1999-11-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3911 * acconfig.h, config.h.win32.in, configure.in: Renamed
3912 GLIB_SIZEOF_PTHREAD_T to GLIB_SIZEOF_SYSTEM_THREAD to reflect
3915 * configure.in: Cope with systems, that have a pthread_t type,
3916 that is not a pointer. Hint from Karl Nelson
3917 <kenelson@ece.ucdavis.edu>. Define GLIB_SIZEOF_SYSTEM_THREAD to 4
3918 for Solaris. Cope with systems, that have no default mutex
3919 initialize, like obviously most DCE systems.
3921 * glib.h, gthread.c: Changed the prototype of thread_create and
3922 thread_self to return the system thread into provided memory
3923 instead of a return value. This is necessary, as HPUX has a
3924 pthread_t, that is bigger than the biggest integral type there.
3926 * gthread.c: system_thread is no longer a pointer, but an memory
3927 area of size GLIB_SIZEOF_SYSTEM_THREAD. Changed the
3928 zeroinitialization and the tests for zeroness accordingly.
3930 1999-11-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3932 * configure.in: Create docs/glib-config.1 from
3933 docs/glib-config.1.in. Makes 'make distcheck' happy (and me too).
3935 * glib-config.1: Removed from CVS, as it is a generated file.
3937 1999-11-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3939 * configure.in: Make the test for getpwuid_r work on newer AIX
3940 versions, too. Still works on Solaris and Linux. Patch from Craig
3941 Rodrigues <rodrigc@mediaone.net>.
3943 1999-11-08 Tor Lillqvist <tml@iki.fi>
3945 * gwin32.c (g_win32_getlocale): Look at env vars LC_ALL, LC_CTYPE
3946 and LANG first. Some refinements to the sublanguage logic.
3948 1999-11-04 Tor Lillqvist <tml@iki.fi>
3950 * makefile.{cygwin,msc}.in: Add gwin32 object. Add rule to make .i
3951 (preprocessed source) files.
3953 1999-11-01 Tor Lillqvist <tml@iki.fi>
3956 * glib.def: Rename Win32-only functions from gwin_* to g_win32_*
3957 to match the GLib naming conventions.
3962 * Makefile.am: Move the Win32-only functions to the new
3965 1999-10-31 Tor Lillqvist <tml@iki.fi>
3967 * gutils.c (gwin_getlocale): New Win32-specific function, returns
3968 a Unixish current locale string (en, zh_TW etc).
3970 * glib.h: Declare it.
3972 * glib.def: Export it.
3974 * testglib.c: Test it.
3976 * gmessages.c (Win32: ensure_stdout_valid): Some improvements,
3977 make sure we don't call AllocConsole several times, which I think
3980 Sun Oct 31 18:55:01 1999 ape@spacetec.no (Asbjorn Pettersen)
3982 * gcache.c (g_cache_remove): Test if node is NULL.
3983 If not tested, GIMP's script-fu will crash.
3985 Sun Oct 17 18:11:40 1999 Tim Janik <timj@gtk.org>
3987 * gdataset.c (g_data_set_internal): remove g_dataset_global_lock around
3988 destroy() notification here as well.
3990 1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
3992 * gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
3993 is called recursivly. Reported by Ola Andersson <rand@ling.umu.se>.
3995 Tue Oct 12 14:17:12 1999 Tim Janik <timj@gtk.org>
3997 * glib.h: removed useless g_string(x) macro that cluttered the namespace
3998 and was just a poor wrapper around the cpp '#' symbol, use #x if you
3999 need to work around this.
4000 added new macro G_STRINGIFY(arg) that will convert arg to a string,
4001 no matter whether it contains macros or not.
4003 1999-10-12 Tor Lillqvist <tml@iki.fi>
4005 * config.h.win32.in: Define the new GLIB_SIZEOF_* constants here,
4008 * glib.h: Small Win32 comments improvement.
4010 Tue Oct 12 12:16:12 1999 Tim Janik <timj@gtk.org>
4012 * gmessages.c (g_printf_string_upper_bound): completly new
4013 implementation for printf string upper bounds calculation.
4014 we handle all glibc 2.1 format specifiers now, except for positional
4015 parameters (%nn$...) and wide char strings, plus some obscure upper
4016 case variants of the standard conversions. this fixes a lot of
4017 bugs in the old code, i.e.
4018 - NULL format strings
4019 - floats with exponents >+24
4021 - precision specifications in general
4022 - negative field widths
4023 - %p for SIZEOF_VOID_P > 4 platforms
4024 we now issue warnigns in places where the old code would have
4025 caused buffer overruns anyways. warnings are suppressed when invoked
4026 from glogv(), to avoid infinite recursions if someone passes a log
4027 message that comes with really obscure format specifications.
4029 Tue Oct 12 11:49:00 1999 Tim Janik <timj@gtk.org>
4031 * gstrfuncs.c: nuked old g_printf_string_upper_bound() version.
4033 Tue Oct 12 03:34:40 1999 Tim Janik <timj@gtk.org>
4035 * glib.h: added GFloatIEEE754 and GDoubleIEEE754 unions to access sign,
4036 mantissa and exponent of IEEE floats and doubles (required by the new
4037 version of g_printf_string_upper_bound). the unions are endian specific,
4038 we handle G_LITTLE_ENDIAN and G_BIG_ENDIAN as of currently. ieee floats
4039 and doubles are supported (used for storage) by at least intel, ppc and
4041 http://twister.ou.edu/workshop.docs/common-tools/numerical_comp_guide/ncg_math.doc.html
4043 Mon Oct 11 18:01:49 1999 Tim Janik <timj@gtk.org>
4045 * configure.in: added additional checks to figure sizes of size_t,
4046 ptrdiff_t and intmax_t (required by g_printf_string_upper_bound).
4048 Wed Oct 6 12:44:23 PDT 1999 Manish Singh <yosh@gimp.org>
4050 * configure.in: blah. use G_WITH_CYGWIN instead of G_HAVE_CYGWIN
4052 1999-10-05 Tor Lillqvist <tml@iki.fi>
4054 * glib.h: (Win32) Drop the mapping of POSIX function names to the
4055 underscored versions, it's unnecessary after all. With MSVC we get
4056 them from oldnames.lib, with gcc-2.95 and mingw32 from
4057 -lmoldname-msvc. Add comment about what headers to include for
4060 * glibconfig.h.win32.in: Don't define WIN32 and NATIVE_WIN32.
4062 * gerror.c (g_on_error_query): (Win32) Slightly increased verbosity.
4064 * build-dll: Don't strip.
4066 * tests/string-test.c tests/dirname-test.c: Use G_OS_WIN32.
4068 * glib.def: Add g_thread_use_default_impl.
4070 Sun Oct 3 19:46:55 PDT 1999 Manish Singh <yosh@gimp.org>
4072 * configure.in: use G_HAVE_CYGWIN instead of G_OS_FEATURE_CYGWIN
4074 Sun Oct 3 19:25:42 PDT 1999 Manish Singh <yosh@gimp.org>
4078 * glibconfig.h.win32: G_OS_FOO #defines. I *think* I got the cygwin
4079 and beos stuff right, but I haven't tested it. The respective
4080 porters should fix any screwups
4090 * testglib.c: use G_OS stuff
4092 Wed Sep 22 01:53:18 1999 Tim Janik <timj@gtk.org>
4094 * glib.h (NULL): define NULL as (0L) if __cplusplus is defined, to
4095 avoid "ANSI C++ forbids implicit conversion from `void *' in argument
4096 passing" errors upon NULL usage in C++ programs (gcc-2.95 is on crack
4097 for erroring out on this, instead of just issueing a warning).
4099 * glib.h (g_trash_stack_pop): use uncasted NULL again.
4101 Fri Sep 17 10:24:45 1999 Tim Janik <timj@gtk.org>
4103 * gmem.c (g_mem_chunk_compute_size) (g_mem_chunk_new): applied
4104 patch from Soeren Sandmann <sandmann@daimi.au.dk>, to force mem
4105 chunk's area sizes to be a multitiple of atom_size, and to
4106 eliminate the MAX_MEM_AREA restriction of 65536 bytes. we also
4107 catch cases where users pass an area size < atom size with a
4108 return_if_fail statement now (which is ok, because previously this
4109 lead to memory corruption anyways).
4111 Thu Sep 16 13:19:54 1999 Tim Janik <timj@gtk.org>
4113 * glib.h (g_trash_stack_pop): add explicit (GTrashStack*) cast for NULL
4114 pointer to cure ANSI C++ error.
4116 Mon Sep 13 23:25:59 1999 Tim Janik <timj@gtk.org>
4118 * gmessages.c (g_logv): in case we have to abort the program,
4119 debugging is enabled and we are not called recursively, try
4120 to abort with raise (SIGTRAP) first, so developers may ignore
4121 certain failure conditions during debugging stage.
4123 Thu Aug 26 15:09:36 1999 Tim Janik <timj@gtk.org>
4126 * gmodule/Makefile.am:
4127 * gthread/Makefile.am: added --export-dynamic so we can load dynmic
4128 modules, (required, according to the libtool 1.3.3 docu).
4130 1999-07-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4132 * grand.c (g_rand_new): Use /dev/urandom, as it doesn't block,
4133 which /dev/random might do. Do not XOR the time, when getting the
4134 seed form /dev/urandom, as this is good itself. Prevent the
4135 initial seed from being zero, which causes the PRNG to produce
4136 only zeros. Hints from Colin Plumb <colin@pgp.com>.
4138 1999-08-17 Tor Lillqvist <tml@iki.fi>
4140 * glib.h (g_trash_stack_push): Add a cast.
4143 * glist.c: Make the inline functions static inline, and add
4144 separate extern wrappers. Not all compilers produce callable entry
4145 points for inline functions, even if gcc does.
4147 Sun Aug 15 02:47:14 1999 Tim Janik <timj@gtk.org>
4149 * glib.h (g_trash_stack_pop): eliminate memset() call, since string.h
4150 has not neccessarily been included prior to glib.h.
4152 Mon Aug 2 21:03:10 1999 Tim Janik <timj@gtk.org>
4154 * configure.in: added --enable-msg-prefix option.
4156 * gmessages.c (g_log_default_handler): feature "prg_name (pid:%u): "
4157 if --enable-msg-prefix was selected (use "(process:%u): " if
4158 g_get_prgname () returns NULL, along the lines of g_on_error_query).
4160 1999-08-03 Tor Lillqvist <tml@iki.fi>
4164 * tests/strfunc-test.c: Rename g_strccpy to g_strcompress and
4165 g_strecpy to g_strescape per Tim Janik's suggestion. Dropped the
4166 destination parameter, always g_malloc a new string. Fix bug in
4167 g_strcompress, octal digits were gobbled up without limit, should
4170 Sources that use g_strescape must have ifdefs to be compilable
4171 both with GLib 1.2 and 1.3.
4173 Sat Jul 31 17:52:03 PDT 1999 Manish Singh <yosh@gimp.org>
4176 * gstrfuncs.c: the #define for g_strescape interfered with the
4177 compilation of the function, so just remove the function and
4178 note that it's deprecated in the header
4180 1999-08-01 Tor Lillqvist <tml@iki.fi>
4182 * gstrfuncs.c (g_strccpy, g_strecpy): New functions.
4184 * glib.h: Declare and document them. Define the deprecated
4185 g_strescape as a macro that calls g_strecpy.
4187 * tests/strfunc-test.c (main): Test them.
4189 * makefile.{cygwin,msc}.in
4190 * tests/makefile.{cygwin,msc}.in: Remove gstack and its test
4193 * glib.def: Additions and removals.
4195 * README.win32: Improve gcc build instructions.
4197 * build-dll: Also build import library for MSVC.
4199 Sat Jul 24 20:11:35 1999 Tim Janik <timj@gtk.org>
4201 * merged GLib 1.3.0 with glib-1.2.3 from Fri Jul 16 22:18:36.
4202 * incorporated proposed cleanups from gtk-devel-list.
4204 * bumped version number to GLib-1.3.1
4210 removed string tokenisation (we got g_strsplit() and g_strjoin()
4211 already) and readline functions.
4212 s/g_list_delete/g_list_delete_link.
4213 implemented g_slist_delete_link.
4214 removed notion of g_ATEXIT() macro in glib.h, this is an *internal*
4215 macro, g_atexit() is provided for public consumption.
4216 added GTrashStack inline utility functions.
4217 reimplement double eneded queues.
4218 removed GStack implementation, people can use a queue or a (singly)
4219 linked list for this task.
4220 deprecated g_strescape(), we need the SunOS variants here.
4222 * gdate.c: added DEBUG_MSG() macro to wrap old messages.
4226 * upgrade to libtool 1.3.3.
4228 1999-07-21 Tor Lillqvist <tml@iki.fi>
4230 Win32: With the latest gcc (2.95, pre-release), we can have binary
4231 compatibility with MSVC by using the switch -fnative-struct. No
4232 longer build DLLs with .gcc in the name when using gcc.
4234 * README.win32: Renew gcc build instructions.
4236 * build-dll: Comments change, handle also .a files.
4238 * makefile.cygwin.in
4239 * tests/makefile.cygwin.in: Remove .gcc from DLL name.
4241 1999-07-13 Tor Lillqvist <tml@iki.fi>
4243 * README.win32: Correct URL for mingw runtime sources.
4245 * build-dll: Combine commands with &&.
4247 * glib.h: Map also rmdir() and hypot() for MSVCRT library.
4249 * makefile.cygwin.in
4250 * tests/makefile.cygwin.in: New DLL naming style. GCC-compiled DLLs are
4251 now called *.gcc.dll, to avoid binary incompatibilities with
4252 MSVC-compiled versions.
4254 * makefile.msc.in: Cosmetics.
4256 1999-07-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4258 * configure.in: Test for pthread_join rather than for
4259 pthread_create to determine the right thread-lib. Makes it work on
4260 mips-sgi-irix6.5. Hitn from to Jari Vuoksenranta
4261 <javu@piano.ux.phys.jyu.fi>.
4263 1999-07-02 Tor Lillqvist <tml@iki.fi>
4265 * README.win32: Note about need to fix another bug in the mingw32
4268 * makefile.msc.in: Debugging turned on via an nmake variable,
4269 no need to edit the makefile.
4271 1999-07-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4273 * configure.in, acconfig.h, gutils.c: Added a g_memmove
4274 replacement for platforms without memmove, where bcopy can't
4275 handle overlapping copies and the corresponding checks, which is
4276 taken form the PERL Configure routine.
4278 * glib.h: Updated the commentary about g_memmove to be right and
4281 * configure.in: Removed test for rand_r, as it isn't used anymore.
4283 1999-06-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4285 * glib.h, grand.c: Finally removed the g_random_normal and
4286 g_rand_normal functions.
4288 1999-06-28 Tor Lillqvist <tml@iki.fi>
4290 * glib.def: Add missing export of g_strncasecmp.
4292 1999-06-21 Jose Mercado <jmercado@mit.edu>
4294 * glib.spec.in: Changed version number (1.1->1.3) in files section
4295 to allow rpm to build packages again.
4297 1999-06-21 Tor Lillqvist <tml@iki.fi>
4299 * README.win32: Update the pthreads snapshot version we want.
4300 Advice how to hand-expand the makefile.*.in files.
4302 * config.h.win32.in: Define values needed by Sebastian Wilhelmi's
4305 * glib.def: Add new functions.
4307 * glibconfig.h.win32.in: Update the pthreads snapshot version.
4310 * gthread.c: Include config.h, guard inclusion of unistd.h. When
4311 using gcc on Win32, g_thread_functions_for_glib_use must be marked
4312 for export here, too.
4314 * gtimer.c: Implement g_usleep on native Win32 using Sleep (which
4315 only has millisecond granularity, though).
4317 * makefile.cygwin.in
4318 * makefile.msc.in: Update pthreads snapshot version. File
4319 name changes. Remove testgthread.
4321 * tests/makefile.cygwin.in
4322 * tests/makefile.msc.in: Add thread-test. Link with gthread lib.
4324 1999-06-18 Jeff Garzik <jgarzik@pobox.com>
4326 * tests/Makefile.am: Re-order tests in alpha order.
4328 1999-06-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4330 * configure.in: Changed test for pthread_attr_setstacksize from
4331 AC_TRY_COMPILE to AC_TRY_LINK.
4333 1999-06-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4335 * configure.in, acglib.m4, acconfig.h, glib.h, gthread.c:
4336 Completed the thread support in GLib. Thread creation,
4337 prioritizing threads, yielding, joining threads as well as
4338 reader/writer locks and recursive mutexes are now in place. Please
4339 test heavily on your platform. It is so far tested on
4340 Linux/i386/pthreads, Solaris/Sparc/pthreads and
4341 Solaris/Sparc/solaristhreads.
4343 * gtimer.c, glib.h: Implement g_usleep (gulong microseconds) for
4344 thread safe sleeping. (sleep() is not MT-safe at all!)
4346 * gutils.c: Avoid compiler warning.
4348 * tests/Makefile.am, tests/thread-test.c: New program to test some
4349 aspects of the thread implementation.
4351 * gthread.c, Makefile.am: Renamed from gmutex.c to reflect the
4354 * configure.in: Purged all appearances of nspr.
4356 Wed Jun 2 11:42:46 PDT 1999 Manish Singh <yosh@gimp.org>
4362 * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
4364 1999-05-29 Tor Lillqvist <tml@iki.fi>
4366 * gstrfuncs.c (g_strescape): Backslashify also '"' characters.
4368 * glib.h: Document g_strescape.
4370 1999-05-12 Tor Lillqvist <tml@iki.fi>
4372 * glib.h (Win32): Map fileno to _fileno for mingw32. Map fstat to
4375 * README.win32: Advice also to remove -lmoldname in the
4376 patch to the egcs-1.1.2 spec file.
4378 Wed May 12 00:23:55 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4380 * gmodule/Makefile.am: Another small fix.
4382 1999-05-08 Tor Lillqvist <tml@iki.fi>
4384 * Makefile.am tests/Makefile.am: Correct rules for making the
4385 win32-related files that are made from corresponding .in files.
4386 Is there a cleaner way than explicitly writing rules that invoke
4389 Fri Jul 16 22:18:36 PDT 1999 Manish Singh <yosh@gimp.org>
4392 * ltmain.sh: upgrade to libtool 1.3.3
4394 1999-06-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4396 * gdate.c, gstrfuncs.c, gstring.c: Fixed the use of the
4397 is..... and to..... macros, which take unsigned chars, not chars!
4398 Thanks to Morten Welinder <terra@diku.dk> for pointing this out.
4400 Thu Jun 3 16:30:31 PDT 1999 Manish Singh <yosh@gimp.org>
4402 * gerror.c (g_on_error_query): check isatty() before querying so
4403 we don't loop endlessly
4405 Sat May 29 11:16:29 PDT 1999 Manish Singh <yosh@gimp.org>
4411 * ltmain.sh: upgrade to libtool 1.3.2
4413 1999-05-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4415 * gmain.c: provide a poll prototype for SunOS, as they do not do
4416 it self. Hint from Christian Parg <cparg@fs-design.de>.
4418 Tue May 25 12:23:07 1999 Owen Taylor <otaylor@redhat.com>
4420 * gstrfuncs.c (g_strchug): Use g_memmove() not memmove().
4421 (Reported by Charles Levert <charles@comm.polymtl.ca>)
4423 Mon May 10 22:03:52 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4425 * Released GLib 1.2.3
4427 1999-05-08 Tor Lillqvist <tml@iki.fi>
4429 * Makefile.am tests/Makefile.am: Correct rules for making the
4430 win32-related files that are made from corresponding .in files.
4431 Is there a cleaner way than explicitly writing rules that invoke
4434 Sat May 1 10:18:01 PDT 1999 Manish Singh <yosh@gimp.org>
4440 * ltmain.sh: upgrade to libtool 1.3
4442 1999-04-30 Tor Lillqvist <tml@iki.fi>
4444 * Makefile.am: Don't distribute glibconfig.h.win32.in, but
4445 glibconfig.h.win32. Generate it when making a dist. Also generate
4446 makefile.msc and config.h.win32 from corresponding .in files when
4449 * configure.in: Also substitute @GLIB_INTERFACE_AGE@ and
4450 @GLIB_BINARY_AGE@ (needed in config.h.win32).
4452 * glibconfig.h.win32.in: Use static mutex structure and initial
4453 value corresponding to the 1999-04-07 snapshot of pthreads-win32.
4455 * tests/Makefile.am: Distribute makefile.msc. Generate it when
4458 * tests/makefile.msc.in: New file.
4460 * tests/node-test.c: Include <stdlib.h> for exit().
4462 Thu Apr 29 02:16:36 1999 Tim Janik <timj@gtk.org>
4464 * gstrfuncs.c: minor code cleanups.
4466 Tue Apr 27 13:11:29 1999 Owen Taylor <otaylor@redhat.com>
4468 * gmain.c (g_main_poll): Mask out ERR HUP and NVAL from
4469 the events field so we don't give IRIX fits.
4471 Tue Apr 20 08:42:22 1999 Tim Janik <timj@gtk.org>
4473 * gscanner.c (g_scanner_unexp_token): behave conservative with
4474 G_TOKEN_IDENTIFIER_NULL and always assume scanner->value.v_string
4475 to be "null" in that case.
4477 1999-04-20 Havoc Pennington <hp@pobox.com>
4479 * gutils.c (g_vsnprintf): When using the vsnprintf()
4480 implementation, '\0'-terminate the resulting string
4481 and return its length rather than -1.
4483 Mon Apr 19 13:42:21 1999 Owen Taylor <otaylor@redhat.com>
4485 * gmain.c (g_main_iterate): Added missing
4486 #ifdef G_THREADS_ENABLED. (I never liked G_THREADS_ENABLED in
4489 1999-04-18 Havoc Pennington <hp@pobox.com>
4491 * gutils.c (g_snprintf): When using the vsnprintf()
4492 implementation, '\0'-terminate the resulting string
4493 and return its length rather than -1.
4495 Fri Apr 16 06:52:07 1999 Tim Janik <timj@gtk.org>
4497 * gscanner.c (g_scanner_unexp_token): feature G_TOKEN_EOF as a valid
4498 expected token as well, so we get "- expected end of file" instead of
4499 "- expected (unknown) token <0>".
4501 Tue Apr 13 16:16:14 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4503 * Released GLib 1.2.2
4505 1999-04-12 Elliot Lee <sopwith@mh69.mh.cuc.edu>
4507 * g_strchug(): s/strcpy/memmove/
4509 1999-04-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4511 * configure.in: Adjusted the test for an unimplemented
4512 getpwuid_r. Info from Michael Pruett <mikep@ugcs.caltech.edu>.
4514 Sun Apr 11 15:07:34 1999 Tim Janik <timj@gtk.org>
4516 * configure.in: bumped versin number to GLib 1.2.2, interface 2,
4521 Sun Apr 11 14:37:06 1999 Tim Janik <timj@gtk.org>
4523 * gstrfuncs.c (g_strcasecmp): always check for s1, s2 != NULL.
4525 Sat Apr 10 19:30:50 1999 Tim Janik <timj@gtk.org>
4527 * glib.h: removed braces around inline strings for the G_GNUC_FUNCTION
4528 and G_GNUC_PRETTY_FUNCTION macros, so the macros can be used for
4529 compile time string concatenation.
4531 Thu Apr 8 19:53:19 1999 Owen Taylor <otaylor@redhat.com>
4533 * gmain.c (g_main_iterate): Check for two threads
4534 calling g_main_iterate at once.
4536 * gmain.c: If the set of poll file descriptors changes
4537 during a call to poll(), abort that call, and start
4538 a new poll. My test program still segfaults
4539 obscurely on glibc 2.0 (in read()!!!), but now it works on
4540 glibc 2.1, so I'll blame something else for the other segfault.
4542 1999-03-31 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4544 * configure.in: Fixed slight bug, that made configure hang on some
4545 systems. Please do not merge this into 1.3 branch. It's taken care
4546 of differently there. Info from J. Rhett Aultman
4547 <cuplan@alley.gator.net>
4549 Wed Mar 24 21:23:47 CST 1999 Shawn T. Amundson <amundson@gtk.org>
4551 * Released GLib 1.2.1
4556 sanity_check: updated
4558 * glibconfig.h.win32.in:
4560 docs/glib-config.1.in:
4561 docs/Makefile.am: Added files used to generate new files.
4563 * glibconfig.h.win32:
4564 docs/glib-config.1: Removed, now generated.
4566 * configure.in: Added to output now-generated files.
4568 Tue Mar 23 13:43:39 PST 1999 Manish Singh <yosh@gimp.org>
4570 * giounix.c: add user_data param to check and prepare functions
4572 Mon Mar 22 03:54:43 1999 Tim Janik <timj@gtk.org>
4575 * gmain.c: add user_data to the GSource ->check and ->prepare
4576 functions, so it can be used to e.g. pass a GPollFd.
4577 (g_main_poll): only add poll records with an events mask != 0 to the
4578 fd_array. don't even bother calling poll_func() if fds=timeout=0.
4579 added debugging printouts around poll_func() invokation that can be
4580 enabled with #define G_MAIN_POLL_DEBUG.
4582 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
4588 * ltmain.sh: upgrade to libtool 1.2f
4590 * autogen.sh: libtool is not required to autogen glib
4592 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
4595 1999-03-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4597 * gmem.c: Fixed another stupid fault of mine: Did
4598 s/g_static_/g_private_/g
4600 Wed Mar 17 03:17:42 1999 Tim Janik <timj@gtk.org>
4602 * configure.in bumped versin number to GLib 1.2.1, interface 1,
4607 * glib.h: added GLIB_CHECK_VERSION() macro similar to
4608 GTK_CHECK_VERSION().
4610 Sun Mar 14 17:50:35 1999 Tim Janik <timj@gtk.org>
4612 * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
4613 to g_return_if_fail().
4615 (g_mem_chunk_print):
4616 (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
4619 * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
4620 to g_return_if_fail().
4621 * grel.c (g_*): changed a bunch of g_assert() statements to
4622 g_return_if_fail() and added some extra ones to check relation != NULL.
4624 1999-03-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4626 * configure.in: Also accept _Pctime_r instead of ctime_r, while
4627 seraching for the right `_REENTRANT' flag. This is for Digital
4628 UNIX 4.0d. Thanks to Sascha Brawer <sb@adasys.ch>.
4630 Tue Mar 9 23:25:50 1999 Tim Janik <timj@gtk.org>
4632 * configure.in: check for working realloc (NULL,).
4633 * gmem.c (g_realloc): use malloc() for initial allocation on systems
4634 where realloc(NULL,) will not work (this is the case on SunOS, reported
4637 Mon Mar 8 07:42:08 1999 Tim Janik <timj@gtk.org>
4639 * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
4640 flag around the call to g_hook_free() to avoid spurious
4641 warnings (happens during destruction phase).
4643 1999-03-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4645 * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
4646 from config.h.win32 to glibconfig.h.win32
4648 * acconfig.h, configure.in, config.h.win32: Added test for DCE
4649 versions of mutex_trylock and cond_timedwait. The win32 versions
4650 are posix, aren't they?
4652 1999-03-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4654 * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
4655 Friedrich Dominicus <Friedrich.Dominicus@inka.de>
4657 1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4659 * gutils.c (g_get_any_init): Fixed yet another bloody
4660 implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
4661 <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
4662 test better than that, but have no idea, how to do that easily.
4664 Sun Feb 21 22:11:51 CST 1999 Shawn T. Amundson <amundson@gtk.org>
4666 * Released GLib 1.2.0
4670 Wed Feb 24 00:08:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>
4672 * *.[ch]: inserted additional note to look for ChangeLog and
4673 AUTHORS file for a log of modifications.
4675 Sun Feb 21 14:01:00 1999 Dr Mike <drmike@redhat.com>
4677 * Made specfile generated, tweaked slightly
4679 Sat May 8 06:00:17 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4683 gthread/Makefile.am: Better testing reveals better
4684 methods. Fixes for BeOS.
4686 Sat May 8 01:52:29 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4697 gmodule/gmoduleconf.h.in
4698 gmodule/gmodule-beos.c
4699 gthread/Makefile.am: Port to BeOS by myself and Richard Offer.
4701 1999-05-06 Tor Lillqvist <tml@iki.fi>
4703 * makefile.msc.in makefile.cygwin.in glibconfig.h.win32.in
4704 config.h.win32.in tests/makefile.msc.in tests/makefile.cygwin.in:
4705 New files, used to generate corresponding non-.in files when
4706 making a dist. This is just so the version numbers will be kept in
4707 synch automatically.
4709 * configure.in: Also substitute @GLIB_MAJOR_VERSION@,
4710 @GLIB_MINOR_VERSION@, and @GLIB_INTERFACE_AGE@.
4712 * Makefile.am tests/Makefile.am: Also distribute makefile.cygwin.
4714 * gerror.c (g_on_error_query): On Win32, put up a MessageBox and
4717 * glib.def: Add a couple of functions.
4719 Sat May 1 10:26:20 PDT 1999 Manish Singh <yosh@gimp.org>
4725 * ltmain.sh: upgrade to libtool 1.3
4727 1999-04-25 Tor Lillqvist <tml@iki.fi>
4729 * README.win32: More editing.
4730 * build-dll: Use gcc, not ld to link.
4731 * glib.h: On native Win32 use _unlink().
4732 * gscanner.c: Use corrent NATIVE_WIN32 feature test macro,
4734 * gstring.c: Include <io.h> on Win32 for _read prototype.
4735 * gutils.c: Remove old IO channel code (was in #if 0).
4736 * makefile.cygwin: Don't need to link with kernel32 and msvcrt
4737 explicitly, they are included anyway.
4739 1999-04-24 Tor Lillqvist <tml@iki.fi>
4741 Support added for building using a GNU toolchain on Win32,
4742 i.e. gcc -mno-cygwin on cygwin (a.k.a. mingw32, using egcs-1.1.2).
4744 * README.win32: Updated.
4745 * build-dll makefile.cygwin tests/makefile.cygwin: New files.
4746 * glib.h glib.def glibconfig.h.win32: Slight updates.
4747 * gmain.c: No need to include <fcntl.h> and <io.h> on Win32.
4748 * gmain.c gutils.c testglib.c tests/string-test.c: Test for
4749 NATIVE_WIN32, not _MSC_VER.
4750 * gmutex.c: Must declare g_thread_functions_for_glib_use as
4751 exported (using the GUTILS_C_VAR macro).
4752 * gutils.c gmodule/libgplugin_[ab].c: LibMain not needed.
4753 * gmodule/gmoduleconf.h.win32: Need underscore with gcc.
4754 * gthread/gthread.c: With gcc on Win32, must use memcpy to assign
4755 value of g_thread_functions_for_glib_use (?).
4756 * makefile.msc tests/makefile.msc: Cosmetics.
4758 Fri Apr 23 14:29:25 BST 1999 Tony Gale <gale@gtk.org>
4760 * glib.h: Fix typo in g_string_ncasecmp macro (by me).
4761 Add b_string_strncasecmp macro.
4763 1999-04-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4765 * gutils.c (g_get_any_init): use sysconf (_SC_GETPW_R_SIZE_MAX) as
4766 the new initinal bufsize for getpwuid_r on systems, that support
4767 this. Hint from Holger Duerer <H.Duerer@zait.uni-bremen.de>.
4769 Sat Apr 17 20:55:13 BST 1999 Tony Gale <gale@gtk.org>
4771 * glib.h, gstring.c: Add new g_string functions for reading
4772 from file/socket descriptors, and tokenising strings.
4774 Added various g_string macros.
4776 Tue Apr 13 23:28:32 1999 Tor Lillqvist <tml@iki.fi>
4778 * README.win32: Mention the tests directory.
4780 * glib.def: Add the functions from grand.c.
4782 * glibconfig.h.win32: Add unsigned max values, and the format
4785 * makefile.msc: Add grand.
4787 * tests/{date-test,node-test}.c: Include <stdlib.h> for exit().
4789 * tests/makefile.msc: New file.
4791 1999-04-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4793 * glib.h: Moved struct declaration up. Style fixes.
4795 * grand.c: Style fixes. Only try to open /dev/random once.
4797 * tests/rand-test.c (main): New tests; Slight bug fix.
4799 1999-04-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4801 * grand.c, tests/rand-test.c: New files to implement the Mersenne
4802 Twister Pseudo Random Number Generator.
4804 * glib.h, AUTHORS, Makefile.am, tests/Makefile.am: Changed
4807 Thu Apr 8 21:12:30 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
4809 * Released GLib 1.3.0
4811 1999-03-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4813 * configure.in: Added a check for the right format to printf and
4814 scanf long longs. It is %qi instead of %lli on FreeBSD for
4817 1999-03-28 Raja R Harinath <harinath@cs.umn.edu>
4819 * Makefile.am (glibconfig.h): Make sure `glibconfig.h' exists
4820 after the rule is fired.
4821 (install-exec-local): Install glibconfig.h only if the contents
4822 are different from the currently installed glibconfig.h.
4824 1999-03-26 Raja R Harinath <harinath@cs.umn.edu>
4826 * Makefile.am (configexecincludedir): Rename from
4827 configincludedir so that glibconfig.h will be installed
4828 as part of `make install-exec'.
4830 Thu Mar 25 22:45:47 1999 Tor Lillqvist <tml@iki.fi>
4832 * config.h.win32: Update version numbers.
4834 * glibconfig.h.win32: Update version numbers and pthreads-win32-
4835 related magic values.
4837 * README.win32: Some improvements.
4839 * makefile.msc: Add gqueue and gstack. Correct version number.
4841 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
4847 * ltmain.sh: upgrade to libtool 1.2f
4849 * autogen.sh: libtool is not required to autogen glib
4851 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
4854 1999-03-18 Jeff Garzik <jgarzik@pobox.com>
4856 * glib.def: Add new g_list, g_stack, g_queue functions.
4858 1999-03-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4860 * configure.in: added new AC_SUBST(GTHREAD_COMPILE_IMPL_DEFINES)
4861 to hold various defines to get the right thread implementation on
4862 different platforms. Also look in -ldce for pthread_create. Should
4863 make it work on HP-UX 10.x. Information from "D. Emilio Grimaldo
4864 Tunon" <emilio_tunon@nl.compuware.com>.
4866 1999-03-17 Jeff Garzik <jgarzik@pobox.com>
4868 * gstack.c, gqueue.c:
4869 Add copyright, clean up code a bit.
4871 1999-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4873 * configure.in: Added missing values for G_MAXU(SHORT|INT|LONG) on
4874 platforms with only /usr/include/values.h.
4876 * acconfig.h: Removed unnecessary macros.
4878 * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
4879 from config.h.win32 to glibconfig.h.win32. Taken from glib 1.2
4882 * configure.in: Also accept _Pctime_r instead of ctime_r, while
4883 seraching for the right `_REENTRANT' flag. This is for Digital
4884 UNIX 4.0d. Taken from glib 1.2 branch.
4886 Wed Mar 17 03:14:56 1999 Tim Janik <timj@gtk.org>
4888 * glib.h: added GLIB_CHECK_VERSION() macro similar to
4889 GTK_CHECK_VERSION().
4891 Wed Mar 17 01:46:28 1999 Tim Janik <timj@gtk.org>
4893 * merges from glib-1-2:
4895 Sun Mar 14 17:50:35 1999 Tim Janik <timj@gtk.org>
4897 * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
4898 to g_return_if_fail().
4900 (g_mem_chunk_print):
4901 (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
4904 * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
4905 to g_return_if_fail().
4906 * grel.c (g_*): changed a bunch of g_assert() statements to
4907 g_return_if_fail() and added some extra ones to check relation != NULL.
4909 Tue Mar 9 23:25:50 1999 Tim Janik <timj@gtk.org>
4911 * configure.in: check for working realloc (NULL,).
4912 * gmem.c (g_realloc): use malloc() for initial allocation on systems
4913 where realloc(NULL,) will not work (this is the case on SunOS, reported
4916 Mon Mar 8 07:42:08 1999 Tim Janik <timj@gtk.org>
4918 * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
4919 flag around the call to g_hook_free() to avoid spurious
4920 warnings (happens during destruction phase).
4922 1999-03-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4924 * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
4925 Friedrich Dominicus <Friedrich.Dominicus@inka.de>
4927 1999-03-16 Timur Bakeyev <mc@bat.ru>
4929 * configure.in: Fix problem with pthread_create in libc, as running
4930 "gcc test.c -l " is not legal.
4932 1999-03-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4934 * tests/type-test.c: Added a test for the
4935 G_(U)?INT(16|32|64)_FORMAT and G_(MIN|MAX|MAXU)(SHORT|INT|LONG)
4938 * configure.in: Removed G_(U)?INT8_FORMAT again, as it can't be
4941 * configure.in: Added the macros G_MAXU(SHORT|INT|LONG). I do not
4942 know how to handle these on platforms with /usr/include/values.h,
4943 but without /usr/include/limits.h. Please someone add this.
4946 1999-03-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4948 * configure.in: Added the macros G_(U)?INT(8|16|32|64)_FORMAT to
4949 use for printf and (much more important) scanf format strings for
4950 the corresponding GLib types.
4952 * glib.h Added G_(U)?(SHORT|INT|LONG)_FORMAT for consistency. It
4953 however makes no sense to also provide G_(FLOAT|DOUBLE)_FORMAT, as
4954 they are different for printf (f for both) and scanf (f for float,
4955 lf for double). Defining G_INT_FORMAT makes sense however, as we
4956 might want to define gint to something different than int someday
4957 in the future. Idea from Sascha Brawer <sb@adasys.ch>.
4959 1999-03-14 Jeff Garzik <jgarzik@pobox.com>
4962 Commented out debugging output.
4964 * tests/Makefile.am, tests/date-test.c:
4965 Added test of the GDate module, based closely on testgdate.c.
4967 * tests/Makefile.am:
4968 Bugfix - compile tests with @GLIB_DEBUG_FLAGS@.
4970 1999-03-14 Raja R Harinath <harinath@cs.umn.edu>
4972 * configure.in (glibconfig.h): Remove widechar tests and defines.
4973 (fd_set): Change the grep for `fd_mask' to search for `fd_set'.
4974 * gerror.c (fd_mask): Remove conditional typedef. It is not used
4975 elsewhere in the file.
4976 * gmain.c (fd_mask): Likewise.
4978 1999-03-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4980 * configure.in: Test for posix threads first, then for dce threads.
4982 1999-03-11 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
4984 * configure.in: Revamped the thread configure stuff. Now dce
4985 threads (old posix draft) are recogniced. This is necessary,
4986 because dce threads are in fact working quite differently from
4987 posix threads. Also changed the conditions for checking for MT
4988 safe functions a bit, because G_THREADS_IMPL_NONE still have to
4989 compile thread safe. NOTE: Please do not commit my change to
4990 glib-1-2/{acconfig.h,configure.in,config.h.win32} from 1999-03-03,
4991 as the current change will take care of that too.
4993 Tue Mar 9 14:37:32 1999 Jeff Garzik <jgarzik@pobox.com>
4995 * Makefile.am, glib.h, gstack.c, gqueue.c,
4996 tests/Makefile.am, tests/queue-test.c, tests/stack-test.c:
4997 Added stack, queue ADTs and related tests.
5000 New g_list_delete() function.
5002 Sat Mar 6 11:03:08 1999 Asbjorn Pettersen <ape@lrdpf.spacetec.no>
5004 * gutils.c (g_get_any_init): add OS/2 changes.
5005 change '\\' in HOME to '/'.
5007 1999-03-03 Josh MacDonald <jmacd@spin.dsl.pacbell.net>
5009 * glib.def: g_spaced_primes_closest was omitted here, so I
5010 couldn't build Xdelta on Windows.
5012 1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
5014 * gutils.c (g_get_any_init): Fixed yet another bloody
5015 implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
5016 <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
5017 test better than that, but have no idea, how to do that easily.
5019 Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org>
5021 * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
5024 * configure.in: set glib version to 1.3.0.