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