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