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