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