Rename from GLIB_DIVERT_BEFORE_HELP. Update to track autoconf 2.49b.
[platform/upstream/glib.git] / ChangeLog.pre-2-0
1 2000-12-08  Raja R Harinath  <harinath@cs.umn.edu>
2
3         * acglib.m4 (GLIB_AC_DIVERT_BEFORE_HELP): 
4         Rename from GLIB_DIVERT_BEFORE_HELP.  
5         Update to track autoconf 2.49b.
6         * configure.in: Reflect above change.
7         (AC_EGREP_HEADER): Rename from really obselete AC_HEADER_EGREP.
8         (debug_default): Replace "if test `expr ...`" with "case". 
9
10         * tests/Makefile.am (TESTS): Rearrange into other variables, and
11         include run-markup-tests.sh.
12         (TESTS_ENVIRONMENT): New.  Pass $srcdir to tests.
13         (noinst_PROGRAMS): Rename to ...
14         (check_PROGRAMS): ... this.  'automake' ensures that these are
15         built before running the tests.
16         * tests/run-markup-tests.sh: Support $srcdir != $builddir.
17
18 2000-12-08  Havoc Pennington  <hp@pobox.com>
19
20         * tests/Makefile.am (TESTS): move markup-test to noinst_PROGRAMS;
21         it isn't a proper test, the proper test would be 
22         run-markup-tests.sh, but that can't go in tests, so we need 
23         a manual make check rule. Didn't do that yet.
24
25 2000-12-07  Raja R Harinath  <harinath@cs.umn.edu>
26
27         * gmain.h: Don't put anything after an #endif.
28         * gmain.c: Likewise.
29
30 2000-12-06  Havoc Pennington  <hp@pobox.com>
31
32         * tests/strfunc-test.c (main): add g_strdupv test
33
34         * gstrfuncs.c (g_strdupv): Add a function to copy 
35         an array of strings
36
37 Tue Dec  5 12:23:04 2000  Owen Taylor  <otaylor@redhat.com>
38
39         * gmain.[hc]: Major change in API for creating sources
40         to handle multiple main loops (GMainContext *). 
41
42         GSources are now exposed as GSource * and implemented
43         with structure derivation.
44
45         * giochannel.[ch]: Changed vtable for GIOChannel to correspond
46         to the new mainloop API, add g_io_channel_create_watch().
47          
48         * gtypes.h: Move GTimeVal here.
49
50         * gthread.h: Remove gmain.h include to avoid circularity.
51         
52         * giounix.c: Update for new GMain API.
53          
54         * giowin32.c: Update for new GMain API. (No check for
55         proper compilation or working.)
56
57         * timeloop.c timeloop-basic.c: A benchmarking program for
58         the main loop comparing the main loop against a 
59         hand-written (timeloop-basic.c) variant. 
60
61         * tests/mainloop-test.c: New torture test of mainloop.
62         
63         * docs/Changes-2.0.txt: Started. Added text about
64         changes to GMain.
65
66         * gmain.c (g_main_add_poll_unlocked): Initial fd->revents
67         to zero. (#8482, Benjamin Kahn)
68
69 2000-12-01  Tor Lillqvist  <tml@iki.fi>
70
71         * {.,*}/makefile.msc.in: Include make.msc from GLib's build subdir.
72
73         * makefile.{mingw,msc}.in (glib_OBJECTS): Add gunibreak.
74
75         * glib.def: Update correspondingly.
76
77 2000-11-21  Havoc Pennington  <hp@pobox.com>
78
79         * gmacros.h: Provide G_CONST_RETURN which is 'const' by default,
80         and nothing when G_DISABLE_CONST_RETURNS is defined.
81
82 2000-11-29  Havoc Pennington  <hp@redhat.com>
83
84         * gunidecomp.c (COMBINING_CLASS): 
85         s/UNICODE_LAST_CHAR/G_UNICODE_LAST_CHAR/
86
87         * gunichartables.h: Update for data in Unicode 3.0.1
88
89         * gunidecomp.h: Ditto
90         
91         * gunicode.h (GUnicodeBreakType): Enum for line break properties
92         (g_unichar_break_type): Get the break property for a char
93         
94         * gunibreak.h: Autogenerated line break property tables
95
96         * gunibreak.c (g_unichar_break_type): added 
97         
98         * Makefile.am (EXTRA_DIST): dist gen-unicode-tables.pl
99
100         * Makefile.am (libglib_1_3_la_SOURCES): Add gunibreak.h, gunibreak.c
101         
102         * gen-unicode-tables.pl: Include the script to update the unicode
103         char tables
104
105 2000-11-28  Elliot Lee  <sopwith@redhat.com>
106
107         * gmarkup.c: Fix warnings.
108
109         * guniprop.c, gunidecomp.c: Make warnings go away by using
110         GPOINTER_TO_INT() instead of (int).
111
112         * gcompletion.[ch]: Add g_completion_set_compare(),
113         to allow (for example) using case-insensitive completion.
114
115 2000-11-28  Tor Lillqvist  <tml@iki.fi>
116
117         Patches by Hans Breuer:
118         
119         * gspawn-win32.c: Move the code for gspawn-win32-helper to its own
120         file.
121
122         * makefile.{mingw,msc}.in: Change accordingly.
123
124         * gspawn-win32-helper.c: New file.
125
126         * Makefile.am (EXTRA_DIST): Add it.
127
128         * gmarkup.c (find_current_text_end): Fix assertion not to check an
129         uninitialised variable.
130
131 2000-11-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
132
133         * gthread.c: Set the thread data before locking the mutex, because
134         the locking call might use g_thread_self ().
135
136         * gthread.h: Do only show the location of the locking/unlocking
137         for -DG_ERRORCHECK_MUTEXES and not the name of the mutex. Add the
138         errorcheck capability for g_cond_wait and g_cond_timed_wait as
139         well.   
140
141 2000-11-27  Havoc Pennington  <hp@redhat.com>
142
143         * gthread.h: Add void in empty function arg list
144
145 2000-11-22  Tor Lillqvist  <tml@iki.fi>
146
147         * makefile.{mingw,msc}.in: Add gqsort.
148
149         * glib.def: Update.
150
151 2000-11-21  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
152
153         * configure.in: Add a surrogate for thread priorities using PID
154         niceness for systems with no thread priorities and different PIDs
155         for threads of the same process (most notably: Linux). Define
156         G_THREAD_USE_PID_SURROGATE in that case, as used by
157         gthread-posix.c. Also make the system thread bigger by
158         sizeof (long) to contain the thread's PID.
159
160         * gfileutils.c: Include stdlib.h for mkstemp prototype.
161
162         * gthread.c: Add priority range checks to the affected functions.
163
164         * gthreadpool.c: Remove unused variable.
165
166 Mon Nov 20 18:55:17 2000  Jonathan Blandford  <jrb@redhat.com>
167
168         * gtree.[hc]: Patch from David Benson <daveb@idealab.com> to add
169         user_data support to gtree functions.
170
171 Mon Nov 13 18:35:52 2000  Jonathan Blandford  <jrb@redhat.com>
172
173         * gtypes.h (GCompareFuncData): new func type to let you use user
174         data when comparing nodes.
175
176         * gslist.c (g_list_sort_with_data): new function to sort with
177         user_data. 
178
179         * glist.c (g_list_sort_with_data): new function to sort with
180         user_data. 
181
182         * garray.[ch]: Added convenience functions to sort arrays.
183
184 2000-11-16  Havoc Pennington  <hp@redhat.com>
185
186         * guniprop.c (g_unichar_isspace): Use a switch here, maybe helps 
187         the compiler optimize things. Also, ' ' is a SPACE_SEPARATOR,
188         so don't special case it.
189
190 2000-11-17  Tor Lillqvist  <tml@iki.fi>
191
192         * glib.def: Add g_trash_stack entry points.
193
194 Fri Nov 17 15:43:00 2000  Owen Taylor  <otaylor@redhat.com>
195
196         * Released 1.3.2
197         
198         * NEWS: Update.
199
200         * tests/Makefile.am (dist-hook): Add code to distribute
201         markup test files.
202
203 2000-11-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
204
205         * configure.in: Check for the sched.h header and include it on
206         gthread/gthread-posix.c if available.
207
208         * configure.in: Add -D_POSIX4_DRAFT_SOURCE to
209         GTHREAD_COMPILE_IMPL_DEFINES. Also add -D_POSIX4A_DRAFT10_SOURCE
210         to G_THREAD_CFLAGS. Really deploy GTHREAD_COMPILE_IMPL_DEFINES,
211         when searching for thread libs. Look for sched_* functions in
212         -lrte as well. All of that is necessary on DG/UX.
213
214         * configure.in: Use AC_TRY_COMPILE instead of AC_EGREP_HEADERS in
215         various places to make it work more reliable, to make it accept
216         macros instead of functions etc.
217
218         * configure.in: Replace some NULL's for checks with 0 to make it
219         work without stdio.h everywhere.
220
221         * configure.in, gutils.c: changed the test for getpwuid_r to first
222         test for a posix version and then for a non-posix version. No code
223         change in gutils.c. Again this change deals better with getpwuid_r
224         being a macro and not a function. Most of the above with kind help
225         from Tethys <tet@isengard.europe.dg.com>. This fixes Bug #13403.
226         
227 2000-11-14  Tor Lillqvist  <tml@iki.fi>
228
229         * gwin32.h: Make #endif comment match #ifdef.
230
231 Mon Nov 13 14:00:20 2000  Owen Taylor  <otaylor@redhat.com>
232
233         * configure.in: Up version to 1.3.2
234
235         * gconvert.h (enum GConvertError): Remove trailing ,
236
237         * gfileutils.c (g_file_open_tmp): Fix comment to 
238         properly describe return value.
239
240 2000-11-13  Tor Lillqvist  <tml@iki.fi>
241
242         * config.h.win32.in: Add USE_LIBICONV.
243
244         * gconvert.c: Check G_OS_WIN32 only after including glib.h. 
245
246         * glib.def: Update.
247
248 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
249
250         * gthread.c (g_static_rec_mutex_*): Made recursive mutexes also
251         work when the thread system is not (yet) initialized.
252
253 Sun Nov 12 18:34:32 2000  Owen Taylor  <otaylor@redhat.com>
254
255         * gconvert.[ch]: Create wrapper functions for iconv()
256         so that we can transparently use the native iconv, 
257         libiconv, or (in the future) a mini-iconv included
258         with glib.
259
260         * glib-config-2.0.in glib-2.0.pc.in: Include @ICONV_LIBS@
261
262         * INSTALL: Added note about libiconv.
263
264         * configure.in: Add checks for libiconv from pango. If
265         EILSEQ is not defined in errno.h add define for it into
266         glibconfig.h so g_iconv can use it. (Note, recompiling
267         from a system without EILSEQ to a system with EILSEQ
268         will break binary compatibility)
269
270 2000-11-12  Robert Brady  <robert@suse.co.uk>
271
272         * gstrfuncs.c, gstrfuncs.h: Remove g_filename_{to,from}_utf8
273
274         * gconvert.c, gconvert.h: Add g_filename_{to,from}_utf8 and
275         g_locale_{to.from}_utf8.  The locale_ variant honours 
276         nl_langinfo(CODESET), the filename_ variant uses UTF-8 unless
277         asked otherwise.
278
279         (g_convert): Add G_CONVERT_ERROR_PARTIAL_INPUT error, if bytesread
280         != length and no bytesread pointer passed.
281
282 Sun Nov 12 15:29:53 2000  Owen Taylor  <otaylor@redhat.com>
283
284         * gfileutils.[ch]: template is a reserved word in
285         C++ s/template/tmpl/. 
286
287 2000-11-11  Havoc Pennington  <hp@pobox.com>
288
289         * gmarkup.c (g_markup_parse_context_parse): Handle a long stream
290         of bytes containing no UTF-8 character starts
291
292 2000-11-11  Tor Lillqvist  <tml@iki.fi>
293
294         * glib.def: Add missing entry points.
295
296         * gfileutils.c (g_mkstemp): Improve chance to generate unique
297         names with less effort a bit.
298
299         * gfileutils.h: Add g_file_open_tmp() declaration.
300
301         * testglib.c: Include <io.h> on Win32.
302
303         * makefile.mingw.in: Correct the way to invoke sub-makes.
304
305 Sun Nov  5 13:20:54 2000  Owen Taylor  <otaylor@redhat.com>
306
307         * glib-object.h: Add gtypemodule.h
308
309 2000-11-11  Tor Lillqvist  <tml@iki.fi>
310
311         * gfileutils.c (g_file_open_tmp): New function, suggested by Havoc
312         earlier this month.
313         (g_mkstemp): Use only one case for letters in temp file name, as
314         this will be used on systems with case-insensitive file systems.
315
316         * testglib.c (main): Test g_mkstemp() and g_file_open_tmp().
317
318 2000-11-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
319
320         * gthreadpool.c: Don't take other threads with other priorities
321         into account as changing the priority is highly
322         unportable. (Actually using it at all already is unportable, but
323         even sometimes where that works, changing priority is not
324         possible).
325
326 2000-11-05  Havoc Pennington  <hp@pobox.com>
327
328         * gmarkup.h: rename G_MARKUP_FOO to
329         G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG
330
331         * gmarkup.c: don't start doc comments with "Returns"
332         
333 2000-11-05  Havoc Pennington  <hp@pobox.com>
334
335         * gmarkup.c: inline docs
336         (unescape_text): properly check strtoul for failure.
337         
338         * gerror.c (g_propagate_error): Free the src error if the dest
339         location is NULL - I'm pretty sure that's what this function was 
340         supposed to do.
341
342 2000-11-05  Havoc Pennington  <hp@pobox.com>
343
344         * gutils.c (g_find_program_in_path): cleanup docs, sync param 
345         names to those in the header
346
347         * gfileutils.c (g_mkstemp): clean up docs
348
349         * gshell.h: sync param names with param names in .c file
350
351         * gfileutils.h (enum GFileTest): remove trailing comma from last
352         member, confuses gtk-doc
353
354         * gmarkup.h: s/GMarkupErrorType/GMarkupError/g; to follow
355         convention
356
357 2000-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
358
359         * gasyncqueue.c: Added documentation for asyncronous queues.
360
361         * gspawn.c: Include sys/select.h (some platforms need it for
362         select). 
363
364         * gspawn.c: Changed unportable __FUNCTION__ to the verbatim
365         function name.
366
367 2000-10-31  Tor Lillqvist  <tml@iki.fi>
368
369         * gutils.c
370         * gutils.h
371         * gfileutils.c
372         * gfileutils.h: Actually, g_mkstemp() is better suited in gfileutils.
373
374 2000-10-30  Tor Lillqvist  <tml@iki.fi>
375
376         * configure.in: Check for mkstemp.
377
378         * gutils.c (g_mkstemp): New function. If HAVE_MKSTEMP, just call
379         it, otherwise use code lifted from glibc.
380
381         * gutils.h: Declare it.
382
383         * glib.def: Here, too. Plus two missing functions.
384
385 2000-10-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
386
387         * gcache.h, gcache.c, ghash.h, ghash.c, grel.c, grel.h, gtypes.h:
388         Introduced new function type GEqualFunc to return TRUE for equal
389         params. This is now used instead of GCompareFunc (which should
390         work akin to strcmp) here. This kind of fixes Bug #14412. Note
391         that technically GCompareFunc and GEqualFunc are still the same
392         types, as gint == gboolean.
393
394         * ghash.h, gutils.c: g_int_equal and g_direct_equal now return
395         gboolean to be really become GEqualFunc.
396
397         * gscanner.c, testglib.c, tests/hash-test.c: Some tiny changes to
398         follow the above change.
399
400 2000-10-27  Tor Lillqvist  <tml@iki.fi>
401
402         * makefile.{mingw,msc}.in (glib_OBJECTS): Add gmarkup.
403
404         * glib.def: Add missing functions.
405
406         * tests/makefile.{mingw,msc}.in (TESTS): Add markup-test.
407
408 2000-10-24  Havoc Pennington  <hp@pobox.com>
409
410         * gmarkup.h, gmarkup.c: New module to parse a simple
411         markup language
412         
413         * Makefile.am: add gmarkup.h, gmarkup.c
414
415         * tests/Makefile.am: add markup-test
416
417         * gstring.h (g_string_new_len): new function to create a string
418         with a length
419         (g_string_new): avoid a gratuitous realloc
420
421 2000-10-26  Tor Lillqvist  <tml@iki.fi>
422
423         * makefile.{mingw,msc}.in: Cosmetics.
424
425 2000-10-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
426
427         * gstrfuncs.c (g_strsplit): When the string is ended by a
428         delimiter, return an extra empty string just like for a delimiter
429         at the start of the string. This makes the function behave more
430         consistent and also fixes Bug #15026.
431
432 Tue Oct 24 22:09:14 2000  Tim Janik  <timj@gtk.org>
433
434         * glib-object.h: added newly added gobject/ headers.
435
436         * gmesage.c: print g_message() output to stderr instead of stdout.
437
438 2000-10-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
439
440         * configure.in: Use one = instead of two, which is plainly wrong.
441
442 2000-10-19  Tor Lillqvist  <tml@iki.fi>
443
444         * makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
445         with user32.lib.
446
447         * gspawn-win32.c
448         * gfileutils.c: Make them compile with picky MSVC.
449
450         * gwin32.h: New file. Move Win32-only stuff that isn't related to
451         GIOChannels here from giochannel.h.
452
453         * Makefile.am: Add it here.
454
455         * giochannel.h: Move stuff to gwin32.h.
456
457         * glib.h: On Win32, include gwin32.h.
458
459 Mon Sep 11 10:03:24 2000  Owen Taylor  <otaylor@redhat.com>
460
461         * glib.h convert.c (g_convert_with_fallback): Change
462         ERROR_OTHER to ERROR_FAILED, add some dummy marking with _().
463
464         * docs/reference/glib/glib-sections.txt
465         docs/reference/glib/glib-docs.sgml Update for g_convert,
466         g_unicode_validate.
467
468 2000-10-16  Tor Lillqvist  <tml@iki.fi>
469
470         * glibconfig.h.win32.in: Remove alloca stuff from here. galloca.h
471         takes care of it, correctly.
472
473         * giowin32.c (reader_thread): Some more debugging output.
474         (g_io_channel_win32_poll): Remove unused vars.
475
476         * gfileutils.c: Changes for Win32, with no unistd.h and no
477         S_ISLNK().
478
479         * gspawn-win32.c: Implementation of the g_spwan_* functions for
480         Win32. Due to the general non-Unixness of Win32, much of the
481         functionality that is relatively clean to implement on Unix, is
482         hard to do on Win32. We must use a separate helper program to
483         change directory, close extra file descriptors, redirect the std
484         ones, as needed, and only then start the child process. No child
485         process pid can be returned, unfortunately. Or if we used
486         CreateProcess directly, it probably could. (Now we use the spawnv*
487         functions from msvcrt.)
488
489         * Makefile.am (EXTRA_DIST): Add gspawn-win32.c
490
491         * glib.def: Add new entry points.
492
493         * glib.def
494         * giowin32.c: Remove g_io_channel_win32_wait_for_condition(),
495         g_io_channel_win32_poll() subsumes it.
496
497         * gbacktrace.h: G_BREAKPOINT for MSVC (on the ix86).
498
499         * gwin32.c (g_win32_getlocale): Use "sp" for
500         LANG_CROATIAN+SUBLANG_SERBIAN_LATIN.
501
502         * makefile.{mingw,msc}.in (glib_OBJECTS): Add new files.
503         Add gspawn-win32-helper.exe rule.
504
505         * tests/makefile.{mingw,msc}.in (TESTS): Add shell-test and
506         spawn-test.
507
508         * tests/spawn-test.c: (run_tests): On Win32, don't try to run
509         /bin/sh, but ipconfig (no special significance in choosing that,
510         just a program that outputs something to stdout).
511
512 2000-10-15  Raja R Harinath  <harinath@cs.umn.edu>
513
514         Remove need for acconfig.h, and misc. cleanups.
515         * acglib.m4 (GLIB_SIZEOF): Add 'autoheader' comment to
516         AC_DEFINE_UNQUOTED.
517         (GLIB_BYTE_CONTENTS): Likewise.
518
519         * configure.in: Add 'autoheader' comments to all AC_DEFINE(...)
520         and AC_DEFINE_UNQUOTED(...) lines.
521         Replace AC_MSG_CHECKING/AC_CACHE_VAL with AC_CACHE_CHECK.
522         (AM_PROG_LIBTOOL): Move after AC_PROG_CC.
523         
524         * acconfig.h: Empty out.
525
526         * Makefile.am (BUILT_EXTRA_DIST): New variable.  List 'dist'able
527         files that are created in the builddir.
528         (dist-hook): Handle those files.
529         (libglib_1_3_la_SOURCES): Remove @ALLOCA@.  @ALLOCA@ should only
530         be used in an _LDADD or _LIBADD, since it expands (if necessary)
531         to 'alloca.o'.
532
533         * tests/Makefile.am (BUILT_EXTRA_DIST): New variable.
534         (dist-hook): Handle $(BUILT_EXTRA_DIST).
535         
536 2000-10-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
537
538         * grand.c: Added inline documentation. 
539
540         * gtypes.h, gnode.h, gutils.h: Readded GFreeFunc,
541         g_node_insert_after and g_find_program_in_path resp., which
542         mysteriously disappeared during the glib.h dissection.
543
544 2000-10-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
545
546         * glibconfig.h.win32.in: Adapted accordingly to header separation
547         and GLIB_HAVE_ALLOCA_H renaming.
548
549         * Makefile.am: Added the new headers to glibinclude_HEADERS.
550
551         * glib.h: Forgot to include gerror.h.
552
553         * glib.h, galloca.h, garray.h, gasyncqueue.h, gbacktrace.h,
554         gcache.h, gcompletion.h, gconvert.h, gdataset.h, gdate.h, ghash.h,
555         ghook.h, giochannel.h, glist.h , gmacros.h, gmain.h, gmem.h,
556         gmessages.h, gnode.h, gprimes.h, gquark.h, gqueue.h, grand.h,
557         grel.h, gscanner.h, gslist.h, gstrfuncs.h, gstring.h, gthread.h,
558         gthreadpool.h, gtimer.h, gtree.h, gtypes.h, gutils.h: Split glib.h
559         into many header files mostly according to the resp. *.c-files.
560         
561         * gmacros.h: Added G_BEGIN_DECLS and G_END_DECLS to mean: 'in case
562         of C++: extern "C" { ... }' analogous to glibc __BEGIN_DECLS and
563         __END_DECLS.
564
565         * configure.in, gerror.h, gfileutils.h, gshell.h, gspawn.h,
566         gunicode.h, : Changed guard-macro names to something more
567         consistent.
568
569         * configure.in, *.h: Use G_BEGIN_DECLS and G_END_DECLS.
570
571         * configure.in: Defined GLIB_HAVE_ALLOCA_H instead of including
572         alloca.h in glibconfig.h, GLIB_HAVE_ALLOCA_H is used in glib.h.
573
574         * configure.in: Removed cruft from old threading code.
575
576 2000-10-09  Raja R Harinath  <harinath@cs.umn.edu>
577
578         Work with beta autoconf 2.50.
579         * configure.in (GLIB_MAJOR_VERSION): Use GLIB_DIVERT_BEFORE_HELP
580         instead of AC_DIVERT_PUSH(),AC_DIVERT_POP.
581         (AC_CHECK_HEADERS): Remove redundant AC_DEFINE(HAVE_...).
582         (REALLOC_0_WORKS): Move AC_DEFINE outside AC_CACHE_VAL.
583         (dlopen): Quote nested AC_CHECK_... calls.
584
585         * acglib.m4 (GLIB_TR_SH, GLIB_TR_CPP): Utility macros copied from
586         beta autoconf 2.50.
587         (GLIB_DIVERT_BEFORE_HELP): New macro that works both with autoconf
588         2.13 and beta autoconf 2.50.
589         (GLIB_SIZEOF, GLIB_BYTECONTENTS): Use GLIB_TR_*.
590
591         * Makefile.am (CONFIGURE_DEPENDENCIES): Use this to specify
592         that 'configure' depends on acglib.m4.
593
594 2000-10-09  Havoc Pennington  <hp@redhat.com>
595
596         * Makefile.am, tests/Makefile.am: Add new files.
597
598         * tests/spawn-test.c, tests/shell-test.c: new tests for
599         the shell/spawn stuff
600
601         * gutils.c (g_find_program_in_path): convert a relative
602         program name into an absolute pathname to an existing 
603         executable
604
605         * gspawn.h, gspawn.c: New fork/exec API
606
607         * gshell.h, gshell.c: Shell-related utilities, at the moment
608         simply routines to parse argv and quote/unquote strings
609
610         * guniprop.c (g_unichar_isspace): Return TRUE for the 
611         ASCII space characters isspace() returns TRUE for.
612
613         * gfileutils.c (g_file_get_contents): Convenience function 
614         to slurp entire file into a string and return it. Partially
615         written by Joel Becker.
616         (g_file_test): file test function
617
618 2000-10-06  Tor Lillqvist  <tml@iki.fi>
619
620         * makefile.msc.in: Revamp to be like makefile.mingw.in, make
621         the MSVC build actually work again.
622
623         * gmodule/makefile.msc.in
624         * gobject/makefile.msc.in
625         * gthread/makefile.msc.in: New files, like their mingw counterparts.
626
627         * gmodule/Makefile.am
628         * gobject/Makefile.am
629         * gthread/Makefile.am: Make and distribute them.
630
631         * */makefile.mingw.in: Allow override of GLib version number from
632         the build/win32/module.defs file.
633
634         * glib.def: Add new entry point.
635
636         * tests/gio-test.c (main): Fix the Win32-only code to use current
637         API, g_io_channel_win32_make_pollfd() and g_io_channel_win32_poll().
638
639         Fixes from Hans Breuer:
640
641         * glib.h (struct DIR): Keep the last readdir result cached inside
642         the DIR struct, to enable several DIRs being open simultaneously.
643
644         * gwin32.c (g_win32_readdir): Use the above instead of static.
645
646         * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
647         MSVC happy.
648
649 2000-10-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
650
651         * glib.h: Changed alloca stuff a bit: when we have a working
652         alloca.h, we're not messing with alloca any further. Should fix a
653         bug reported by Bernd Demian <wega@csc-dd.de>.
654
655 2000-09-29  Jonathan Blandford  <jrb@redhat.com>
656
657         * gnode.c (g_node_insert_after): Added function to keep symmetry
658         with g_node_insert_before. 
659
660 2000-09-29  Martin Baulig  <baulig@suse.de>
661
662         Several minor ANSI C fixes.
663
664         Added missing casts:
665         * gdate.c (g_date_fill_parse_tokens): `s = (guchar *) str'.
666         * gmain.c (g_idle_dispatch): `func = (GSourceFunc) source_data'.
667         (g_idle_add_full): `(gpointer) function' in call to g_source_add().
668         * gstrfuncs.c (g_strdown): `s = (guchar *) string' and
669         `return (gchar *) string'.
670         (g_strup): Likewise.
671         (g_strchug): `start = (guchar*) string' in 1st for() argument;
672         `strlen ((gchar *) start)' in call to g_memmove().
673         * gstring.c (g_string_down): `s = (guchar *) string->str'.
674         (g_string_up): Likewise.
675         * gthreadpool.c (stop_this_thread_marker):
676         `(gpointer) &g_thread_pool_new'.
677         * gunidecomp.h (decomp_table[]): Cast all the strings to
678         `unsigned char *'.
679
680         Put text following #endif into comments:
681         * gmain.c: here.
682
683 2000-09-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
684
685         * configure.in, glib.h: Added errorcheck mutexes. These are
686         activated through the preprocessor symbol
687         G_ERRORCHECK_MUTEXES. Need to add an extra word to StaticMutex in
688         order to achieve this. g_(static_)mutex_* functions instrument the
689         mutex operations with mutex name and location, when compiled with
690         -DG_ERRORCHECK_MUTEXES. g_thread_init activates the errorcheck
691         mutexes, when compiled with -DG_ERRORCHECK_MUTEXES.
692
693 2000-09-28  Havoc Pennington  <hp@pobox.com>
694
695         * glib.h (GThreadPriority): fix indentation
696         (GConvertError): generic error is conventionally called
697         _FAILED rather than _OTHER, at least at the moment, 
698         according to GError docs in docs/reference.
699
700         * gconvert.c: s/_OTHER/_FAILED/
701
702 2000-09-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
703
704         * configure.in: Adjusted the test for an unimplemented
705          getpwuid_r. Info from Michael Pruett. This is just a forward
706          merge from glib-1-2.
707
708         * configure.in: Moved determination of G_THREAD_FLAGS before
709         G_THREAD_LIBS. Check for UnixWare systems and set the right cflags
710         and libs there (it needs -Kthread for the native compiler and
711         -pthread for gcc). Thanks to Boyd Lynn Gerber <gerberb@zenez.com>
712         for the info.
713
714         * configure.in: Fail immediately, when no thread library is found,
715         instead of continuing searching for rt libs etc. Changed almost
716         all occurances of $enable_threads to $have_threads, as that's,
717         what we want.
718
719         * tests/threadpool-test.c: Define vars inside the guard to avoid
720         warnings.
721
722         * configure.in, tests/type-test.c: Some platforms support 64 bit
723         'long long', but you can not printf or scanf them. In that case,
724         don't define G_G{UINT|INT}64_FORMAT. Changed the type-test program
725         to reflect that.
726
727         * gutils.c (g_get_current_dir): max_len can't be initialized
728         statically as it might call a function. So do it at first call.
729
730 Tue Sep 26 2000 Elliot Lee <sopwith@redhat.com>
731
732         * glib.h: Add G_GNUC_PURE macro (but don't use it anywhere).
733
734 Mon Sep 25 2000 Elliot Lee <sopwith@redhat.com>
735
736         * garray.c, glib.h, gmem.c: Add a few missing G_GNUC_CONST's.
737
738 2000-09-21  Tor Lillqvist  <tml@iki.fi>
739
740         * makefile.mingw.in: Add gconvert.o. Use libiconv.
741
742         * config.h.win32.in: Define HAVE_GETCWD.
743
744         * glib.def: Add new entry points.
745
746 2000-09-21  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
747
748         * configure.in: The last released automake (1.4) still requires
749         AM_PROG_LIBTOOL instead of AC_PROG_LIBTOOL, so use that for the
750         time being.
751
752 2000-09-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
753
754         * acconfig.h, configure.in, gutils.c: Test for the existence of
755         getcwd, and use it only when found.
756
757         * glib.h: Only use the gcc-variable-macro-argument-extension for
758         gcc >= 2.4. Both patches from Jonas Oberg <jonas@gnu.org>.
759
760 Mon Sep 18 10:58:21 2000  Owen Taylor  <otaylor@redhat.com>
761
762         * gutf8.c: Implement g_ucs4_to_utf8 which was in
763         the header file but not implemented.
764
765 Sun Sep 17 2000 Elliot Lee <sopwith@redhat.com>
766
767         * glib.h configure.in: Define g_alloca() as an
768         alloca-that-works-anywhere.
769
770         * gconvert.c: Fix warnings which could have caused problems on
771         64-bit platforms.
772
773 Sun Sep 10 12:37:40 2000  Owen Taylor  <otaylor@redhat.com>
774
775         * glib.h gconvert.c (g_convert): Havoc Pennington's implementation 
776         of convenient character set conversion using iconv, with
777         the addition of GError. We probably need a fallback that
778         just does conversions between, say UTF-8,16,32 and ISO-8859-1
779         for targets without iconv at all.
780
781         Also add g_convert_with_fallback() to take care of conversions 
782         where we accept some loss going to the target encoding.
783
784 2000-09-10  Havoc Pennington  <hp@redhat.com>
785
786         * gutf8.c (g_utf8_validate): Add this function.
787
788 Sat Sep  9 18:50:42 2000  Owen Taylor  <otaylor@redhat.com>
789
790         * gstrfuncs.c (g_strescape): Add a missing g_return_if_fail().
791
792 Mon Aug 21 03:57:46 2000  Tim Janik  <timj@gtk.org>
793
794         * glib.h (G_BREAKPOINT): for non-i386 and non-alpha, or non gcc,
795         implement BREAKPOINT() as raise (5 /* SIGTRAP */);
796
797         * glib.h: provide user-definable switch G_IMPLEMENT_INLINES,
798         to turn on compilation of inline function implementations provided
799         in header files with extern linkage.
800         wrap inline function implementations into ifdef __G_UTILS_C__, so we
801         really only compile them for gutils.c and not also into arbitrary user
802         code that wants to make use of G_IMPLEMENT_INLINES.
803         adjusted comment apropriately.
804
805         * gutils.c: to turn on compilation of inline functions, provide
806         #define G_IMPLEMENT_INLINES 1 and #define __G_UTILS_C__.
807
808 2000-09-06  Havoc Pennington  <hp@redhat.com>
809
810         * gerror.c: docs
811
812         * docs/reference/glib/tmpl/error_reporting.sgml: docs
813
814 Wed Sep  6 10:28:34 2000  Owen Taylor  <otaylor@redhat.com>
815
816         * guniprop.c gunicode.h gutf8.c: Some inline docs fixes.
817
818 2000-09-06  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
819
820         * glib.h, gtimer.c, tests/thread-test.c:
821         s/G_MICROSEC/G_USEC_PER_SEC/
822
823         * glib.h: Removed G_G{U}{SHORT|INT|LONG}_FORMAT from glib.h, as
824         they are really superfluous.
825
826 Tue Sep  5 20:16:27 2000  Owen Taylor  <otaylor@redhat.com>
827
828         * configure.in docs/Makefile.am: Add gtk-doc checks
829         for newly added docs/reference/ subdir.
830
831 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
832
833         * gthread.c (g_thread_error_quark): Don't use a G_LOCK, as it
834         isn't necessary.
835
836 2000-09-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
837
838         * gstring.c (g_string_free): Use g_return_val_if_fail instead of
839         g_return_if_fail, as the function now is supposed to return
840         something.
841
842         * gerror.c, gerror.h (g_propagte_error): Added function
843         g_propagte_error to hand over local errors to the calling
844         function.
845
846         * glib.h: Include gerror.h before it is used for some g_thread_*
847         functions.
848
849         * gthread.c, gthreadpool.c, glib.h: Enable error reporting for
850         thread creation, namely for g_thread_create, g_thread_pool_new,
851         g_thread_pool_push and g_thread_pool_set_max_threads.
852
853         * tests/thread-test.c, tests/threadpool-test.c: Adapted
854         accordingly.
855
856 2000-08-31  Tor Lillqvist  <tml@iki.fi>
857
858         * glib.h
859         * glib.def
860         * giowin32.c (g_io_channel_win32_make_pollfd): New function, to
861         make a GPollFD from a GIOChannel. Creates the events and starts
862         the reader thread if necessary.
863
864         * glib.h
865         * giowin32.c (g_io_channel_win32_poll): No use for separate
866         condition parameter.
867
868         * gmain.c (g_get_current_time): (Win32): Simplify, use
869         GetSystemTimeAsFileTime().
870
871 2000-08-27  Tor Lillqvist  <tml@iki.fi>
872
873         * giowin32.c (g_io_channel_win32_poll): New function, otherwise
874         like g_io_channel_win32_wait_for_condition(), but accept several
875         GPollFDs.
876         (g_io_channel_win32_wait_for_condition): Call
877         g_io_channel_win32_poll().
878
879         * glib.h: Declare g_io_channel_win32_poll().
880
881         * gwin32.c (g_win32_error_message): Don't believe return value
882         from FormatMessage.
883
884 2000-08-25 Elliot Lee <sopwith@redhat.com>
885
886         * glib.h, gunicode.h, gmodule/gmodule.h:
887         Mark the following functions G_GNUC_CONST (to allow optimization)
888         because their results are a function of only their parameters: 
889         g_int_hash, g_int_equal, g_direct_hash, g_direct_equal,
890         g_quark_to_string, g_date_is_leap_year, g_date_days_in_month,
891         g_date_monday_weeks_in_year, g_date_sunday_weeks_in_year,
892         g_spaced_primes_closest, g_unichar_is*, g_unichar_to*,
893         g_unichar_*digit_value, g_unichar_type
894
895 2000-08-21 Elliot Lee <sopwith@redhat.com>
896
897         * gobject/Makefile.am, gobject/gobject-query.c,
898         gobject/gparamspecs.c: Fix inclusion of config.h
899
900 Mon Aug 21 14:46:23 2000  Owen Taylor  <otaylor@redhat.com>
901
902         * tests/gio-test.c: Fix a couple of trivial bugs that
903         were causing warnings.
904
905 Mon Aug 21 14:39:36 2000  Owen Taylor  <otaylor@redhat.com>
906
907         * glib.h: Use C99 varargs macros where possible 
908         (check __STDC_VERSION__), otherwise, on gcc, use an alternate 
909         form of gcc varargs which is more likely
910         to be supported going forward. (Based on some code
911         from Raja Harinath)
912
913 2000-08-17  Darin Adler  <darin@eazel.com>
914
915         * glib.h:
916         * garray.c: (g_array_free), (g_ptr_array_free),
917         (g_byte_array_free): Return the data left behind.
918         * gstring.c: (g_string_free): Return the data left behind.
919
920         Changed the free calls that leave data behind so they
921         return a pointer to the left-behind data, NULL if told not
922         to leave anything behind. This makes these calls easier
923         to use correctly, without any incompatible API change for
924         callers that don't know about the return value. Of course,
925         it would be even clearer if the free calls weren't dual-purpose
926         in the first place.
927
928 2000-08-12  Tor Lillqvist  <tml@iki.fi>
929
930         * giowin32.c: Some indentation and spacing fixes. Add some more
931         logging.
932         (g_io_win32_add_watch): New function, with common code from
933         g_io_win32_fd_add_watch and g_io_win32_sock_add_watch. Don't start
934         more than one reader thread for a GIOChannel. We should obviously
935         have just one reader thread reading a file descriptor or socket.
936
937 2000-08-10  Havoc Pennington  <hp@redhat.com>
938
939         * gthread-2.0.pc.in (Cflags): don't duplicate glib Cflags
940
941         * gmodule-2.0.pc.in (Cflags): don't duplicate glib Cflags
942
943         * gobject-2.0.pc.in (Cflags): don't duplicate Cflags from glib
944         itself
945
946 2000-08-10  Havoc Pennington  <hp@redhat.com>
947
948         * glib-2.0.pc.in (Cflags): Look in glib-2.0/include for
949         glibconfig.h
950
951 2000-08-07  Tor Lillqvist  <tml@iki.fi>
952
953         * tests/gio-test.c (shutdown_source): New function, that calls
954         g_source_remove(). Check return value of g_source_remove(), and
955         decrement running subprocess counter only if g_source_remove()
956         actually did remove the source.
957
958         (recv_message): Call shutdown_source() on EOF condition. Return
959         FALSE on G_IO_HUP and G_IO_ERR condition. Fix printf format typo.
960
961 Sun Aug  6 20:06:02 2000  Tim Janik  <timj@gtk.org>
962
963         * gmessages.c (g_log_domain_check_free): keep *last updated while
964         running through the domain list, so we don't screw up the removal,
965         patch provided by Gady Kozma <gadykozma@hotmail.com>.
966
967 Sun Aug  6 20:03:41 2000  Tim Janik  <timj@gtk.org>
968
969         * gmessages.c (g_log_remove_handler): keep *last updated while running
970         through the handler list, so we don't screw up the removal.
971
972 Sun Jul 30 16:54:13 2000  Owen Taylor  <otaylor@redhat.com>
973
974         * gunicode.h: Fix stray character
975
976         * gutf8.c (g_unichar_to_utf8): Allow outbuf to be NULL, in
977         which case we just compute the length.
978
979 2000-07-31  Havoc Pennington  <hp@redhat.com>
980
981         * Makefile.am (EXTRA_DIST): forgot to add .pc.in to EXTRA_DIST
982
983 2000-07-31  Havoc Pennington  <hp@redhat.com>
984
985         * glib-2.0.pc.in, gobject-2.0.pc.in, gmodule-2.0.pc.in,
986         gobject-2.0.pc.in: pkg-config data files         
987
988         * Makefile.am: Install/dist the .pc files
989
990         * configure.in: Output the .pc files
991
992 2000-07-31  Tor Lillqvist  <tml@iki.fi>
993
994         * giowin32.c (buffer_read): The code didn't compile (must
995         have been sleepy when committing). "return" instead of "break"
996
997         (g_io_win32_fd_add_watch): Cannot check if the file descriptor is
998         readable by calling ReadFile to read zero bytes. ReadFile blocks
999         on NT even if trying to read nothing at all. So, don't check if
1000         file descriptor is readable; assume this function isn't called
1001         otherwise.
1002
1003 Sun Jul 30 10:44:16 2000  Tim Janik  <timj@gtk.org>
1004
1005         * gmain.c (g_get_current_time): fix tor's recent changes which
1006         got rid of a required variable in the non-windows path.
1007
1008 2000-07-30  Tor Lillqvist  <tml@iki.fi>
1009
1010         Finally, a new and improved IO Channel and condition watch
1011         implementation for Win32. Based on code provided by Craig Setera.
1012
1013         When watching file descriptors, for which there is no select()
1014         like functionality on Win32 that would work on all Win32 platforms
1015         for all types of file descriptors (including anonymous pipes), we
1016         start a new thread that blocks while trying to read from the file
1017         descriptor. When the read returns, a Win32 Event is signalled that
1018         the polling routine eventually notices. Meanwhile, the data being
1019         read is stored in a circular buffer, from where the IO channel's
1020         read() method picks it up.
1021
1022         If the buffer fills up the reading thread has to wait for space
1023         becoming available. For this another Win32 Event is used. The IO
1024         Channel's read() method signals this when it has read some data
1025         out of the buffer.
1026
1027         The separate reader thread(s), and the circular buffer(s) with
1028         associated events mean lots of possibilities for fun parallelism
1029         errors. But it seems to work OK, i.e. GIMP runs.
1030
1031         * gmain.c: Small changes to the Win32 polling function.
1032         (g_main_win32_get_poll_func): New function. Perhaps it would be a
1033         good idea to provide this on all platforms.
1034
1035         * giowin32.c: The bulk of the new implementation.
1036         (g_io_channel_win32_wait_for_condition): New function. To be used
1037         where on Unix one does a select() on the channel's fd, like
1038         libgimp's gimp_extension_process(). Could be provided on all
1039         platforms.
1040
1041         * glib.h: Update documentation for IO Channels on Win32. Remove
1042         the declarations for the as of now obsolete old functions related
1043         to IO Channels for pipes with "wakeup" messages.
1044
1045         * glib.def: Some new functions.
1046
1047         * tests/gio-test.c: New file, to test GIOChannel and main loop.
1048
1049         * tests/Makefile.am
1050         * tests/makefile.mingw.in: Add it.
1051
1052         (Later the same night:)
1053
1054         * giowin32.c: Compile in the debugging code all the time, but only
1055         output debug messages if told so. Add (unadvertised) function to
1056         turn on/off debug messages for a channel.
1057
1058         (buffer_read): Don't loop. It is expected behaviour to return a
1059         short read occasionally, for instance when reading from
1060         pipes. It's the calling code that should loop if it *knows* how
1061         much the writer has written.
1062
1063         * tests/gio-test.c: Correct the program's name in the output.
1064         (recv_message): Loop calling g_io_channel_read() (in a new
1065         function read_all()) until we have all the bytes we want (that we
1066         know the writer has written/will write).
1067
1068 Thu Jul 27 05:15:11 2000  Tim Janik  <timj@gtk.org>
1069
1070         * gstrfuncs.c (g_strlcpy, g_strlcat): completed tor's fix
1071         to cover both #ifdef branches.
1072
1073 2000-07-26  Tor Lillqvist  <tml@iki.fi>
1074
1075         * gstrfuncs.c (g_strlcpy, g_strlcat): Return 0 on error, not NULL.
1076
1077         * glib.def: Add g_strlcpy, g_strlcat.
1078
1079         * glibconfig.h.win32.in: Add gsize and gssize.
1080
1081 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
1082
1083         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
1084         updates the license headers to the GNU Lesser General Public License,
1085         as well as updating the copyright year to 2000.
1086
1087 Wed Jul 26 05:47:48 2000  Tim Janik  <timj@gtk.org>
1088
1089         * configure.in:
1090         * testglib.c:
1091         * gstrfuncs.c:
1092         * glib.h: added g_strlcat() and g_strlcpy() wrappers, supplied by
1093         David Wheeler <dwheeler@ida.org>:
1094
1095         * glib.h, gstrfuncs.c: added g_strlcpy and g_strlcat to support
1096           safe manipulation of fixed-length string buffers.
1097           These functions were originally developed by Todd Miller to simplify
1098           development of security-related programs, and
1099           are available on many (but not all) Unix-like systems,
1100           including OpenBSD, FreeBSD, and Solaris.  See
1101           ftp://ftp.openbsd.org/pub/OpenBSD/src/lib/libc/string/strlcpy.3
1102           and http://www.openbsd.org/security.html.
1103           If there's a strlcpy/strlcat on the system, it's called, otherwise
1104           an implementation is provided.
1105
1106         * testglib.c: Added tests for g_strlcpy, g_strlcat.
1107
1108 Wed Jul 26 05:03:24 2000  Tim Janik  <timj@gtk.org>
1109
1110         * acglib.m4 (GLIB_SIZEOF): include <stdlib.h> and <stddef.h> if
1111         STDC_HEADERS is defined.
1112
1113         * glib.h:
1114         * glibconfig.h: define gsize and gssize in terms of GLIB_SIZEOF_SIZE_T
1115
1116         * glib.h (g_return_if_reached): applied darin's fix for copy'n
1117         paste error in the macro implementation.
1118
1119 Wed Jul 26 00:46:03 2000  Tim Janik  <timj@gtk.org>
1120
1121         * glib.h: applied patch from Darin Adler <darin@eazel.com> which
1122         supplies g_return_if_reached(), g_return_val_if_reached() and
1123         g_critical().
1124
1125 2000-07-22  Tor Lillqvist  <tml@iki.fi>
1126
1127         * build-dll: Fix resource handling, the resource file got left out
1128         from the DLL after all... Remove the WIN32APIHEADERS, not needed
1129         with current windres.
1130
1131         * glib.def: Add new functions.
1132
1133 2000-07-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1134
1135         * gutils.c, glib.h: Mark the functions g_basename and g_dirname
1136         deprecated. They will issue an warning once, when compiled with
1137         G_ENABLE_DEBUG, but continue to work as before. Instead the
1138         functions g_path_get_basename and g_path_get_dirname should be
1139         used, which BOTH return newly allocated memory, that has to freed
1140         by g_free. The new g_path_get_basename now strips trailing slashes
1141         from the path. This fixes #5097. For discussion see
1142         http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
1143
1144         * gwin32.c, testglib.c, tests/dirname-test.c: Use the new
1145         functions instead of the old ones.
1146
1147         * ghash.c, gscanner.c, glib.h: Mark the functions
1148         g_hash_table_freeze, g_hash_table_thaw and thus
1149         g_scanner_freeze_symbol_table and g_scanner_thaw_symbol_table
1150         deprecated. They will issue an warning once, when compiled with
1151         G_ENABLE_DEBUG. This fixes Bug #3883. For discussion see
1152         http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
1153
1154 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1155
1156         * configure.in, glib.h: glibconfig.h and glib.h now include files
1157         outside of the extern "C" block. Makes some C++ compiler
1158         happy. Reported by Denis Vakatov <vakatov@peony.nlm.nih.gov>.
1159
1160 Sat Jul 15 23:49:03 2000  Owen Taylor  <otaylor@redhat.com>
1161
1162         * glib/glib.texi: Remove incomplete start of info file -
1163         real docs are in RDP.   
1164
1165 Sat Jul 15 22:44:22 2000  Owen Taylor  <otaylor@redhat.com>
1166
1167         * configure.in: Add build/Makefile and 
1168         build/win32/Makefile to AC_OUTPUT() so things build
1169         again.
1170
1171 Sat Jul 15 09:11:46 2000  Tim Janik  <timj@gtk.org>
1172
1173         * gstrfuncs.c (g_strncasecmp): fixed an off by 0 error (yeah,
1174         the function went off when the while (n--) loop failed due to
1175         n==0 ;), reported by Jean-Louis HAMEL <jlhamel@club-internet.fr>.
1176
1177 2000-07-15  Tor Lillqvist  <tml@iki.fi>
1178
1179         * Makefile.am (SUBDIRS): Include the "build" module in GLib, too,
1180         to make it more self-contained. If your CVS client doesn't
1181         automatically get it, do a cvs get build in glib.
1182
1183         * */makefile.mingw.in: Include make.mingw from build in the glib
1184         source directory.
1185
1186 Fri Jul 14 16:26:35 2000  Owen Taylor  <otaylor@redhat.com>
1187
1188         * Release 1.3.1
1189
1190 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
1191
1192         * configure.in Makefile.am glib-config.m4 glib.m4: Move
1193         glib-config to glib-config-2.0 move glib.m4 to
1194         glib-2.0.m4
1195
1196         * Makefile.am gobject/Makefile.am gmodule/Makefile.am
1197         gthread/Makefile.am tests/Makefile.am: Change 
1198         library names to libglib-1.3.la, etc, so that we
1199         can distinguish glib-1.2 and glib-2.0 on the linkline.
1200
1201         * Makefile.am gobject/Makefile.am gmodule/Makefile.am:
1202         Move include files into /usr/include/glib-2.0.
1203
1204 Thu Jul  6 18:54:49 2000  Owen Taylor  <otaylor@redhat.com>
1205
1206         * docs/Makefile.am (EXTRA_DIST): Remove info files
1207         from the build.
1208
1209 2000-07-14  Tor Lillqvist  <tml@iki.fi>
1210
1211         * glib.def: Add g_error functions.
1212
1213         * makefile.mingw.in: Add gbacktrace.o.
1214
1215         * gbacktrace.c: No need to include <process.h>.
1216
1217 2000-07-12  Havoc Pennington  <hp@redhat.com>
1218
1219         * glib.h: #include <gerror.h>
1220
1221         * Makefile.am (include_HEADERS): Add gerror.h
1222         (libglib_la_SOURCES): Add gbacktrace.c
1223
1224         * gbacktrace.c: Move g_on_error_query() in here (moved on the 
1225         server, so history is preserved)
1226
1227         * gerror.h: GError interface
1228
1229         * gerror.c: GError implementation replaces stuff that's now in 
1230         gbacktrace.c
1231
1232 Sun Jul  9 21:20:45 2000  Owen Taylor  <otaylor@redhat.com>
1233
1234         * gunicode.h: Include stddef.h instead of stdlib.h
1235
1236 2000-07-08  Tor Lillqvist  <tml@iki.fi>
1237
1238         * glib.h (GLIB_VAR): Rename the GUTILS_C_VAR macro to GLIB_VAR.
1239
1240         * gunicode.h: Mark the g_utf8_skip array with GLIB_VAR.
1241
1242         * glib.def: Add two missing entry points.
1243
1244 Thu Jul  6 15:35:28 2000  Owen Taylor  <otaylor@redhat.com>
1245
1246         * Release 1.3.1
1247
1248         * Makefile.am (EXTRA_DIST): Dist fixes.
1249
1250         * configure.in: Moderate the warnings just a little bit.
1251
1252 2000-07-05  Tor Lillqvist  <tml@iki.fi>
1253
1254         * README.win32: Update.
1255
1256 Mon Jul  3 17:58:02 2000  Owen Taylor  <otaylor@redhat.com>
1257
1258         * gutf8.c (g_utf8_get_charset_internal): Fix up
1259         to correspond to configure.in checks.
1260
1261 Mon Jul  3 17:18:19 2000  Owen Taylor  <otaylor@redhat.com>
1262
1263         * glib.h: Comment g_get_codeset() out of the header file
1264         temporarily. (Very similar to g_get_charset(), need
1265         to resolve the two.)
1266
1267 2000-07-01  Tor Lillqvist  <tml@iki.fi>
1268
1269         * glib.def: Add new entry points.
1270
1271         * makefile.{mingw,msc}.in: Add the new Unicode object files.
1272
1273 Thu Jun 29 15:57:28 2000  Owen Taylor  <otaylor@redhat.com>
1274
1275         * NEWS: updated
1276
1277         * Makefile.am: added snapcheck target to go along with snapshot
1278
1279         * gstring.c glib.h (g_string_hash): Add g_string_hash to 
1280         go along with g_string_equal.
1281
1282 Tue Jun 27 12:40:23 EDT 2000  David A. Wheeler <dwheeler@dwheeler.com>
1283
1284         * glib.h: Added g_string_equal for comparing GStrings;
1285         changed g_str_equal so it returns gboolean (instead of gint).
1286
1287         * gstring.c: Modified GString implementation to support embedded
1288         ASCII NUL ('\0') characters, and implemented g_string_equal.
1289
1290         * testglib.c tests/string-test.c: Added tests for g_string_equal
1291         and tests for proper handling of embedded ASCII NUL characters.
1292
1293 Wed Jun 28 22:52:00 2000  Owen Taylor  <otaylor@redhat.com>
1294
1295         * Makefile.am (libglib_la_SOURCES): Fix
1296         gunichartable.h => gunichartables.h. (From Eric Limings)
1297
1298 Fri Jun 23 17:20:26 2000  Tim Janik  <timj@gtk.org>
1299
1300         * glib.h: define gstring in terms of gchar*. this typedef reflects
1301         the type name of the primitive G_TYPE_STRING in the gobject module.
1302
1303 Wed Jun 21 12:09:03 2000  Owen Taylor  <otaylor@redhat.com>
1304
1305         * gunicode.h gutf8.c guniprop.c gunidecomp.[ch] gunichartables.h
1306         Makefile.am glib.h: Initial pass at adding unicode support
1307         functions. A few things still need to be implemented, a bit
1308         of cleanup needs to be done, tests need to be added, and 
1309         the docs need to be finished, but this should allow replacing
1310         most or all use of libunicode.
1311
1312 2000-06-06  Tor Lillqvist  <tml@iki.fi>
1313
1314         * giowin32.c (g_io_channel_win32_pipe_readable): If we are
1315         watching the same pipe for different conditions (with different
1316         callbacks), check them all. Only call the callback for G_IO_IN
1317         from here. (This bug popped up when a watch for G_IO_ERR|G_IO_HUP
1318         was added to gimplib.)
1319
1320 2000-05-30  Tor Lillqvist  <tml@iki.fi>
1321
1322         * gutils.c (g_locale_get_codeset): Implement on Win32.
1323
1324         * glib.def: Add g_get_codeset.
1325
1326         * tests/Makefile.am (EXTRA_DIST): makefile.cygwin* has been
1327         renamed to makefile.mingw*.
1328
1329 Tue May 30 16:01:32 2000  Owen Taylor  <otaylor@redhat.com>
1330
1331         * glib.h gutils.c: Move the g_locale_get_codeset() up in the 
1332         header file to correspond to to comments about memory
1333         management. Rename to g_get_codeset() to avoid 
1334         polluting the g_locale_* namespace, which probably
1335         would have g_locale_get_codeset (GLocale *locale).
1336         Add a doc comment.
1337
1338 Mon May 29 14:10:35 2000  Owen Taylor  <otaylor@redhat.com>
1339
1340         * gutils.c (g_locale_get_codeset): Add function to get the 
1341         codeset name for the current locale.
1342
1343         * configure.in acconfig.h: Add check for nl_langinfo(CODESET);
1344
1345 Fri May 19 11:39:29 2000  Tim Janik  <timj@gtk.org>
1346
1347         * gutils.c (g_snprintf):
1348         (g_vsnprintf): added argument assertments.
1349
1350         * gstring.c (g_string_assign): added argument assertments.
1351         (g_string_truncate): make len a guint.
1352
1353 Fri May 19 09:00:44 2000  Tim Janik  <timj@gtk.org>
1354
1355         * gmem.c (g_free): fixed SIZEOF_LONG==4 assumption with
1356         ENABLE_MEM_CHECK, from Art Haas <ahaas@neosoft.com>.
1357
1358         * gslist.c (g_slist_reverse): shut up compiler.
1359
1360         * gscanner.c (g_scanner_get_token_ll): removed inline assignment.
1361
1362         * garray.c: remove index>=0 checks for unsigned indices.
1363
1364         * gmain.c (g_idle_prepare): timeout assignment fix.
1365
1366         * gtree.c (g_tree_node_rotate_right): shut up compiler.
1367
1368 2000-05-13  Tor Lillqvist  <tml@iki.fi>
1369
1370         * makefile.mingw.in
1371         * tests/makefile.mingw.in
1372         * build-dll: Rename makefile.cygwin(.in) to
1373         makefile.mingw(.in), which better describes what it is. Move the
1374         build of gmodule, gthread and gobject DLLs to makefiles in those
1375         directories. Move resource file handling and build number bump to
1376         build-dll, where it sits much cleaner.
1377
1378         * README.win32
1379         * Makefile.am (EXTRA_DIST): Update accordingly.
1380
1381         * glib.h: Add G_PI, G_PI_2, G_PI_4, G_E, G_LN2, G_LN10 and
1382         G_SQRT2. M_PI etc aren't necessarily in <math.h> in strict ISO C
1383         implementations.
1384
1385         * glib.def: Add g_strcanon.
1386
1387         * gtree.c (g_tree_node_rotate_left): Remove unused variables.
1388
1389         * gwin32.c (g_win32_opendir): Remove unneeded statement.
1390
1391 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
1392
1393         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
1394         broken and require an empty arg, give it to them.
1395
1396 Fri Apr 28 23:54:35 2000  Tim Janik  <timj@gtk.org>
1397
1398         * setup things for a new sub-library libgobject:
1399
1400         * Makefile.am (SUBDIRS): added gobject
1401
1402         * glib-config.in: feature -lgobject.
1403
1404         * configure.in (AC_OUTPUT): generate gobject/Makefile.
1405
1406         * glib.m4 (AM_PATH_GLIB): feature gobject module.
1407
1408         * glib.spec.in: added %{prefix}/lib/libgobject-1.3.so.*
1409
1410 Fri Apr 28 21:41:49 2000  Tim Janik  <timj@gtk.org>
1411
1412         * glib.h: added G_STRLOC macro.
1413         G_STRUCT_OFFSET(): signedness corrections.
1414         (G_CSET_DIGITS): list 0-9.
1415         * gscanner.c (g_scanner_config_template): use G_CSET_DIGITS.
1416
1417         * glib.h: 
1418         * gstrfuncs.c:
1419         (g_strdown):
1420         (g_strup):
1421         (g_strreverse): return the modified string instead of void, so
1422         calls to these functions can be nested.
1423         (g_strcanon): new function, canonicalizes string according to
1424         a given character set.
1425
1426 Fri Apr 28 19:45:16 2000  Tim Janik  <timj@gtk.org>
1427
1428         * gasyncqueue.c (g_async_queue_unref): get rid of an unused variable.
1429
1430 Wed May 10 19:52:44 2000  Owen Taylor  <otaylor@redhat.com>
1431
1432         * glib.m4: Print found version when test succeeds.
1433
1434 2000-05-04  Tor Lillqvist  <tml@iki.fi>
1435
1436         * makefile.cygwin.in
1437         * tests/makefile.cygwin.in: Include the common makefile snippet
1438         from ../build/win32.
1439
1440         Maybe CVSROOT/modules should be changed so that the 'build' module
1441         is included within the glib module (and gtk+, and gimp, and maybe
1442         others later), in the same way as the 'macros' module is included
1443         in lots of GNOME CVS modules?
1444
1445 2000-05-02  Tor Lillqvist  <tml@iki.fi>
1446
1447         * glib.def: Add new functions.
1448
1449         * makefile.{cygwin,msc}.in (glib_OBJECTS): Add new object files.
1450
1451         * tests/makefile.{cygwin,msc}.in: Add threadpool-test.
1452
1453 2000-04-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1454
1455         * gasyncqueue.c: New File implementing an asynchronous queue to be
1456         used for asynchronous inter-thread communication.
1457
1458         * gthreadpool.c: New File implementing a thread pool to be used
1459         for distributing work among several threads. 
1460
1461         * glib.h: Added the type and function declarations for these two
1462         types.
1463
1464         * tests/threadpool-test.c: New File implementing a test for the
1465         thread pool. This also checks the asynchronous queue underlying
1466         the thread pool.
1467
1468         * tests/Makefile.am: Changed accordingly.
1469
1470 2000-04-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1471
1472         * configure.in: Look for both pthread_create and pthread_join in
1473         the thread library. Some systems define one of them, but not both
1474         in libc. Arghh. Now we really start a thread and join it later and
1475         check, whether the thread to actually ran.
1476
1477         * glib.h, gcache.c, gtree.c: Changed the 'value' parameter of
1478         g_cache_remove from gpointer to gconstpointer. Dito for the 'key'
1479         parameter of g_tree_lookup and g_tree_remove and the 'data'
1480         parameter of g_tree_search. This function now takes a function of
1481         type GCompareFunc instead of GSearchFunc. This fixes Bug
1482         #8267. Thanks to Juan Toledo <toledo@users.sourceforge.net> for
1483         pointing that out.
1484
1485         * glib.h: Removed declaration of GSearchFunc.
1486
1487         * gmem.c: s/GSearchFunc/GCompareFunc/.
1488
1489 2000-04-19  Tor Lillqvist  <tml@iki.fi>
1490
1491         * glib.def: Update entry point list.
1492
1493 2000-04-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1494
1495         * glib.h (G_TRYLOCK): Made the debugging G_TRYLOCK call also work
1496         for compilers with funny G_STMT_(START|END) macros.
1497
1498         * tests/thread-test.c: Implemented a check for that.
1499
1500         * gutils.c (g_getenv): Changed the win32 part of this function to
1501         be thread safe and to make the returned environment string
1502         persistent to match the UN*X behavior. This is again a response to
1503         Bug #8983.
1504
1505         * glib.h (G_LOCK_NAME): Removed parentheses around the lock name,
1506         as that seems to cause problems for some compilers and really
1507         isn't necessary.
1508
1509 Wed Apr 19 08:32:32 2000  Tim Janik  <timj@gtk.org>
1510
1511         * gscanner.c (g_scanner_new): make sure that
1512         scanner->config->cset_skip_characters is "" instead of NULL, so we
1513         don't segfault further on.
1514
1515 2000-04-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1516
1517         * glib.h, glist.h, gslist.h: Changed the 'data' parameters from
1518         gpointer to gconstpointer for the functions
1519         g_(list|slist)_(remove|find|find_custom|index), as they do not
1520         change this parameter. This fixes bug #4836.
1521
1522         * glib.h: Changed comment for g_getenv to reflect, that the
1523         returned memory must not be freed. Fixes bug #8983.
1524
1525 2000-04-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1526
1527         * configure.in, acconfig.h: Add configure test for garbage
1528         collector friendliness for GLib. If enabled, ENABLE_GC_FRIENDLY
1529         will be defined.
1530
1531         * garray.c, ghash.c, glist.c, gmain.c, gmem.c, gnode.c, gqueue.c,
1532         gslist.c, gtree.c: If ENABLE_GC_FRIENDLY is defined, NULLify all
1533         memory released by the user, but cached by GLib. This lets a
1534         garbage collector have a more correct view of the actually used
1535         memory.
1536
1537         * garray.c, glib.h: Added g_(array|ptr_array|byte_array)_sized_new
1538         functions, that reserve a certain amount of memeory for the array
1539         at creation time to avoid reallocation. Fixes bug #6707 from
1540         Charles Kerr <ckerr@osserver1.nssl.noaa.gov>.
1541
1542         * glib.h, gqueue.c, tests/queue-test.c (main): Renamed
1543         g_queue_create to g_queue_new in conformance to all other GLib
1544         data types.
1545
1546 2000-04-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1547
1548         * grand.c (g_rand_new): Fixed bug. Thanks to Marko Kreen
1549         <marko@l-t.ee> for reporting that.
1550
1551 2000-03-26  Tor Lillqvist  <tml@iki.fi>
1552
1553         * README.win32: Tell about using the mingw-based gcc, which is
1554         much easier than modifying the cygwin gcc to product mingw code
1555         for the msvcrt runtime.
1556
1557         * makefile.cygwin.in (WIN32APIHEADERS): Kludge to make it work
1558         with a "pure" mingw gcc, too.
1559
1560 2000-03-24  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1561
1562         * garray.c: Made GArray behave correctly. Now zero_terminated
1563         really means, that the element array->data[array->len] exists and
1564         is zeroed, and clear means that any unassigned elements obtained
1565         through g_array_set_size (the only way to get unassigned elements
1566         AFAICT) are zeroed. Added some macros to make the code more
1567         obvoius. Also made GPtrArray zero elements after
1568         g_ptr_array_set_size. This is done in a portbale way (assignment
1569         of NULL instead of just memsetting it to zero), though that might
1570         be more portability than we actually want.
1571
1572         * Makefile.am, gthread/Makefile.am, gmodule/Makefile.am,
1573         tests/Makefile.am: Added various win32 related *.in files to
1574         EXTRA_DIST to let 'make distcheck' procude all the corresponding
1575         files, which it silently fails to do currently.
1576
1577 2000-03-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1578
1579         * configure.in: After finding the right thread library (containing
1580         e.g. pthread_create) we now search for the right realtime library
1581         (containing e.g. sched_get_priority_max). Makes the output of the
1582         thread related libraries correct. 
1583
1584         * gtimer.c (g_usleep): The current implementation of g_usleep
1585         (simply calling select) doesn't work reliable for multi-threaded
1586         programs on some platforms (bad omen for the main loop....), so I
1587         changed the implementation for thread-using programs to wait for a
1588         GCond for the specified amount of time (NB: sleep and usleep are
1589         not MT-safe in general, because they often use signals).
1590
1591 Wed Mar 22 16:49:57 2000  Owen Taylor  <otaylor@redhat.com>
1592
1593         * gmem.c (g_mem_chunk_area_compare): Fix indentation.
1594
1595 2000-03-22 Elliot Lee <sopwith@redhat.com>
1596
1597         * gmem.c (g_mem_chunk_area_compare): Fix 64-bitness bug in
1598         comparing two pointers more than 4G apart.
1599
1600 2000-03-22  Tor Lillqvist  <tml@iki.fi>
1601
1602         * gutils.c: Move Win32-only includes after inclusion of glib.h, so
1603         that G_OS_WIN32 is defined.
1604
1605         * glibconfig.h.win32.in: Add GSystemThread.
1606
1607 2000-03-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1608
1609         * gutils.c (g_get_current_dir): Ok, Marcus Brinkmann
1610         <Marcus.Brinkmann@ruhr-uni-bochum.de> convinced me, that 128 KB
1611         path length might not be enough for the HURD. So I changed the
1612         loop to at least avoid an integer overflow, which could happen at
1613         beyond 2GB size ;-)
1614
1615         * configure.in: Test for sched_yield as the native yield function
1616         first. Corrected typo g_thread_sleep -> g_usleep. Corrected
1617         message for the pthread_create test. Negative Priorities are
1618         allowed (and used on Solaris), so consider
1619         sched_get_priority_min failed only if it returns -1, not <0. Check
1620         for sched_get_priority_min also in -lrt, if not found in -lpthread
1621         alone and add -lrt to G_THREAD_LIBS then. Remove special case
1622         handling of priorities for older solaris versions and posix
1623         threads. Thanks to Wan-Teh Chang <wtc@netscape.com> for suggesting
1624         some of those changes.
1625
1626         * config.guess, config.sub, ltconfig, ltmain.sh:
1627         Upgrade to libtool 1.3.4.
1628
1629 2000-03-21  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1630
1631         * glib.h, configure.in, gutils.h: always define G_GNUC_EXTENSION,
1632         even when not needed by GLib. That's actually also the way, the
1633         GLib reference manual describes that macro. Therefore I had to
1634         remove the lonesome #include <glibconfig.h> in gutils.c, which
1635         doesn't seem to be needed there however. This change should make
1636         Ben Gertzfield <che@debian.org> happy.
1637
1638         * gutils.c: Furthermore two warnings in gutils.c were voided,
1639         which crept in due to my last change.
1640
1641         * gutils.c (g_get_current_dir): Allocate only up to 128KB for a
1642         pathname. While this is an arbitrary value just like 2048, it
1643         seems to be enough (after all, even 4GB is an arbitrary value).
1644
1645 2000-03-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1646
1647         * gmain.c (g_main_poll): Warn in case of an error during the call
1648         to poll(2). Closes Bug#7564 as reported by David Helder
1649         <dhelder@umich.edu>.
1650
1651         * gutils.c (g_get_current_dir): Make g_get_current_dir work on
1652         systems with unlimited pathname length like the HURD (It worked
1653         there before, but only for pathes shorter than 2048). Closes
1654         Bug#4525 as reported by Marcus Brinkmann
1655         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
1656
1657 2000-03-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1658
1659         * giounix.c (g_io_unix_write, g_io_unix_read): Interpret EINTR as
1660         G_IO_ERROR_AGAIN.
1661
1662 2000-03-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1663
1664         * configure.in: Added the missing POSIX_NO_YIELD and
1665         POSIX_NO_PRIORITIES warning messages.
1666
1667         * configure.in: Use AC_TRY_RUN instead of AC_TRY_LINK, to test for
1668         real thread support. On solaris pthread_create can be linked to
1669         even in -lc, but it doesn't work then.
1670
1671         * configure.in: Don't use priorities for threads, when the
1672         minimal/maximal priorities couldn't be determined at configure
1673         time.
1674
1675         * configure.in, gthread.c: Always define GSystemThread in
1676         glibconfig.h to represent a system thread.
1677
1678         * configure.in: Do not use native recursive threads, when
1679         possibe. We use some features, that they do not expose (namely the
1680         depth counter).
1681
1682         * glib.h, gthread.c: Redefined GStaticRecMutex. The functions are
1683         now implemented in a different way, which should be way
1684         faster. Alsothere are now functions g_static_rec_mutex_unlock_full
1685         and g_static_rec_mutex_lock_full to leave/enter a recursive mutex
1686         completly.
1687
1688         * gthread.c (g_thread_self): Do not test the system_thread to be
1689         non-zero to speed things up.
1690
1691         * gthread.c (g_mutex_init): Therefore set the system_thread of the
1692         main thread here.
1693
1694         * tests/thread-test.c: Rerun all tests once again, but this time
1695         we fool the system into thinking, that the available thread system
1696         is not native, but userprovided.
1697
1698 2000-03-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1699
1700         * gqueue.c (g_queue_push_tail_link, g_queue_push_head_link): We
1701         want the next and prev pointer of the inserted link to be NULL.
1702
1703 2000-03-06  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1704
1705         * configure.in: Another small change to the pthread_.. search
1706         pattern. Should work *now* for AIX.
1707
1708 2000-03-04  Tor Lillqvist  <tml@iki.fi>
1709
1710         * gwin32.c (g_win32_error_message): New function that returns the
1711         message string for a Win32 error code.
1712
1713         * glib.h: Declare it.
1714
1715         * glib.def: Export it, plus g_node_copy.
1716
1717 2000-03-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1718
1719         * configure.in: Make the search for pthread_attr_... prototypes
1720         find names at the start of a line also, like it is on AIX. Thanks
1721         to Valdis Kletnieks <Valdis.Kletnieks@vt.edu> for the info.
1722
1723 Wed Mar  1 10:39:39 2000  Tim Janik  <timj@gtk.org>
1724
1725         * gslist.c (g_slist_reverse): minor optimization.
1726
1727         * testglib.c (g_node_test): added a couple of tests for
1728         g_node_copy().
1729
1730         * glib.h:
1731         * gnode.c (g_node_copy): new function to copy subtrees,
1732         supplied by dbsears@ix.netcom.com.
1733         changed iterator to walk the children list backwards, so
1734         we get down from O(n^2) to O(n).
1735
1736         * gnode.c (g_node_first_sibling): applied patch from
1737         dbsears@ix.netcom.com to optimize access if node->parent
1738         is present.
1739
1740         * gutils.c (g_get_any_init): backed out HAVE_PW_GECOS check around
1741         assignment of g_real_name, sicne HAVE_PW_GECOS is never defined and
1742         thus breaks the original code.
1743
1744         * merged changes from 1.2.7.
1745
1746 Fri Jan 28 11:37:41 2000  Owen Taylor  <otaylor@redhat.com>
1747
1748         Bug #4156 - Changes vaguely modelled after Scott Gifford's patch
1749
1750         * gtimer.c (g_timer_elapsed): Never report negative times -
1751         clip times to 0.
1752
1753         * gmain.c (g_timeout_prepare): Guard against unexpected
1754         clock shifts by never setting a timeout of more than
1755         data->interval msecs.
1756
1757 2000-02-27  Tor Lillqvist  <tml@iki.fi>
1758
1759         * glib.def: Add new functions.
1760
1761 2000-02-23  Tor Lillqvist  <tml@iki.fi>
1762
1763         * README.win32: Add a missing step to the setup instructions for
1764         gcc-2.95.2. Thanks to Arnaud Charlet.
1765
1766         * glib.def: Add missing entry point.
1767
1768 2000-02-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1769
1770         * configure.in: Changed GCC version test to also accept major
1771         versions > 2. Thanks to Ben Gertzfield <che@debian.org> for
1772         pointing this out.
1773
1774 Thu Feb 17 12:53:44 2000  Tim Janik  <timj@gtk.org>
1775
1776         * gstring.c: changed g_str_hash() to a 31 bit version based on
1777         a submission by Karl Nelson and hand optimized ad absurdum by
1778         various people ;)
1779
1780         * gstring.c: applied patch from havoc for new gstring functions,
1781         added some more sanity checks, coding style fixups.
1782
1783 2000-02-13  Havoc Pennington  <hp@pobox.com>
1784
1785         * tests/string-test.c (main): Add tests for the new GString 
1786         features
1787
1788         * testglib.c (main): Add tests for the new GString features
1789
1790         * gstring.c (g_string_insert_len): New function; insert 
1791         a given length of string at a given position. 
1792         (g_string_append): reimplement in terms of g_string_insert_len
1793         (g_string_append_len): new function
1794         (g_string_insert_c): accept -1 for "pos" arg to mean "append"
1795         (g_string_append_c): reimplement in terms of g_string_insert_c
1796         (g_string_prepend): reimplement in terms of g_string_insert_len
1797         (g_string_prepend_len): new function
1798         (g_string_prepend_c): reimplement in terms of g_string_insert_c
1799         (g_string_insert): reimplement in terms of g_string_insert_len
1800
1801         * glib.h: Declare g_string_insert_len, g_string_append_len,
1802         g_string_prepend_len
1803
1804 Sun Feb 13 08:16:47 2000  Tim Janik  <timj@gtk.org>
1805
1806         * configure.in: wtf??? someone destroyed the configure.in, reverting to
1807         an older version from Feb 4 which apears to still work.
1808
1809 2000-02-07  Tor Lillqvist  <tml@iki.fi>
1810
1811         * gmodule.rc.in gthread.rc.in: Move to corresponding subdirectories.
1812
1813         * Makefile.am
1814         * gmodule/Makefile.am
1815         * gthread/Makefile.am: Change accordingly.
1816
1817         * makefile.cygwin: Corresponding changes, some cleanup.
1818
1819 2000-02-05  Tor Lillqvist  <tml@iki.fi>
1820
1821         * glib.rc.in gmodule.rc.in gthread.rc.in: New files, for putting
1822         version info in the DLLs on Win32.
1823
1824         * Makefile.am: Generate corresponding *.rc files and distribute
1825         them.
1826
1827         * makefile.cygwin.in: Add rules to automatically bump a "build
1828         number" in the version info in the rc files each time the DLL is
1829         built. But do this only for the person who releases binaries. If
1830         others build the DLLs, the build number is set to zero.
1831
1832 Fri Feb  4 19:36:05 2000  Tim Janik  <timj@gtk.org>
1833
1834         * glib.h: 
1835         * gdataset.c: return stolen data from g_datalist_id_remove_no_notify()
1836         and g_dataset_id_remove_no_notify() to avoid second lookup for common
1837         use.
1838
1839 2000-02-01  Tor Lillqvist  <tml@iki.fi>
1840
1841         * glib.h
1842         * gstrfuncs.c (g_filename_to_utf8, g_filename_from_utf8): New
1843         functions for conversion between UTF-8 and the encoding expected
1844         by C runtime functions like open() and stat(), and returned by
1845         readdir().
1846
1847         Implement them on Win32 where we use the system "ANSI" codepage,
1848         which might be single-byte or double-byte. On Unix, just skip the
1849         issue for now and provide dummy implementations that return a copy
1850         of the argument.
1851
1852         * README.win32
1853         * build-dll
1854         * glib.def: Minor updates.
1855
1856 Wed Jan 26 05:24:38 2000  Tim Janik  <timj@gtk.org>
1857
1858         * glib.h:
1859         * gmain.c: s/current_time/dispatch_time/ for the dispatch() handlers.
1860         refetch the current time after invocation of poll() to cover up for
1861         the time spent in that function call.
1862
1863 Fri Jan 21 10:18:24 2000  Owen Taylor  <otaylor@redhat.com>
1864
1865         * glib.h (G_N_ELEMENTS): Added G_N_ELEMENTS macro to determine
1866         the number of elements in an array.
1867
1868 Sun Jan  9 13:28:36 2000  Tim Janik  <timj@gtk.org>
1869
1870         * gstrfuncs.c (g_strtod): correctly fetch the current locale,
1871         fix from owen.
1872
1873 1999-12-16  Tor Lillqvist  <tml@iki.fi>
1874
1875         * gmodule/gmodule-win32.c: Use FormatMessage to translate system
1876         error codes into textual messages.
1877
1878 1999-11-25  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1879
1880         * glib.h (G_TRYLOCK): This of course should return TRUE in a
1881         program with a thread-disabled GLib.
1882
1883 1999-11-18  Tor Lillqvist  <tml@iki.fi>
1884
1885         * glib.def: g_strjoin was missing.
1886
1887 1999-11-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1888
1889         * acconfig.h, config.h.win32.in, configure.in: Renamed
1890         GLIB_SIZEOF_PTHREAD_T to GLIB_SIZEOF_SYSTEM_THREAD to reflect
1891         changed meaning.
1892
1893         * configure.in: Cope with systems, that have a pthread_t type,
1894         that is not a pointer. Hint from Karl Nelson
1895         <kenelson@ece.ucdavis.edu>. Define GLIB_SIZEOF_SYSTEM_THREAD to 4
1896         for Solaris. Cope with systems, that have no default mutex
1897         initialize, like obviously most DCE systems.
1898
1899         * glib.h, gthread.c: Changed the prototype of thread_create and
1900         thread_self to return the system thread into provided memory
1901         instead of a return value. This is necessary, as HPUX has a
1902         pthread_t, that is bigger than the biggest integral type there.
1903
1904         * gthread.c: system_thread is no longer a pointer, but an memory
1905         area of size GLIB_SIZEOF_SYSTEM_THREAD. Changed the
1906         zeroinitialization and the tests for zeroness accordingly.
1907
1908 1999-11-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1909
1910         * configure.in: Create docs/glib-config.1 from
1911         docs/glib-config.1.in. Makes 'make distcheck' happy (and me too).
1912
1913         * glib-config.1: Removed from CVS, as it is a generated file.
1914
1915 1999-11-08  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1916
1917         * configure.in: Make the test for getpwuid_r work on newer AIX
1918         versions, too. Still works on Solaris and Linux. Patch from Craig
1919         Rodrigues <rodrigc@mediaone.net>.
1920
1921 1999-11-08  Tor Lillqvist  <tml@iki.fi>
1922
1923         * gwin32.c (g_win32_getlocale): Look at env vars LC_ALL, LC_CTYPE
1924         and LANG first. Some refinements to the sublanguage logic.
1925
1926 1999-11-04  Tor Lillqvist  <tml@iki.fi>
1927
1928         * makefile.{cygwin,msc}.in: Add gwin32 object. Add rule to make .i
1929         (preprocessed source) files.
1930
1931 1999-11-01  Tor Lillqvist  <tml@iki.fi>
1932
1933         * glib.h
1934         * glib.def: Rename Win32-only functions from gwin_* to g_win32_*
1935         to match the GLib naming conventions.
1936
1937         * gutils.c
1938         * gwin32.c
1939         * testglib.c
1940         * Makefile.am: Move the Win32-only functions to the new
1941         file gwin32.c
1942
1943 1999-10-31  Tor Lillqvist  <tml@iki.fi>
1944
1945         * gutils.c (gwin_getlocale): New Win32-specific function, returns
1946         a Unixish current locale string (en, zh_TW etc).
1947
1948         * glib.h: Declare it.
1949
1950         * glib.def: Export it.
1951
1952         * testglib.c: Test it.
1953
1954         * gmessages.c (Win32: ensure_stdout_valid): Some improvements,
1955         make sure we don't call AllocConsole several times, which I think
1956         has happened.
1957
1958 Sun Oct 31 18:55:01 1999  ape@spacetec.no  (Asbjorn Pettersen)
1959
1960         * gcache.c (g_cache_remove): Test if node is NULL.
1961         If not tested, GIMP's script-fu will crash. 
1962
1963 Sun Oct 17 18:11:40 1999  Tim Janik  <timj@gtk.org>
1964
1965         * gdataset.c (g_data_set_internal): remove g_dataset_global_lock around
1966         destroy() notification here as well.
1967
1968 1999-10-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1969
1970         * gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
1971         is called recursivly. Reported by Ola Andersson <rand@ling.umu.se>.
1972
1973 Tue Oct 12 14:17:12 1999  Tim Janik  <timj@gtk.org>
1974
1975         * glib.h: removed useless g_string(x) macro that cluttered the namespace
1976         and was just a poor wrapper around the cpp '#' symbol, use #x if you
1977         need to work around this.
1978         added new macro G_STRINGIFY(arg) that will convert arg to a string,
1979         no matter whether it contains macros or not.
1980
1981 1999-10-12  Tor Lillqvist  <tml@iki.fi>
1982
1983         * config.h.win32.in: Define the new GLIB_SIZEOF_* constants here,
1984         too.
1985
1986         * glib.h: Small Win32 comments improvement.
1987
1988 Tue Oct 12 12:16:12 1999  Tim Janik  <timj@gtk.org>
1989
1990         * gmessages.c (g_printf_string_upper_bound): completly new
1991         implementation for printf string upper bounds calculation.
1992         we handle all glibc 2.1 format specifiers now, except for positional
1993         parameters (%nn$...) and wide char strings, plus some obscure upper
1994         case variants of the standard conversions. this fixes a lot of
1995         bugs in the old code, i.e.
1996         - NULL format strings
1997         - floats with exponents >+24
1998         - %G
1999         - precision specifications in general
2000         - negative field widths
2001         - %p for SIZEOF_VOID_P > 4 platforms
2002         we now issue warnigns in places where the old code would have
2003         caused buffer overruns anyways. warnings are suppressed when invoked
2004         from glogv(), to avoid infinite recursions if someone passes a log
2005         message that comes with really obscure format specifications.
2006
2007 Tue Oct 12 11:49:00 1999  Tim Janik  <timj@gtk.org>
2008
2009         * gstrfuncs.c: nuked old g_printf_string_upper_bound() version.
2010
2011 Tue Oct 12 03:34:40 1999  Tim Janik  <timj@gtk.org>
2012
2013         * glib.h: added GFloatIEEE754 and GDoubleIEEE754 unions to access sign,
2014         mantissa and exponent of IEEE floats and doubles (required by the new
2015         version of g_printf_string_upper_bound). the unions are endian specific,
2016         we handle G_LITTLE_ENDIAN and G_BIG_ENDIAN as of currently. ieee floats
2017         and doubles are supported (used for storage) by at least intel, ppc and
2018         sparc, reference:
2019         http://twister.ou.edu/workshop.docs/common-tools/numerical_comp_guide/ncg_math.doc.html
2020
2021 Mon Oct 11 18:01:49 1999  Tim Janik  <timj@gtk.org>
2022
2023         * configure.in: added additional checks to figure sizes of size_t,
2024         ptrdiff_t and intmax_t (required by g_printf_string_upper_bound).
2025
2026 Wed Oct  6 12:44:23 PDT 1999 Manish Singh <yosh@gimp.org>
2027
2028         * configure.in: blah. use G_WITH_CYGWIN instead of G_HAVE_CYGWIN
2029
2030 1999-10-05  Tor Lillqvist  <tml@iki.fi>
2031
2032         * glib.h: (Win32) Drop the mapping of POSIX function names to the
2033         underscored versions, it's unnecessary after all. With MSVC we get
2034         them from oldnames.lib, with gcc-2.95 and mingw32 from
2035         -lmoldname-msvc. Add comment about what headers to include for
2036         prototypes.
2037
2038         * glibconfig.h.win32.in: Don't define WIN32 and NATIVE_WIN32.
2039
2040         * gerror.c (g_on_error_query): (Win32) Slightly increased verbosity.
2041
2042         * build-dll: Don't strip.
2043
2044         * tests/string-test.c tests/dirname-test.c: Use G_OS_WIN32.
2045
2046         * glib.def: Add g_thread_use_default_impl.
2047
2048 Sun Oct  3 19:46:55 PDT 1999 Manish Singh <yosh@gimp.org>
2049
2050         * configure.in: use G_HAVE_CYGWIN instead of G_OS_FEATURE_CYGWIN
2051
2052 Sun Oct  3 19:25:42 PDT 1999 Manish Singh <yosh@gimp.org>
2053
2054         * acconfig.h
2055         * configure.in
2056         * glibconfig.h.win32: G_OS_FOO #defines. I *think* I got the cygwin
2057         and beos stuff right, but I haven't tested it. The respective
2058         porters should fix any screwups
2059
2060         * glib.h
2061         * gerror.c
2062         * gmain.c
2063         * gmessages.c
2064         * gscanner.c
2065         * gthread.c
2066         * gtimer.c
2067         * gutils.c
2068         * testglib.c: use G_OS stuff
2069
2070 Wed Sep 22 01:53:18 1999  Tim Janik  <timj@gtk.org>
2071
2072         * glib.h (NULL): define NULL as (0L) if __cplusplus is defined, to
2073         avoid "ANSI C++ forbids implicit conversion from `void *' in argument
2074         passing" errors upon NULL usage in C++ programs (gcc-2.95 is on crack
2075         for erroring out on this, instead of just issueing a warning).
2076
2077         * glib.h (g_trash_stack_pop): use uncasted NULL again.
2078
2079 Fri Sep 17 10:24:45 1999  Tim Janik  <timj@gtk.org>
2080
2081         * gmem.c (g_mem_chunk_compute_size) (g_mem_chunk_new): applied
2082         patch from Soeren Sandmann <sandmann@daimi.au.dk>, to force mem
2083         chunk's area sizes to be a multitiple of atom_size, and to
2084         eliminate the MAX_MEM_AREA restriction of 65536 bytes. we also
2085         catch cases where users pass an area size < atom size with a
2086         return_if_fail statement now (which is ok, because previously this
2087         lead to memory corruption anyways).
2088
2089 Thu Sep 16 13:19:54 1999  Tim Janik  <timj@gtk.org>
2090
2091         * glib.h (g_trash_stack_pop): add explicit (GTrashStack*) cast for NULL
2092         pointer to cure ANSI C++ error.
2093
2094 Mon Sep 13 23:25:59 1999  Tim Janik  <timj@gtk.org>
2095
2096         * gmessages.c (g_logv): in case we have to abort the program,
2097         debugging is enabled and we are not called recursively, try
2098         to abort with raise (SIGTRAP) first, so developers may ignore
2099         certain failure conditions during debugging stage.
2100
2101 Thu Aug 26 15:09:36 1999  Tim Janik  <timj@gtk.org>
2102
2103         * Makefile.am:
2104         * gmodule/Makefile.am:
2105         * gthread/Makefile.am: added --export-dynamic so we can load dynmic
2106         modules, (required, according to the libtool 1.3.3 docu).
2107
2108 1999-07-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2109
2110         * grand.c (g_rand_new): Use /dev/urandom, as it doesn't block,
2111         which /dev/random might do. Do not XOR the time, when getting the
2112         seed form /dev/urandom, as this is good itself. Prevent the
2113         initial seed from being zero, which causes the PRNG to produce
2114         only zeros. Hints from Colin Plumb <colin@pgp.com>.
2115
2116 1999-08-17  Tor Lillqvist  <tml@iki.fi>
2117
2118         * glib.h (g_trash_stack_push): Add a cast.
2119
2120         * gslist.c
2121         * glist.c: Make the inline functions static inline, and add
2122         separate extern wrappers. Not all compilers produce callable entry
2123         points for inline functions, even if gcc does.
2124
2125 Sun Aug 15 02:47:14 1999  Tim Janik  <timj@gtk.org>
2126
2127         * glib.h (g_trash_stack_pop): eliminate memset() call, since string.h
2128         has not neccessarily been included prior to glib.h.
2129
2130 Mon Aug  2 21:03:10 1999  Tim Janik  <timj@gtk.org>
2131
2132         * configure.in: added --enable-msg-prefix option.
2133
2134         * gmessages.c (g_log_default_handler): feature "prg_name (pid:%u): "
2135         if --enable-msg-prefix was selected (use "(process:%u): " if
2136         g_get_prgname () returns NULL, along the lines of g_on_error_query).
2137
2138 1999-08-03  Tor Lillqvist  <tml@iki.fi>
2139
2140         * glib.h
2141         * gstrfuncs.c
2142         * tests/strfunc-test.c: Rename g_strccpy to g_strcompress and
2143         g_strecpy to g_strescape per Tim Janik's suggestion. Dropped the
2144         destination parameter, always g_malloc a new string.  Fix bug in
2145         g_strcompress, octal digits were gobbled up without limit, should
2146         use max three.
2147
2148         Sources that use g_strescape must have ifdefs to be compilable
2149         both with GLib 1.2 and 1.3.
2150
2151 Sat Jul 31 17:52:03 PDT 1999 Manish Singh <yosh@gimp.org>
2152
2153         * glib.h
2154         * gstrfuncs.c: the #define for g_strescape interfered with the
2155         compilation of the function, so just remove the function and
2156         note that it's deprecated in the header
2157
2158 1999-08-01  Tor Lillqvist  <tml@iki.fi>
2159
2160         * gstrfuncs.c (g_strccpy, g_strecpy): New functions.
2161
2162         * glib.h: Declare and document them. Define the deprecated
2163         g_strescape as a macro that calls g_strecpy.
2164
2165         * tests/strfunc-test.c (main): Test them.
2166
2167         * makefile.{cygwin,msc}.in
2168         * tests/makefile.{cygwin,msc}.in: Remove gstack and its test
2169         program.
2170
2171         * glib.def: Additions and removals.
2172
2173         * README.win32: Improve gcc build instructions.
2174
2175         * build-dll: Also build import library for MSVC.
2176
2177 Sat Jul 24 20:11:35 1999  Tim Janik  <timj@gtk.org>
2178
2179         * merged GLib 1.3.0 with glib-1.2.3 from Fri Jul 16 22:18:36.
2180         * incorporated proposed cleanups from gtk-devel-list.
2181
2182         * bumped version number to GLib-1.3.1
2183
2184         * glib.h:
2185         * gqueue.c:
2186         * gstring.c:
2187         * glist.c:
2188         removed string tokenisation (we got g_strsplit() and g_strjoin()
2189         already) and readline functions.
2190         s/g_list_delete/g_list_delete_link.
2191         implemented g_slist_delete_link.
2192         removed notion of g_ATEXIT() macro in glib.h, this is an *internal*
2193         macro, g_atexit() is provided for public consumption.
2194         added GTrashStack inline utility functions.
2195         reimplement double eneded queues.
2196         removed GStack implementation, people can use a queue or a (singly)
2197         linked list for this task.
2198         deprecated g_strescape(), we need the SunOS variants here.
2199
2200         * gdate.c: added DEBUG_MSG() macro to wrap old messages.
2201
2202         * *.*: CVS merges.
2203
2204         * upgrade to libtool 1.3.3.
2205
2206 1999-07-21  Tor Lillqvist  <tml@iki.fi>
2207
2208         Win32: With the latest gcc (2.95, pre-release), we can have binary
2209         compatibility with MSVC by using the switch -fnative-struct. No
2210         longer build DLLs with .gcc in the name when using gcc.
2211
2212         * README.win32: Renew gcc build instructions.
2213
2214         * build-dll: Comments change, handle also .a files.
2215
2216         * makefile.cygwin.in
2217         * tests/makefile.cygwin.in: Remove .gcc from DLL name.
2218
2219 1999-07-13  Tor Lillqvist  <tml@iki.fi>
2220
2221         * README.win32: Correct URL for mingw runtime sources.
2222
2223         * build-dll: Combine commands with &&.
2224
2225         * glib.h: Map also rmdir() and hypot() for MSVCRT library.
2226
2227         * makefile.cygwin.in
2228         * tests/makefile.cygwin.in: New DLL naming style. GCC-compiled DLLs are
2229         now called *.gcc.dll, to avoid binary incompatibilities with
2230         MSVC-compiled versions.
2231
2232         * makefile.msc.in: Cosmetics.
2233
2234 1999-07-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2235
2236         * configure.in: Test for pthread_join rather than for
2237         pthread_create to determine the right thread-lib. Makes it work on
2238         mips-sgi-irix6.5. Hitn from to Jari Vuoksenranta
2239         <javu@piano.ux.phys.jyu.fi>.
2240
2241 1999-07-02  Tor Lillqvist  <tml@iki.fi>
2242
2243         * README.win32: Note about need to fix another bug in the mingw32
2244         headers.
2245
2246         * makefile.msc.in: Debugging turned on via an nmake variable,
2247         no need to edit the makefile.
2248
2249 1999-07-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2250
2251         * configure.in, acconfig.h, gutils.c: Added a g_memmove
2252         replacement for platforms without memmove, where bcopy can't
2253         handle overlapping copies and the corresponding checks, which is
2254         taken form the PERL Configure routine.
2255
2256         * glib.h: Updated the commentary about g_memmove to be right and
2257         more GLib-like.
2258
2259         * configure.in: Removed test for rand_r, as it isn't used anymore.
2260
2261 1999-06-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2262
2263         * glib.h, grand.c: Finally removed the g_random_normal and
2264         g_rand_normal functions.
2265
2266 1999-06-28  Tor Lillqvist  <tml@iki.fi>
2267
2268         * glib.def: Add missing export of g_strncasecmp.
2269
2270 1999-06-21  Jose Mercado  <jmercado@mit.edu>
2271
2272         * glib.spec.in: Changed version number (1.1->1.3) in files section
2273         to allow rpm to build packages again.
2274
2275 1999-06-21  Tor Lillqvist  <tml@iki.fi>
2276
2277         * README.win32: Update the pthreads snapshot version we want.
2278         Advice how to hand-expand the makefile.*.in files.
2279
2280         * config.h.win32.in: Define values needed by Sebastian Wilhelmi's
2281         new thread stuff.
2282
2283         * glib.def: Add new functions.
2284
2285         * glibconfig.h.win32.in: Update the pthreads snapshot version.
2286         Fix typo.
2287
2288         * gthread.c: Include config.h, guard inclusion of unistd.h.  When
2289         using gcc on Win32, g_thread_functions_for_glib_use must be marked
2290         for export here, too.
2291
2292         * gtimer.c: Implement g_usleep on native Win32 using Sleep (which
2293         only has millisecond granularity, though).
2294
2295         * makefile.cygwin.in
2296         * makefile.msc.in: Update pthreads snapshot version. File
2297         name changes. Remove testgthread.
2298
2299         * tests/makefile.cygwin.in
2300         * tests/makefile.msc.in: Add thread-test. Link with gthread lib.
2301
2302 1999-06-18  Jeff Garzik  <jgarzik@pobox.com>
2303
2304         * tests/Makefile.am:  Re-order tests in alpha order.
2305
2306 1999-06-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2307
2308         * configure.in: Changed test for pthread_attr_setstacksize from
2309         AC_TRY_COMPILE to AC_TRY_LINK.
2310
2311 1999-06-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2312
2313         * configure.in, acglib.m4, acconfig.h, glib.h, gthread.c:
2314         Completed the thread support in GLib. Thread creation,
2315         prioritizing threads, yielding, joining threads as well as
2316         reader/writer locks and recursive mutexes are now in place. Please
2317         test heavily on your platform. It is so far tested on
2318         Linux/i386/pthreads, Solaris/Sparc/pthreads and
2319         Solaris/Sparc/solaristhreads.
2320
2321         * gtimer.c, glib.h: Implement g_usleep (gulong microseconds) for
2322         thread safe sleeping. (sleep() is not MT-safe at all!)
2323
2324         * gutils.c: Avoid compiler warning.
2325
2326         * tests/Makefile.am, tests/thread-test.c: New program to test some
2327         aspects of the thread implementation.
2328
2329         * gthread.c, Makefile.am: Renamed from gmutex.c to reflect the
2330         change of content.
2331
2332         * configure.in: Purged all appearances of nspr. 
2333
2334 Wed Jun  2 11:42:46 PDT 1999 Manish Singh <yosh@gimp.org>
2335
2336         * acinclude.m4
2337         * config.guess
2338         * config.status
2339         * ltconfig
2340         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
2341
2342 1999-05-29  Tor Lillqvist  <tml@iki.fi>
2343
2344         * gstrfuncs.c (g_strescape): Backslashify also '"' characters.
2345
2346         * glib.h: Document g_strescape.
2347
2348 1999-05-12  Tor Lillqvist  <tml@iki.fi>
2349
2350         * glib.h (Win32): Map fileno to _fileno for mingw32. Map fstat to
2351         _fstat.
2352
2353         * README.win32: Advice also to remove -lmoldname in the
2354         patch to the egcs-1.1.2 spec file.
2355
2356 Wed May 12 00:23:55 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
2357
2358         * gmodule/Makefile.am: Another small fix.
2359
2360 1999-05-08  Tor Lillqvist  <tml@iki.fi>
2361
2362         * Makefile.am tests/Makefile.am: Correct rules for making the
2363         win32-related files that are made from corresponding .in files.
2364         Is there a cleaner way than explicitly writing rules that invoke
2365         config.status?
2366
2367 Fri Jul 16 22:18:36 PDT 1999 Manish Singh <yosh@gimp.org>
2368
2369         * ltconfig
2370         * ltmain.sh: upgrade to libtool 1.3.3
2371
2372 1999-06-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2373
2374         * gdate.c, gstrfuncs.c, gstring.c: Fixed the use of the
2375         is..... and to..... macros, which take unsigned chars, not chars!
2376         Thanks to Morten Welinder <terra@diku.dk> for pointing this out.
2377
2378 Thu Jun  3 16:30:31 PDT 1999 Manish Singh <yosh@gimp.org>
2379
2380         * gerror.c (g_on_error_query): check isatty() before querying so
2381         we don't loop endlessly
2382
2383 Sat May 29 11:16:29 PDT 1999 Manish Singh <yosh@gimp.org>
2384
2385         * acinclude.m4
2386         * config.guess
2387         * config.status
2388         * ltconfig
2389         * ltmain.sh: upgrade to libtool 1.3.2
2390
2391 1999-05-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2392
2393         * gmain.c: provide a poll prototype for SunOS, as they do not do
2394         it self. Hint from Christian Parg <cparg@fs-design.de>.
2395
2396 Tue May 25 12:23:07 1999  Owen Taylor  <otaylor@redhat.com>
2397
2398         * gstrfuncs.c (g_strchug): Use g_memmove() not memmove().
2399         (Reported by Charles Levert <charles@comm.polymtl.ca>)
2400
2401 Mon May 10 22:03:52 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
2402
2403         * Released GLib 1.2.3
2404
2405 1999-05-08  Tor Lillqvist  <tml@iki.fi>
2406
2407         * Makefile.am tests/Makefile.am: Correct rules for making the
2408         win32-related files that are made from corresponding .in files.
2409         Is there a cleaner way than explicitly writing rules that invoke
2410         config.status?
2411
2412 Sat May  1 10:18:01 PDT 1999 Manish Singh <yosh@gimp.org>
2413
2414         * acinclude.m4
2415         * config.guess
2416         * config.status
2417         * ltconfig
2418         * ltmain.sh: upgrade to libtool 1.3
2419
2420 1999-04-30  Tor Lillqvist  <tml@iki.fi>
2421
2422         * Makefile.am: Don't distribute glibconfig.h.win32.in, but
2423         glibconfig.h.win32. Generate it when making a dist. Also generate
2424         makefile.msc and config.h.win32 from corresponding .in files when
2425         making dist.
2426
2427         * configure.in: Also substitute @GLIB_INTERFACE_AGE@ and
2428         @GLIB_BINARY_AGE@ (needed in config.h.win32).
2429
2430         * glibconfig.h.win32.in: Use static mutex structure and initial
2431         value corresponding to the 1999-04-07 snapshot of pthreads-win32.
2432
2433         * tests/Makefile.am: Distribute makefile.msc. Generate it when
2434         making dist.
2435
2436         * tests/makefile.msc.in: New file.
2437
2438         * tests/node-test.c: Include <stdlib.h> for exit().
2439
2440 Thu Apr 29 02:16:36 1999  Tim Janik  <timj@gtk.org>
2441
2442         * gstrfuncs.c: minor code cleanups.
2443
2444 Tue Apr 27 13:11:29 1999  Owen Taylor  <otaylor@redhat.com>
2445
2446         * gmain.c (g_main_poll): Mask out ERR HUP and NVAL from
2447         the events field so we don't give IRIX fits.
2448
2449 Tue Apr 20 08:42:22 1999  Tim Janik  <timj@gtk.org>
2450
2451         * gscanner.c (g_scanner_unexp_token): behave conservative with
2452         G_TOKEN_IDENTIFIER_NULL and always assume scanner->value.v_string
2453         to be "null" in that case.
2454
2455 1999-04-20  Havoc Pennington  <hp@pobox.com>
2456
2457         * gutils.c (g_vsnprintf):  When using the vsnprintf()
2458         implementation, '\0'-terminate the resulting string
2459         and return its length rather than -1.
2460
2461 Mon Apr 19 13:42:21 1999  Owen Taylor  <otaylor@redhat.com>
2462
2463         * gmain.c (g_main_iterate): Added missing
2464         #ifdef G_THREADS_ENABLED. (I never liked G_THREADS_ENABLED in
2465         the first place!)
2466
2467 1999-04-18  Havoc Pennington  <hp@pobox.com>
2468
2469         * gutils.c (g_snprintf): When using the vsnprintf()
2470         implementation, '\0'-terminate the resulting string
2471         and return its length rather than -1.
2472
2473 Fri Apr 16 06:52:07 1999  Tim Janik  <timj@gtk.org>
2474
2475         * gscanner.c (g_scanner_unexp_token): feature G_TOKEN_EOF as a valid
2476         expected token as well, so we get "- expected end of file" instead of
2477         "- expected (unknown) token <0>".
2478
2479 Tue Apr 13 16:16:14 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
2480
2481         * Released GLib 1.2.2
2482
2483 1999-04-12  Elliot Lee  <sopwith@mh69.mh.cuc.edu>
2484
2485         * g_strchug(): s/strcpy/memmove/
2486
2487 1999-04-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2488
2489         * configure.in: Adjusted the test for an unimplemented
2490         getpwuid_r. Info from Michael Pruett <mikep@ugcs.caltech.edu>.
2491
2492 Sun Apr 11 15:07:34 1999  Tim Janik  <timj@gtk.org>
2493
2494         * configure.in: bumped versin number to GLib 1.2.2, interface 2,
2495         binary 2.
2496
2497         * NEWS: updates.
2498
2499 Sun Apr 11 14:37:06 1999  Tim Janik  <timj@gtk.org>
2500
2501         * gstrfuncs.c (g_strcasecmp): always check for s1, s2 != NULL.
2502
2503 Sat Apr 10 19:30:50 1999  Tim Janik  <timj@gtk.org>
2504
2505         * glib.h: removed braces around inline strings for the G_GNUC_FUNCTION
2506         and G_GNUC_PRETTY_FUNCTION macros, so the macros can be used for
2507         compile time string concatenation.
2508
2509 Thu Apr  8 19:53:19 1999  Owen Taylor  <otaylor@redhat.com>
2510
2511         * gmain.c (g_main_iterate): Check for two threads
2512         calling g_main_iterate at once.
2513
2514         * gmain.c: If the set of poll file descriptors changes
2515         during a call to poll(), abort that call, and start
2516         a new poll. My test program still segfaults
2517         obscurely on glibc 2.0 (in read()!!!), but now it works on
2518         glibc 2.1, so I'll blame something else for the other segfault.
2519
2520 1999-03-31  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2521
2522         * configure.in: Fixed slight bug, that made configure hang on some
2523         systems. Please do not merge this into 1.3 branch. It's taken care
2524         of differently there. Info from J. Rhett Aultman
2525         <cuplan@alley.gator.net>
2526
2527 Wed Mar 24 21:23:47 CST 1999 Shawn T. Amundson <amundson@gtk.org>
2528
2529         * Released GLib 1.2.1
2530
2531         * README:
2532           INSTALL: 
2533           NEWS: 
2534           sanity_check: updated
2535
2536         * glibconfig.h.win32.in:
2537           Makefile.am:
2538           docs/glib-config.1.in:
2539           docs/Makefile.am: Added files used to generate new files.
2540
2541         * glibconfig.h.win32:
2542           docs/glib-config.1: Removed, now generated.
2543
2544         * configure.in: Added to output now-generated files.
2545
2546 Tue Mar 23 13:43:39 PST 1999 Manish Singh <yosh@gimp.org>
2547
2548         * giounix.c: add user_data param to check and prepare functions
2549
2550 Mon Mar 22 03:54:43 1999  Tim Janik  <timj@gtk.org>
2551
2552         * glib.h:
2553         * gmain.c: add user_data to the GSource ->check and ->prepare
2554         functions, so it can be used to e.g. pass a GPollFd.
2555         (g_main_poll): only add poll records with an events mask != 0 to the
2556         fd_array. don't even bother calling poll_func() if fds=timeout=0.
2557         added debugging printouts around poll_func() invokation that can be
2558         enabled with #define G_MAIN_POLL_DEBUG.
2559
2560 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
2561
2562         * acinclude.m4
2563         * config.guess
2564         * config.sub
2565         * ltconfig
2566         * ltmain.sh: upgrade to libtool 1.2f
2567
2568         * autogen.sh: libtool is not required to autogen glib
2569
2570         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
2571         needed)
2572
2573 1999-03-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2574
2575         * gmem.c: Fixed another stupid fault of mine: Did
2576         s/g_static_/g_private_/g
2577
2578 Wed Mar 17 03:17:42 1999  Tim Janik  <timj@gtk.org>
2579
2580         * configure.in bumped versin number to GLib 1.2.1, interface 1,
2581         binary 1.
2582
2583         * NEWS: updates.
2584
2585         * glib.h: added GLIB_CHECK_VERSION() macro similar to
2586         GTK_CHECK_VERSION().
2587
2588 Sun Mar 14 17:50:35 1999  Tim Janik  <timj@gtk.org>
2589
2590         * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
2591         to g_return_if_fail().
2592         (g_mem_profile): 
2593         (g_mem_chunk_print): 
2594         (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
2595         messages.
2596
2597         * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
2598         to g_return_if_fail().
2599         * grel.c (g_*): changed a bunch of g_assert() statements to
2600         g_return_if_fail() and added some extra ones to check relation != NULL.
2601
2602 1999-03-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2603
2604         * configure.in: Also accept _Pctime_r instead of ctime_r, while
2605         seraching for the right `_REENTRANT' flag. This is for Digital
2606         UNIX 4.0d. Thanks to Sascha Brawer <sb@adasys.ch>.
2607
2608 Tue Mar  9 23:25:50 1999  Tim Janik  <timj@gtk.org>
2609
2610         * configure.in: check for working realloc (NULL,).
2611         * gmem.c (g_realloc): use malloc() for initial allocation on systems
2612         where realloc(NULL,) will not work (this is the case on SunOS, reported
2613         by Tom Geiger).
2614
2615 Mon Mar  8 07:42:08 1999  Tim Janik  <timj@gtk.org>
2616
2617         * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
2618         flag around the call to g_hook_free() to avoid spurious
2619         warnings (happens during destruction phase).
2620
2621 1999-03-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2622
2623         * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
2624         from config.h.win32 to glibconfig.h.win32
2625
2626         * acconfig.h, configure.in, config.h.win32: Added test for DCE
2627         versions of mutex_trylock and cond_timedwait. The win32 versions
2628         are posix, aren't they?
2629
2630 1999-03-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2631
2632         * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
2633         Friedrich Dominicus <Friedrich.Dominicus@inka.de>
2634
2635 1999-03-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2636
2637         * gutils.c (g_get_any_init): Fixed yet another bloody
2638         implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
2639         <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
2640         test better than that, but have no idea, how to do that easily.
2641
2642 Sun Feb 21 22:11:51 CST 1999  Shawn T. Amundson <amundson@gtk.org>
2643
2644         * Released GLib 1.2.0
2645
2646         * AUTHORS: updated
2647
2648 Wed Feb 24 00:08:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>
2649
2650         * *.[ch]: inserted additional note to look for ChangeLog and
2651           AUTHORS file for a log of modifications.
2652
2653 Sun Feb 21 14:01:00 1999  Dr Mike <drmike@redhat.com>
2654
2655         * Made specfile generated, tweaked slightly
2656
2657 Sat May  8 06:00:17 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
2658
2659         * configure.in
2660           gmodule/Makefile.am
2661           gthread/Makefile.am: Better testing reveals better
2662           methods.  Fixes for BeOS.
2663
2664 Sat May  8 01:52:29 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
2665
2666         * configure.in
2667           gerror.c
2668           gmain.c
2669           gstrfuncs.c
2670           gutils.c
2671           ltconfig
2672           ltmain.sh
2673           gmodule/Makefile.am
2674           gmodule/gmodule.c
2675           gmodule/gmoduleconf.h.in
2676           gmodule/gmodule-beos.c
2677           gthread/Makefile.am: Port to BeOS by myself and Richard Offer.
2678
2679 1999-05-06  Tor Lillqvist  <tml@iki.fi>
2680
2681         * makefile.msc.in makefile.cygwin.in glibconfig.h.win32.in
2682         config.h.win32.in tests/makefile.msc.in tests/makefile.cygwin.in:
2683         New files, used to generate corresponding non-.in files when
2684         making a dist. This is just so the version numbers will be kept in
2685         synch automatically.
2686
2687         * configure.in: Also substitute @GLIB_MAJOR_VERSION@,
2688         @GLIB_MINOR_VERSION@, and @GLIB_INTERFACE_AGE@.
2689
2690         * Makefile.am tests/Makefile.am: Also distribute makefile.cygwin.
2691
2692         * gerror.c (g_on_error_query): On Win32, put up a MessageBox and
2693         then exit.
2694
2695         * glib.def: Add a couple of functions.
2696
2697 Sat May  1 10:26:20 PDT 1999 Manish Singh <yosh@gimp.org>
2698
2699         * acinclude.m4
2700         * config.guess
2701         * config.status
2702         * ltconfig
2703         * ltmain.sh: upgrade to libtool 1.3
2704
2705 1999-04-25  Tor Lillqvist  <tml@iki.fi>
2706
2707         * README.win32: More editing.
2708         * build-dll: Use gcc, not ld to link.
2709         * glib.h: On native Win32 use _unlink().
2710         * gscanner.c: Use corrent NATIVE_WIN32 feature test macro,
2711         not _MSC_VER.
2712         * gstring.c: Include <io.h> on Win32 for _read prototype.
2713         * gutils.c: Remove old IO channel code (was in #if 0).
2714         * makefile.cygwin: Don't need to link with kernel32 and msvcrt
2715         explicitly, they are included anyway.
2716
2717 1999-04-24  Tor Lillqvist  <tml@iki.fi>
2718
2719         Support added for building using a GNU toolchain on Win32,
2720         i.e. gcc -mno-cygwin on cygwin (a.k.a. mingw32, using egcs-1.1.2).
2721
2722         * README.win32: Updated.
2723         * build-dll makefile.cygwin tests/makefile.cygwin: New files.
2724         * glib.h glib.def glibconfig.h.win32: Slight updates. 
2725         * gmain.c: No need to include <fcntl.h> and <io.h> on Win32.
2726         * gmain.c gutils.c testglib.c tests/string-test.c: Test for
2727         NATIVE_WIN32, not _MSC_VER.
2728         * gmutex.c: Must declare g_thread_functions_for_glib_use as
2729         exported (using the GUTILS_C_VAR macro).
2730         * gutils.c gmodule/libgplugin_[ab].c: LibMain not needed.
2731         * gmodule/gmoduleconf.h.win32: Need underscore with gcc.
2732         * gthread/gthread.c: With gcc on Win32, must use memcpy to assign
2733         value of g_thread_functions_for_glib_use (?).
2734         * makefile.msc tests/makefile.msc: Cosmetics.
2735
2736 Fri Apr 23 14:29:25 BST 1999  Tony Gale <gale@gtk.org>
2737
2738         * glib.h: Fix typo in g_string_ncasecmp macro (by me).
2739           Add b_string_strncasecmp macro.
2740
2741 1999-04-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2742
2743         * gutils.c (g_get_any_init): use sysconf (_SC_GETPW_R_SIZE_MAX) as
2744         the new initinal bufsize for getpwuid_r on systems, that support
2745         this. Hint from Holger Duerer <H.Duerer@zait.uni-bremen.de>.
2746
2747 Sat Apr 17 20:55:13 BST 1999  Tony Gale <gale@gtk.org>
2748
2749         * glib.h, gstring.c: Add new g_string functions for reading
2750           from file/socket descriptors, and tokenising strings.
2751
2752           Added various g_string macros.
2753
2754 Tue Apr 13 23:28:32 1999  Tor Lillqvist  <tml@iki.fi>
2755
2756         * README.win32: Mention the tests directory.
2757
2758         * glib.def: Add the functions from grand.c.
2759
2760         * glibconfig.h.win32: Add unsigned max values, and the format
2761         strings.
2762
2763         * makefile.msc: Add grand.
2764
2765         * tests/{date-test,node-test}.c: Include <stdlib.h> for exit().
2766
2767         * tests/makefile.msc: New file.
2768
2769 1999-04-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2770
2771         * glib.h: Moved struct declaration up. Style fixes.
2772
2773         * grand.c: Style fixes. Only try to open /dev/random once.
2774
2775         * tests/rand-test.c (main): New tests; Slight bug fix. 
2776
2777 1999-04-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2778
2779         * grand.c, tests/rand-test.c: New files to implement the Mersenne
2780         Twister Pseudo Random Number Generator.
2781
2782         * glib.h, AUTHORS, Makefile.am, tests/Makefile.am: Changed
2783         accordingly.
2784
2785 Thu Apr  8 21:12:30 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
2786
2787         * Released GLib 1.3.0
2788
2789 1999-03-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2790
2791         * configure.in: Added a check for the right format to printf and
2792         scanf long longs. It is %qi instead of %lli on FreeBSD for
2793         whatever reason.
2794
2795 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
2796
2797         * Makefile.am (glibconfig.h): Make sure `glibconfig.h' exists
2798         after the rule is fired.
2799         (install-exec-local): Install glibconfig.h only if the contents
2800         are different from the currently installed glibconfig.h.
2801
2802 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
2803
2804         * Makefile.am (configexecincludedir): Rename from 
2805         configincludedir so that glibconfig.h will be installed 
2806         as part of `make install-exec'. 
2807
2808 Thu Mar 25 22:45:47 1999  Tor Lillqvist  <tml@iki.fi>
2809
2810         * config.h.win32: Update version numbers.
2811
2812         * glibconfig.h.win32: Update version numbers and pthreads-win32-
2813         related magic values.
2814
2815         * README.win32: Some improvements.
2816
2817         * makefile.msc: Add gqueue and gstack. Correct version number.
2818
2819 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
2820
2821         * acinclude.m4
2822         * config.guess
2823         * config.sub
2824         * ltconfig
2825         * ltmain.sh: upgrade to libtool 1.2f
2826
2827         * autogen.sh: libtool is not required to autogen glib
2828
2829         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
2830         needed)
2831
2832 1999-03-18  Jeff Garzik  <jgarzik@pobox.com>
2833
2834         * glib.def: Add new g_list, g_stack, g_queue functions.
2835
2836 1999-03-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2837
2838         * configure.in: added new AC_SUBST(GTHREAD_COMPILE_IMPL_DEFINES)
2839         to hold various defines to get the right thread implementation on
2840         different platforms. Also look in -ldce for pthread_create. Should
2841         make it work on HP-UX 10.x. Information from "D. Emilio Grimaldo
2842         Tunon" <emilio_tunon@nl.compuware.com>.
2843
2844 1999-03-17  Jeff Garzik  <jgarzik@pobox.com>
2845
2846         * gstack.c, gqueue.c:
2847         Add copyright, clean up code a bit.
2848
2849 1999-03-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2850
2851         * configure.in: Added missing values for G_MAXU(SHORT|INT|LONG) on
2852         platforms with only /usr/include/values.h.
2853
2854         * acconfig.h: Removed unnecessary macros.
2855
2856         * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
2857         from config.h.win32 to glibconfig.h.win32. Taken from glib 1.2
2858         branch.
2859
2860         * configure.in: Also accept _Pctime_r instead of ctime_r, while
2861         seraching for the right `_REENTRANT' flag. This is for Digital
2862         UNIX 4.0d. Taken from glib 1.2 branch.
2863
2864 Wed Mar 17 03:14:56 1999  Tim Janik  <timj@gtk.org>
2865
2866         * glib.h: added GLIB_CHECK_VERSION() macro similar to
2867         GTK_CHECK_VERSION().
2868
2869 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
2870
2871         * merges from glib-1-2:
2872
2873 Sun Mar 14 17:50:35 1999  Tim Janik  <timj@gtk.org>
2874
2875         * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
2876         to g_return_if_fail().
2877         (g_mem_profile):
2878         (g_mem_chunk_print):
2879         (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
2880         messages.
2881
2882         * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
2883         to g_return_if_fail().
2884         * grel.c (g_*): changed a bunch of g_assert() statements to
2885         g_return_if_fail() and added some extra ones to check relation != NULL.
2886
2887 Tue Mar  9 23:25:50 1999  Tim Janik  <timj@gtk.org>
2888
2889         * configure.in: check for working realloc (NULL,).
2890         * gmem.c (g_realloc): use malloc() for initial allocation on systems
2891         where realloc(NULL,) will not work (this is the case on SunOS, reported
2892         by Tom Geiger).
2893
2894 Mon Mar  8 07:42:08 1999  Tim Janik  <timj@gtk.org>
2895
2896         * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
2897         flag around the call to g_hook_free() to avoid spurious
2898         warnings (happens during destruction phase).
2899
2900 1999-03-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2901
2902         * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
2903         Friedrich Dominicus <Friedrich.Dominicus@inka.de>
2904
2905 1999-03-16  Timur Bakeyev  <mc@bat.ru>
2906
2907         * configure.in: Fix problem with pthread_create in libc, as running
2908         "gcc test.c -l " is not legal.
2909
2910 1999-03-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2911
2912         * tests/type-test.c: Added a test for the
2913         G_(U)?INT(16|32|64)_FORMAT and G_(MIN|MAX|MAXU)(SHORT|INT|LONG)
2914         macros.
2915
2916         * configure.in: Removed G_(U)?INT8_FORMAT again, as it can't be
2917         used for scanf.
2918
2919         * configure.in: Added the macros G_MAXU(SHORT|INT|LONG). I do not
2920         know how to handle these on platforms with /usr/include/values.h,
2921         but without /usr/include/limits.h. Please someone add this.
2922
2923
2924 1999-03-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2925
2926         * configure.in: Added the macros G_(U)?INT(8|16|32|64)_FORMAT to
2927         use for printf and (much more important) scanf format strings for
2928         the corresponding GLib types. 
2929
2930         * glib.h Added G_(U)?(SHORT|INT|LONG)_FORMAT for consistency. It
2931         however makes no sense to also provide G_(FLOAT|DOUBLE)_FORMAT, as
2932         they are different for printf (f for both) and scanf (f for float,
2933         lf for double). Defining G_INT_FORMAT makes sense however, as we
2934         might want to define gint to something different than int someday
2935         in the future. Idea from Sascha Brawer <sb@adasys.ch>.
2936
2937 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
2938
2939         * gdate.c:
2940         Commented out debugging output.
2941
2942         * tests/Makefile.am, tests/date-test.c:
2943         Added test of the GDate module, based closely on testgdate.c.
2944
2945         * tests/Makefile.am:
2946         Bugfix - compile tests with @GLIB_DEBUG_FLAGS@.
2947
2948 1999-03-14  Raja R Harinath  <harinath@cs.umn.edu>
2949
2950         * configure.in (glibconfig.h): Remove widechar tests and defines.
2951         (fd_set): Change the grep for `fd_mask' to search for `fd_set'.
2952         * gerror.c (fd_mask): Remove conditional typedef.  It is not used
2953         elsewhere in the file.
2954         * gmain.c (fd_mask): Likewise.
2955
2956 1999-03-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2957
2958         * configure.in: Test for posix threads first, then for dce threads.
2959
2960 1999-03-11  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2961
2962         * configure.in: Revamped the thread configure stuff. Now dce
2963         threads (old posix draft) are recogniced. This is necessary,
2964         because dce threads are in fact working quite differently from
2965         posix threads. Also changed the conditions for checking for MT
2966         safe functions a bit, because G_THREADS_IMPL_NONE still have to
2967         compile thread safe. NOTE: Please do not commit my change to
2968         glib-1-2/{acconfig.h,configure.in,config.h.win32} from 1999-03-03,
2969         as the current change will take care of that too.
2970
2971 Tue Mar  9 14:37:32 1999  Jeff Garzik  <jgarzik@pobox.com>
2972
2973         * Makefile.am, glib.h, gstack.c, gqueue.c,
2974           tests/Makefile.am, tests/queue-test.c, tests/stack-test.c:
2975         Added stack, queue ADTs and related tests.
2976
2977         * glib.h, glist.c:
2978         New g_list_delete() function.
2979
2980 Sat Mar  6 11:03:08 1999  Asbjorn Pettersen  <ape@lrdpf.spacetec.no>
2981
2982         * gutils.c (g_get_any_init): add OS/2 changes.
2983         change '\\' in HOME to '/'.
2984
2985 1999-03-03  Josh MacDonald  <jmacd@spin.dsl.pacbell.net>
2986
2987         * glib.def: g_spaced_primes_closest was omitted here, so I
2988         couldn't build Xdelta on Windows.
2989
2990 1999-03-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2991
2992         * gutils.c (g_get_any_init): Fixed yet another bloody
2993         implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
2994         <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
2995         test better than that, but have no idea, how to do that easily.
2996
2997 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
2998
2999         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
3000         new one.
3001
3002         * configure.in: set glib version to 1.3.0.