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