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