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