remove public signal.h include.
[platform/upstream/glib.git] / ChangeLog.pre-2-0
1 Fri Nov  2 19:54:16 2001  Tim Janik  <timj@gtk.org>
2
3         * glib/gbacktrace.h (G_BREAKPOINT): remove public signal.h include.
4
5 Thu Nov  1 21:48:43 2001  Owen Taylor  <otaylor@redhat.com>
6
7         * tests/mainloop-test.c (recurser_idle): Recurse
8         with may_block = FALSE, so we don't get into
9         the pathology where the recurser_idle recurses
10         for 10 iterations, and the only thing that is
11         running is the recurser idle, which adds
12         another recursion for each of those 10 iterations
13         and....
14
15         * tests/mainloop-test.c (create_crawler): Fix race
16         condition where a crawler source could be destroyed
17         before it was added to the crawler array.
18
19         * test/Makefile.am: Add mainloop-test back.
20         
21 2001-11-01  Marius Andreiana  <mandreiana@yahoo.com>
22
23         * configure.in: Added ro (Romanian) to ALL_LINGUAS
24
25 2001-10-31  Havoc Pennington  <hp@redhat.com>
26
27         * glib/gmain.c (g_main_loop_run): fix to the locking so we don't
28         hang
29
30 2001-10-31  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
31
32         * configure.in: Make --with-threads=none mean, that we want thread
33         support, but no default thread implementation. This also was the
34         original intention, but disapeared around 1998... So it doesn't
35         seem to be the most requested feature, but we went far to make it
36         possible in the code, so I resurrected this feature.
37
38         * INSTALL.in: Describe the --enable-gc-friendly, --disable-threads
39         and --with-threads options of configure.
40
41         * glib/gmain.c (g_main_context_acquire, g_main_context_release,
42         g_main_context_wait): Use the right conditional (G_THREADS_ENABLED
43         instead of G_THREAD_ENABLED). Also remove wrong
44         return-statement. Unfortunately mainloop-test still does fail. Many
45         thanks to Andrea Fazekas <fazek@ludens.elte.hu> for spotting
46         this. (#63455)
47
48 2001-10-31  Matthias Clasen  <matthiasc@poet.de>
49
50         * gobject/gsourceclosure.c (g_source_set_closure): Fix documentation.
51
52 2001-10-30  Tor Lillqvist  <tml@iki.fi>
53
54         * glib-zip.in: New file, used to build distribution packages for
55         Windows.
56
57         * configure.in: Expand it.
58
59         * Makefile.am: Distribute it.
60
61         * config.h.win32.in: Update to match currently produced config.h
62
63 2001-10-29  Daniel Egger  <degger@fhm.edu>
64
65         * glib/gbacktrace.h: Fix non-Intel/-Alpha version of the 
66         G_BREAKPOINT macro to include <signal.h> and use SIGTRAP.
67
68         * glib/gmessages.c: Conditionalise definition of args2
69         depending on the definition of HAVE_VSNPRINTF to avoid 
70         compiler warning.
71
72         * gobject/testgruntime.c
73         * tests/patterntest.c: Include <string.h> to avoid warnings.
74
75 Mon Oct 29 11:29:37 2001  Owen Taylor  <otaylor@redhat.com>
76
77         * m4macros/glib-2.0.m4: Don't try to use PKG_CONFIG
78         when we didn't find it. (#62944, Eric Lemings)
79
80         * m4macros/glib-2.0.m4: Fix problem with spaces around =
81         sign in assignment. (#63209, Arkadiusz Miskiewicz)
82
83 Mon Oct 29 10:59:36 2001  Owen Taylor  <otaylor@redhat.com>
84
85         * configure.in: Check for path to Perl, add gobject/glib-mkenums 
86         to AC_OUTPUT. (#63093, Dan Winship)
87
88 Mon Oct 29 10:55:12 2001  Owen Taylor  <otaylor@redhat.com>
89
90         * glib/libcharset/Makefile.am (EXTRA_DIST): Dist
91         ref-add.sin, ref-del.sin. (#63092, Dan Winship)
92
93 2001-10-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
94
95         * glib/gmain.c (g_main_loop_quit): Conditionalize thread related
96         calls. (#63091)
97
98 2001-10-28  Tor Lillqvist  <tml@iki.fi>
99
100         * glib/glib.def: Add missing g_pattern_match_simple and
101         g_pattern_spec_equal.
102
103         * glib/gwin32.c (g_win32_get_package_installation_subdirectory):
104         Set separator correctly.
105
106         * glib/libcharset/config.charset (os): Match also mingw*.
107
108         * tests/testglib.c (main): (Win32): Print the lib/locale
109         subdirectory, as that is what actually gets used.
110
111 Wed Oct 24 11:10:54 2001  Owen Taylor  <otaylor@redhat.com>
112
113         * configure.in: Version 1.3.10, interface age, binary age = 0.
114
115         * NEWS: Updates
116
117 2001-10-26  Tor Lillqvist  <tml@iki.fi>
118
119         * configure.in: Don't default to win32 thread implementation on
120         Cygwin. The gthread-win32 implementation really is for Win32 with
121         MS runtime only. Let configure find pthreads when configuring for
122         Cygwin.
123
124         * README.win32: Updates.
125
126         * glib/glib.def: Update.
127
128         * tests/makefile.mingw.in
129         * tests/makefile.msc.in: Remove mainloop-test here, too.  Add ../*
130         to PATH before running tests to find DLLs. Separate the
131         interactive tests, don't run them in the check target.
132
133         * */makefile.msc.in: Include make.msc from GLib's build directory.
134
135 Thu Oct 25 12:01:41 2001  Owen Taylor  <otaylor@redhat.com>
136
137         * tests/Makefile.am: Temporarily remove mainloop-test, since it
138         prevents distcheck.
139
140 2001-10-24  Alex Larsson  <alexl@redhat.com>
141
142         * docs/reference/glib/glib-sections.txt:
143         Add g_strtod & co.
144
145         * docs/reference/glib/tmpl/string_utils.sgml:
146         Add docs for G_ASCII_DTOSTR_BUF_SIZE.
147
148         * glib/gstrfuncs.[ch]:
149         Added g_ascii_strtod, g_ascii_dtostr and g_ascii_formatd.
150
151         * tests/Makefile.am:
152         * tests/strtod-test.c:
153         Add tests for g_ascii_strtod & co.
154
155 2001-10-23  Tor Lillqvist  <tml@iki.fi>
156
157         * config.h.win32.in: Typo: GLIB_MICRO_VERSION and
158         GLIB_MINOR_VERSION were swapped.
159
160         * glib/gutils.h: Remove G_HARDCODED_PATH_WRAPPER, Owen didn't like
161         it.
162         
163         * glib/gutils.c: Instead, expand it on Win32 as
164         _glib_get_locale_dir(), and #define GLIB_LOCALE_DIR as a call to
165         it.
166
167 2001-10-23  Tor Lillqvist  <tml@iki.fi>
168
169         * config.h.win32.in: Typo.
170
171         * glibconfig.h.win32.in: Minor update to correspond to what
172         configure now generates.
173
174         * glib/Makefile.am: (Win32): If we have built the MSVC import
175         library, install it. Install the gcc import library. Also support
176         uninstall.
177
178         * glib/gutils.h: Add macros G_WIN32_DLLMAIN_FOR_DLL_NAME and
179         G_HARDCODED_PATH_WRAPPER. These are used to avoid hardcoding path
180         names into Windows DLLs.
181
182         * glib/gutils.c: Use them for GLIB_LOCALE_DIR.
183
184         * glib/gwin32.c (get_package_directory_from_module): Plug a small
185         memory leak. Minor code reordering.
186         (g_win32_get_package_installation_subdirectory):  Allow empty subdir.
187
188 2001-10-19  Tor Lillqvist  <tml@iki.fi>
189
190         * configure.in: Fix test for lib.exe. Can't set ms_librarian
191         before calling AC_CHECK_PROG, as it doesn't actually check
192         anything if the result variable has been preset...
193
194 2001-10-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
195
196         * glib/gutils.c (g_set_prgname, g_get_prgname): Use another LOCK
197         for g_prgname to avoid deadlocking. (#62606)
198
199 2001-10-19  Tor Lillqvist  <tml@iki.fi>
200
201         * configure.in: Check also ac_cv_sizeof___int64 when requiring a
202         64-bit type.
203
204 2001-10-17  HideToshi Tajima  <hidetoshi.tajima@sun.com>
205
206         * glib/gconvert.c (g_iconv_open):
207         Fix a typo: to_codeset => from_codeset.
208         (#58195, #55152)
209
210 Fri Oct 12 18:24:02 2001  Tim Janik  <timj@gtk.org>
211
212         * glib/gpattern.[hc]: make struct _GPatternSpec and GMatchType
213         private.
214         (g_pattern_equal): new function to return equality of two patterns
215         (required because GPatternSpec is private now).
216         (g_pattern_spec_new): fix bug wrg wildcard counting which produced
217         incorrect pattern specs (discovered by Matthias Clasen).
218         optimized code so we just keep one compiled pattern string now.
219         correctly canonicalize patterns. reduce string walks, optimize
220         decision about MATCH_ALL vs. MATCH_ALL_TAIL.
221         (g_pattern_match_string): call just g_pattern_match() with NULL
222         reversed string.
223         (g_pattern_match): allow NULL reversed strings now, reverse_dup
224         strings on demand.
225
226         * tests/patterntest.c (test_compilation): added an extended testcase
227         for pattern matching from Matthias Clasen <matthiasc@poet.de>.
228
229 2001-10-11  Raja R Harinath  <harinath@cs.umn.edu>
230
231         * configure.in (ac_cv_sizeof_long_long): Avoid '==' and '-a' in
232         'test's.
233
234 Wed Oct 10 20:07:36 2001  Joshua N Pritikin  <vishnu@pobox.com>
235
236         * glib/gmessages.c glib/gtypes.h: Remove G_HAVE_GINT64
237         conditionalization.
238
239 Wed Oct 10 17:34:15 2001  Joshua N Pritikin  <vishnu@pobox.com>
240
241         * configure.in: Un-conditionalize and require a 64-bit integer
242         type.
243
244 2001-10-04  Raja R Harinath  <harinath@cs.umn.edu>
245
246         * configure.in: Avoid 'test -a'.
247
248 2001-10-05  Matthias Clasen  <matthiasc@poet.de>
249
250         * glib/gwin32.c: Documentation update.
251
252 2001-10-04  Havoc Pennington  <hp@redhat.com>
253
254         * glib/libcharset/Makefile.am (EXTRA_DIST): add config.charset
255
256 2001-10-03  Tor Lillqvist  <tml@iki.fi>
257
258         * glib/gutils.c (Win32) (DllMain): New function (DLL entry point)
259         to tuck away actual DLL name.
260         (GLIB_LOCALE_DIR) Use actual DLL name, instead of assuming one
261         naming convention for DLLs.
262
263         * glib/glib.def: g_string_append_printf.
264
265 2001-10-02  Matthias Clasen  <matthiasc@poet.de>
266
267         * glib/gstrfuncs.c, glib/giochannel.c: documentation update.
268
269         * glib/gqueue.c: add documentation.
270
271 2001-10-02  Sven Neumann  <sven@gimp.org>
272
273         * glib/gstring.h (g_string_sprintfa): let the compatibility definition
274         point to the new name g_string_append_printf().
275
276 2001-10-01  Alex Larsson  <alexl@redhat.com>
277
278         * glib/gconvert.[ch]:
279         Convert G_CONVERT_ERROR_NOT_ABSOLUTE_FILE_URI and
280         G_CONVERT_ERROR_INVALID_URI to G_CONVERT_ERROR_BAD_URI.
281
282         * tests/uri-test.c:
283         Update tests
284
285 Mon Oct  1 16:01:24 2001  Owen Taylor  <otaylor@redhat.com>
286
287         * glib/gstring.[ch] glib/grel.c: Rename g_string_printfa()
288         to g_string_append_printf(). (#61041, Havoc Pennington.)
289
290 2001-10-01  Tor Lillqvist  <tml@iki.fi>
291
292         * glib/gwin32.c: Documentation cleanups. (#61487)
293
294 2001-10-01  Matthias Clasen  <matthiasc@poet.de>
295
296         * glib/gscanner.h (GScannerMsgFunc): make third argument
297         a gboolean.
298         (g_scanner_add_symbol, g_scanner_remove_symbol, 
299         g_scanner_foreach_symbol): mark these 
300         G_DISABLE_DEPRECATED. (#61469)
301
302         * glib/gscanner.c (g_scanner_msg_handler): make third 
303         argument gboolean. (#61468)
304
305 2001-10-01  Sven Neumann  <sven@gimp.org>
306
307         * glib/gconvert.c
308         * glib/gspawn-win32.c
309         * glib/gspawn.c: some minor documentation fixes.
310
311 2001-09-29  Alexander Larsson  <alla@lysator.liu.se>
312
313         * configure.in:
314         Add build/win32/dirent/Makefile to the list of makefiles
315
316 2001-09-30  Tor Lillqvist  <tml@iki.fi>
317
318         * glib/gwin32.c
319         * glib/gwin32.h
320         * glib/glib.def: Remove own implementation of dirent
321         functions. Instead, gcc (mingw) users should go ahead and use the
322         <dirent.h> included with the mingw gcc, and the dirent functions
323         included in libmingw32, while MSVC users can use the same (public
324         domain) code, extracted from mingw-runtime sources and placed in
325         build/win32/dirent.[ch].
326
327         * glib/gwin32.c (get_package_directory_from_module,
328         g_win32_get_package_installation_directory): Use static lock to
329         protect static hash table.
330
331 Sat Sep 29 02:33:14 2001  George Lebl <jirka@5z.com>
332
333         * tests/testglib.c (main): cast the string size to gulong and use %lu
334           for printing to avoid 64bit issues
335
336         * glib/gstrfuncs.[ch] (g_ascii_strncasecmp): Change the 'n' argument 
337           to gsize instead guint.
338
339 Fri Sep 28 19:41:32 2001  Owen Taylor  <otaylor@redhat.com>
340
341         * glib/libcharset/* configure.in: Fix macros from libcharset
342         to work with autoconf-2.5x. (From Laszlo Peter.)
343
344 2001-09-27  Matthias Clasen  <matthiasc@poet.de>
345
346         * glib/gstring.c: Fix inline docs for g_string_prepend_unichar.
347
348 2001-09-29  Abel Cheung  <maddog@linux.org.hk>
349
350         * configure.in: Add quotes around test values. This fixes a minor
351           annoying warning if platform is not win32.
352
353 2001-09-27  Manish Singh  <yosh@gimp.org>
354
355         * glib/grand.c (g_rand_new): fix typo (#if->#ifdef) so it compiles
356         again.
357
358 2001-09-24  Bruno Haible  <haible@clisp.cons.org>
359
360         * glib/gwin32.c (g_win32_getlocale): When the sublangid is
361         SUBLANG_DEFAULT, return the locale of the language's main country,
362         not a country-neutral locale. E.g. "en_US" instead of "en". Add
363         handling of LANG_SORBIAN. Fix typo for SUBLANG_CHINESE_SIMPLIFIED
364         (China == CN, CH == Switzerland). Ignore empty environment
365         variable values.
366
367 2001-09-28  Tor Lillqvist  <tml@iki.fi>
368
369         * glib/makefile.{mingw,msc}.in: Add localcharset.o. Just copy the
370         source file from libcharset and compile in this directory.
371
372         * glib/giochannel.c: Mark rest of g_set_error strings for
373         translation, too.
374
375         * glib/giowin32.c: Add some debugging output functions, call them
376         when debugging.
377         (create_events, g_io_win32_msg_write): Free message fetched with
378         g_win32_error_message ().
379         (g_io_win32_check): Indentation fixes.
380         (g_io_win32_fd_read,g_io_win32_sock_read): Don't always return
381         G_IO_STATUS_NORMAL. Do return G_IO_STATUS_EOF if we got 0 bytes,
382         like on Unix. This helps making the test programs run
383         successfully.
384
385         * glib/gmain.c (g_poll): Return the code ifdeffed out with
386         TEST_WITHOUT_THIS. Can't remember why it was ifdeffed out. Things
387         seem to work as previously with the code in place. Especially
388         spawn-test didn't work with the code ifdeffed out (Bug#61067).
389
390         * glib/grand.c (g_rand_new): Don't try to use /dev/urandom unless
391         on Unix.
392
393         * glib/gspawn-win32-helper.c (WinMain): Remove Sleep(10000)
394         accidentally left in.
395
396 Thu Sep 27 14:26:57 2001  Owen Taylor  <otaylor@redhat.com>
397
398         * glib/gstrfuncs.c (g_ascii_strup/down): Use gssize to
399         match the header. (Reported by Elliot Lee.)
400
401 Wed Sep 26 22:34:12 2001  Owen Taylor  <otaylor@redhat.com>
402
403         Fixes for #58195, based on some ideas from Hidetosh Tajima.
404
405         * aclibcharset.m4 glib/libcharset: Add Bruno Haible's
406         portable-current charset detection code from libiconv.
407
408         * glib/gutf8.c (g_utf8_get_charset_internal): Rewrite
409         to use _g_locale_charset().
410
411         * glib/gutf8.c (_g_charset_get_aliases): Private functions
412         to get aliases from libcharset for a particular canonical
413         name.
414
415         * glib/gconvert.c: If loading a charset fails, try 
416         aliases to look for fallbacks.
417         
418 2001-09-26  Matthias Clasen  <matthiasc@poet.de>
419
420         * gmem.c (g_mem_is_system_malloc): Return !vtable_set.
421
422 2001-09-26  Tor Lillqvist  <tml@iki.fi>
423
424         * configure.in: Retract my change earlier today. Don't preset
425         autoconf variables in a try to match both mingw and MSVC. Instead,
426         he who packages a prebuilt GLib developer distribution for Win32
427         runs configure twice: once for mingw, once for MSVC, and then uses
428         diff -D on the glibconfig.h files to generate a suitably ifdeffed
429         glibconfig.h for distribution that suits both compilers. (Ditto
430         for config.h, although that file wouldn't be distributed in a
431         developer package, but in a source package for Win32 users who
432         want to build GLib but can't use configure.)
433
434         * glibconfig.h.win32.in
435         * config.h.win32.in: Generated by using diff -D as described above.
436
437         * tests/makefile.mingw.in (.c.exe): Correct name of gthread (import)
438         library.
439
440 Wed Sep 26 15:33:37 2001  Owen Taylor  <otaylor@redhat.com>
441
442         * Makefile.am po/Makefile.in.in: Fix distclean to 
443         remove some extra files. #60993, Ben Gertzfield
444
445 Wed Sep 26 14:37:52 2001  Owen Taylor  <otaylor@redhat.com>
446
447         * glib/gen-unicode-tables.pl glib/guniprop.c 
448           glib/{gunibreak,gunichartables,gunidecomp}.h:
449         Patch from Andrew Taylor to make much of the unicode
450         table data const so that it can be made read-only
451         and shared.
452
453 Wed Sep 26 12:41:05 2001  Owen Taylor  <otaylor@redhat.com>
454
455         * glib/gstrfuncs.c (g_strdup_vprintf): Copy if 
456         !g_mem_is_system_malloc, not the other way around.
457         (Found by James Antill.)
458
459 Wed Sep 26 11:00:31 2001  Owen Taylor  <otaylor@redhat.com>
460
461         * glib/gstrfuncs.c (g_strnfill): Use memset; might be 
462         faster if someone used this for a biiig string.
463         (Suggestion from Jakub Jelinek)
464
465 2001-09-26  Tor Lillqvist  <tml@iki.fi>
466
467         * configure.in: (Win32:) Move the Win32 check closer to the start,
468         after the BeOS checks. Preset some autoconf variables so that
469         configure won't find those few headers and functions that gcc
470         (mingw) pretends to implement (even if the actual C library
471         doesn't), but MSVC doesn't. This because I want the same config.h
472         and glibconfig.h to be usable both from gcc and MSVC (as they use
473         the same C library). Some other minor hackery for this purpose.
474
475         * glibconfig.h.win32.in
476         * config.h.win32.in: Use versions generated by configure (and
477         hand-edited slightly).
478
479 2001-09-25  Darin Adler  <darin@bentspoon.com>
480
481         * glib/gtree.h: Use gboolean for return value of GTraverseFunc.
482
483 Tue Sep 25 11:34:22 2001  Owen Taylor  <otaylor@redhat.com>
484
485         * configure.in: Version 1.3.9 (binary, interface == 0)
486
487         * glib/gstrfuncs.c (g_ascii_strdown): Change g_ascii_strup/strdown
488         to take a 'len' argument to match g_utf8_strup/strdown. This
489         hopefully will also make it more obvious that they duplicate
490         the string rather than acting like g_strup/strdown.
491         (Suggestion from Matthias Clasen, #59550)
492
493 2001-09-25  Tor Lillqvist  <tml@iki.fi>
494
495         * configure.in: More Win32 automake macros. For .def files:
496         GLIB_DEF, GMODULE_DEF, GOBJECT_DEF and GTHREAD_DEF. For .exp
497         files: TESTGMODULE_EXP (for programs that need to export symbols,
498         just testgmodule here). A new conditional, MS_LIB_AVAILABLE to
499         test whether the Microsoft librarian ("ar") is available to build
500         MS import libraries.
501  
502         * glib/Makefile.am
503         * gmodule/Makefile.am: Use above. New rule to build MS import
504         library.
505
506         * glib/makefile.msc.in
507         * tests/makefile.msc.in
508         * tests/makefile.mingw.in: Use same DLL and import library names as
509         libtool.
510
511 2001-09-24  Matthias Clasen  <matthiasc@poet.de>
512
513         * glib/gutf8.c, glib/gunibreak.c, glib/gunicollate.c,
514         glib/gunidecomp.c, glib/guniprop.c: Inline doc consistency fixes.
515
516 2001-09-24  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>
517
518         * configure.in: Added "sk" to ALL_LINGUAS.
519
520 2001-09-22  Hans Breuer  <hans@breuer.org>
521
522         * glib/giowin32.c : simply setting is_readable and is_writeable
523         to TRUE does make Gimp plug-ins work again. Still no API known
524         to request this info on Win32 (see #57690)
525
526 2001-09-21  Hans Breuer  <hans@breuer.org>
527
528         * makefile.msc : added rule for glibconfig.h
529
530         * glib/giowin32.c (g_io_channel_new_file) : always open
531         in binary mode (fix for #57695)
532
533         * glib/glib.def : updated externals
534
535         * glib/gwin32.c : re-added LANG_* and SUBLANG_* definitions,
536         which are missing from the msvc 5.0 win32 sdk
537
538         * glib/makefile.msc.in : added gbsearcharry
539
540 Thu Sep 20 20:33:45 2001  Owen Taylor  <otaylor@redhat.com>
541
542         * Rename g_mem_vtable_is_set() to g_mem_is_system_malloc().
543
544 2001-09-20  Tor Lillqvist  <tml@iki.fi>
545
546         * glib/gutils.c (g_path_is_absolute): (Win32:) Accept also forward
547         slashes. (But still don't accept them in the other functions
548         here. This is a thorny issue. Windows in fact does treat / like \
549         on input (at least as local directory separators, dunno about
550         server/share separators). But GLib only has the one
551         G_DIR_SEPARATOR value, that apps should scan for, and use when
552         building pathnames. To properly fix this would require totally
553         abstracting pathnames, and don't having any path name scanning and
554         building in applications at all. Fat chance.)
555         (GLIB_LOCALE_DIR): Redefine only on "pure" Win32, not Cygwin. Use
556         subdirectory "share\locale", as on Unix.
557
558         * glib/gwin32.c: Don't need to define those langiage and
559         sublanguage constants here, current mingw (w32api) headers have
560         them.
561
562         * glib/glib.def: Add a few missing entry points.
563
564         * tests/testglib.c (main): Use same name for DLL as libtool does.
565         Use G_DIR_SEPARATOR in g_path_get_basename tests.
566
567 Wed Sep 19 16:35:22 2001  Owen Taylor  <otaylor@redhat.com>
568
569         * glib/gmain.c (g_main_context_find_source_by[_funcs]_user_data): 
570         Fix handling of user data when locating sources. 
571         (#60414, Katsuhiro Okuno)
572
573 Wed Sep 19 14:17:31 2001  Owen Taylor  <otaylor@redhat.com>
574
575         Patch from Matthias Clasen (#59806)
576
577         * configure.in: Check for vasprintf().
578
579         * glib/gmem.[ch]: Add g_mem_vtable_is_set() to be used
580         for efficiency hacks to avoid extra copies when not
581         needed.
582
583         * glib/gstrfuncs.c: Use vasprintf() to implement
584         g_strdup_printf() when available.
585
586         * glib/gmessages.c (g_logv): Avoid using 
587         printf_string_upper_bound() when we have have vsnprintf.
588
589         * glib/gmessages.c (printf_string_upper_bound): Don't
590         segfault when warning about positional parameters.
591
592 Wzed Sep 19 14:05:27 2001  Owen Taylor  <otaylor@redhat.com>
593
594         * glib/{gcache.c,gmem.c,grel.c,gstring.c,gtimer.c,gtree}:
595         Patch from Darin Adler to remove GReal* structures in
596         favor of simple opaque typedefs in cases where there
597         were no non-private members. (#59693)
598
599 Wed Sep 19 13:03:38 2001  Owen Taylor  <otaylor@redhat.com>
600
601         * glib/giochannel.c (g_io_channel_read/write_chars): Handle NUL
602         bytes_written, bytes_read. (Suggested by Joshua N Pritikin, #59550)
603
604 Wed Sep 19 12:49:11 2001  Owen Taylor  <otaylor@redhat.com>
605
606         * glib/gutils.c (g_get_any_init): Handle failure of
607         sysconf and pick a fixed size buffer. (Happens on Cygwin
608         #60242)
609
610 Wed Sep 19 11:23:41 2001  Owen Taylor  <otaylor@redhat.com>
611
612         * configure.in: Error out if gettext support is not found. (#59386)
613
614 2001-09-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
615
616         * glib/gthread.h (GThreadFunctions): Add thread_equal function to
617         allow for platform defined function to compare two threads.
618
619         * glib/gthread.c: Use g_thread_functions_for_glib_use.thread_equal
620         when non-NULL instead of ==.
621         
622 Wed Sep 19 10:44:25 2001  Tim Janik  <timj@gtk.org>
623
624         * Released 1.3.8.
625
626 Tue Sep 18 22:57:33 2001  Tim Janik  <timj@gtk.org>
627
628         * configure.in (GLIB_MICRO_VERSION): up version number to 1.3.8,
629         interface age 0, binary age 0.
630
631         * NEWS: updates.
632
633 Tue Sep 18 18:23:02 2001  Owen Taylor  <otaylor@redhat.com>
634
635         Fixes for compilation on Solaris (#59026, Frank Belew)
636
637         * glib/gqsort.c (g_qsort_with_data): Use g_alloca().
638
639         * glib/giochannel.c (g_io_channel_read_to_end): Fix use
640         of ternary on left-hand-side.
641
642         * configure.in: Handle the ac_cv_working_alloca_h variable
643         set by autoconf-2.5x.
644
645 Tue Sep 11 18:50:44 2001  Owen Taylor  <otaylor@redhat.com>
646
647         * m4macros/glib-gettext.m4 acinclude.m4: Remove commented
648         out sections for clarity.
649
650 Tue Sep 18 18:19:33 2001  Tim Janik  <timj@gtk.org>
651
652         * tests/testglib.c: add simple test for g_path_get_basename().
653
654         * glib/gfileutils.c (g_file_open_tmp): 
655         * glib/gstrfuncs.c (g_strerror): scratch erroneous usages
656         of "illegal".
657
658 2001-09-18  Tor Lillqvist  <tml@iki.fi>
659
660         * glib/gmain.c
661         * glib/giowin32.c: Mark the _funcs tables for export.
662
663         * glib/glib.def: Add here, too.
664
665         * glib/gwin32.c (get_package_directory_from_module): No reason to
666         check for the module being in a bin or lib directory only when
667         module_name is non-NULL.
668
669         * glib/gwin32.c (g_win32_get_package_installation_directory):
670         Check first in HKEY_CURRENT_USER, then in HKEY_LOCAL_MACHINE.
671
672 2001-09-17  Darin Adler  <darin@bentspoon.com>
673
674         * tests/strfunc-test.c: (main): Change so that it works
675         on platforms where isalpha is a macro only, without the
676         corresponding function that the C standard requires.
677         Also eliminate the multiple lists of ctype functions.
678
679         * tests/.cvsignore: Ignore the new test.
680
681 2001-09-17  Tor Lillqvist  <tml@iki.fi>
682
683         * configure.in: Add variable for LT_CURRENT minus LT_AGE (the
684         suffix used by libtool on Win32 for DLLs). Set variables for the
685         compiled resource files on Windows. Handle the native Win32
686         threads gmodule.
687
688         * glib/Makefile.am
689         * gmodule/Makefile.am
690         * gobject/Makefile.am: (Win32) Add hacks to link in the object
691         file produced from the resource file. Use the lt-compile-resource
692         script from the build module. The non-hack way would be to teach
693         libtool, autoconf and automake about .rc files (which are a kind
694         of source code, after all, that gets compiled to object
695         files). But then there would be problems with those who don't have
696         bleeding edge auto* and libtool.
697
698         * glib/glib.def
699         * gobject/gobject.def: Updates.
700
701         * glib/glib.rc.in
702         * gmodule/gmodule.rc.in
703         * gobject/gobject.rc.in
704         * gthread/gthread.rc.in: Update InternalName and OriginalFilename to
705         match libtool's naming convention for DLLs.
706
707         * glib/gutils.c: Ditto when constructing the DLL name in the
708         definition for GLIB_LOCALE_DIR.
709
710         * glib/makefile.mingw.in
711         * gmodule/makefile.mingw.in
712         * gobject/makefile.mingw.in
713         * gthread/makefile.mingw.in: Update import library names.
714         
715 Fri Sep 14 20:34:27 2001  Matthias Clasen  <matthiasc@poet.de>
716
717         * glib/gconvert.c (g_filename_from_uri): Replace `is contains'
718         by `contains' in two error messages. (#60395)
719
720 2001-09-10  Ron Steinke  <rsteinke@w-link.net>
721
722         * glib/giochannel.h glib/giochannel.c: Added a length argument
723         to g_io_channel_[set,get]_line_term(), allowing embeded nulls
724         and binary safe line termination strings
725
726         * glib/giochannel.c: Got rid of a compile warning in
727         g_io_channel_write_chars()
728
729 Mon Sep 10 17:13:36 2001  Tim Janik  <timj@gtk.org>
730
731         * glib/gmessages.h: got rid of g_set_error_handler(),
732         g_set_warning_handler(), g_set_message_handler().
733
734 Mon Sep 10 11:42:58 2001  Owen Taylor  <otaylor@redhat.com>
735
736         * glib/gutf8.c glib/gstring.c glib/gfileutils.c glib/gmain.c: 
737         Doc fixes.
738
739 Sat Sep  8 17:14:51 2001  Owen Taylor  <otaylor@redhat.com>
740
741         * glib/gfileutils.[ch]: Add g_build_path(), 
742         g_build_filename(), to create separated paths, 
743         suppressing duplicate separators, from varargs
744         lists.
745
746         * tests/strfunc-test.c: Add tests for g_build_path(),
747         g_build_filename().
748
749 Sat Sep  8 14:11:53 2001  Owen Taylor  <otaylor@redhat.com>
750
751         * glib/Makefile.am (libglib_1_3_la_SOURCES): Add
752         gbsearcharray.[ch].
753
754         * glib/glib-object.h: Remove include of gbsearcharray. 
755
756 Mon Sep  3 23:29:51 2001  Owen Taylor  <otaylor@redhat.com>
757
758         * Version 1.3.7
759
760         * Makefile.am (EXTRA_DIST): Distribute po/po2tbl.sed.in
761
762         * Makefile.am: Remove references to glib.rc[.in]
763
764         * NEWS: Various additions.
765
766 2001-09-04  Tor Lillqvist  <tml@iki.fi>
767
768         * README.win32: Update. Don't mention pthreads.
769
770         * build-dll: Remove, moved to the build module.
771
772         * glibconfig.h.win32.in: Don't mention pthreds here, either.
773
774         * glib/gstrfuncs.c: Mark the correct variable for export from DLL.
775
776         * glib/giowin32.c (g_io_win32_msg_create_watch): Owen forgot to
777         rename the win32_watch_funcs variable here, too.
778
779         * */makefile.mingw.in: Don't use version number in import library
780         name. Use whole version number in DLL name. Use build-dll from the
781         build module.
782
783 Tue Sep  4 01:50:24 2001  Tim Janik  <timj@gtk.org>
784
785         * NEWS: updates for 1.3.7 release.
786
787 Mon Aug 27 14:56:12 2001  Owen Taylor  <otaylor@redhat.com>
788
789         * glib/gmain.h: Add closure_marshal/closure_callback
790         fields to GSourceFuncs for use by g_source_set_closure().
791
792         * glib/gmain.c glib/giounix.c glib/giowin32.c 
793           glib/gmain.h: Export the SourceFuncs vtables so GObject
794         can use them to figure out closure callbacks/marshallers
795         for the default source types.
796
797 Sun Sep  2 13:05:53 2001  Owen Taylor  <otaylor@redhat.com>
798
799         * glib/gstrfuncs.c (g_strchomp): Replace some uses
800         of isspace() with g_ascii_isspace().
801
802         * glib/gutf8.c glib/gunicode.h glib/gstrfuncs.[ch]: Add
803         extra indirections to g_utf8_skip and g_ascii_table to
804         avoid great whopping copy relocs.
805
806 Sun Sep  2 11:10:42 2001  Owen Taylor  <otaylor@redhat.com>
807
808         * glib/gen-unicode-tables.pl glib/gunicomp.h
809         glib/gunichartables.h glib/giounix.c: Fix some variables that 
810         should have been static.
811
812 2001-08-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
813
814         * glib/gthread.h, glib/gthread.c: Add 'want_to_read' to
815         GStaticRWLock to avoid calling g_cond_broadcast, when no one is
816         waiting.
817
818         * glib/gmain.c (g_main_context_add_poll_unlocked): Don't free
819         cached_poll_array, when adding new poll's. This is taken care for
820         in g_main_context_iterate.
821
822 2001-08-30  Tor Lillqvist  <tml@iki.fi>
823
824         After being away for about five months, I'm back working on
825         this...  For now, still using same build setup for Win32. Probably
826         will change to not including version numbers in the import library
827         names, though. (But the DLL names would still include them,
828         possibly even also the micro version number.) That would be more
829         Unix-like. Also, will have to check out newest mingw tool versions
830         to see if the build-dll script now can be retired.
831         
832         * makefile.mingw
833         * makefile.msc: New files, no need to generate from .in as
834         they don't contain references to automake variables.
835         
836         * makefile.mingw.in
837         * makefile.msc.in: Removed.
838         
839         * glib.rc.in: Remove
840         * glib/glib.rc.in: Moved here.
841         
842         * Makefile.am
843         * glib/Makefile.am: Corresponding changes.
844
845         * glib/glib.def: Fix typo, add new entries.
846
847         * glib/gspawn-win32-helper.c: More debugging. Doesn't work
848         currently (or then it never has on Win2k, which I now use?)
849
850         * glib/gstrfuncs.c
851         * glib/gstrfuncs.h: Mark g_ascii_table for export/import on Win32.
852
853         * */makefile.mingw.in: Reflect new location of glib library.
854         
855 2001-08-30  Michael Natterer  <mitch@gimp.org>
856
857         * glib/giochannel.h: (struct GIOChannel): "gboolean foo : 1"
858         results in TRUE being -1 once assigned, use "guint foo : 1"
859         instead.
860
861 2001-08-27  Darin Adler  <darin@bentspoon.com>
862
863         * glib/gconvert.h:
864         * glib/gconvert.c: (g_filename_from_uri):
865         Updated name of error from G_CONVERT_ERROR_NOT_LOCAL_FILE to
866         G_CONVERT_ERROR_NOT_ABSOLUTE_FILE_URI.
867         
868         * tests/.cvsignore:
869         * tests/uri-test.c:
870         Added a lot more test for the new URI functions, including a
871         number that seem to indicate some minor bugs.
872
873 2001-08-26  Alex Larsson  <alexl@redhat.com>
874
875         * glib/gconvert.[ch] (g_filename_from_uri,
876         g_filename_to_uri): New functions to convert
877         between local pahtnames and file: uris.
878
879         * tests/Makefile.am:
880         * tests/uri-test.c:
881         Tests for the new functions.
882
883 2001-08-25  Alexander Larsson  <alla@lysator.liu.se>
884
885         * glib/gstrfuncs.[ch]:
886         * docs/reference/glib/glib-overrides.txt:
887         * docs/reference/glib/glib-sections.txt:
888         * docs/reference/glib/tmpl/string_utils.sgml:
889         Implement and document g_ascii_isxxx.
890
891         * tests/strfunc-test.c:
892         Add tests for g_ascii_isxxx
893         
894         * glib/guniprop.c (g_unichar_ispunct):
895         include symbols, not just punctuation.
896         (g_unichar_isspace): Vertical tab is not
897         considered whitespace.
898         
899         * tests/shell-test.c:
900         Output errors on stderr
901
902 2001-08-24  Alexander Larsson  <alla@lysator.liu.se>
903
904         * glib/gconvert.[ch] (g_convert_with_iconv):
905         New function, doing the same as g_convert but taking
906         a GIConv argument. The old g_convert is just
907         a call to this with a newly opened GIConv.
908
909 2001-08-24  Darin Adler  <darin@bentspoon.com>
910
911         * tests/shell-test.c: (check_string_result): Fix bad indenting.
912         I figured I should fix this since I just pointed Alex here to
913         look at this as an example.
914
915 2001-08-24  Ron Steinke  <rsteinke@w-link.net>
916
917         * glib/giochannel.c: Matthias Clasen's fix for
918         the buffer corruption bug by setting outbuf _after_
919         the call to g_string_set_size()
920
921         * glib/giochannel.c: kept the buffers from perpetually
922         growing by subtracting 1 from allocated_len in the calculation
923         of available space to account for the null at the end of the
924         buffer
925
926         * glib/giochannel.c: fixed g_io_channel_write_chars()
927         to not write more than space_in_buf bytes for the UTF-8 case
928
929 Fri Aug 24 11:15:46 2001  Owen Taylor  <otaylor@redhat.com>
930
931         * glib/gstrfuncs.c docs/Changes-2.0.txt: Patch from Darin
932         Adler to restore Glib-1.2 handling of empty strings,
933         and to fix off-by-one with @max_tokens. (#57663).
934         Doc improvements.
935
936         * tests/strfunc-test.c: Change tests to correspond to
937         new behavior of g_strsplit().
938
939 Thu Aug 23 11:09:58 2001  Owen Taylor  <otaylor@redhat.com>
940
941         * glib/ghash.c (g_hash_table_foreach_remove_or_steal): 
942         Patch from Josh Pritikin to fix reversed key and value destroy 
943         functions. (#59433)
944
945         * glib/giochannel.h (struct _GIOChannel): Mark structure
946         /*< private >*/
947
948 Thu Aug 23 16:14:17 2001  Tim Janik  <timj@gtk.org>
949
950         * glib/gmacros.h (G_GNUC_NO_INSTRUMENT): new macro.
951
952 2001-08-21  Abel Cheung  <maddog@linux.org.hk>
953
954         * configure.in: Added "zh_TW" to ALL_LINGUAS.
955
956 2001-08-20  Sven Neumann  <sven@gimp.org>
957
958         * Makefile.am: added po to SUBDIRS
959
960 Sun Aug 19 21:32:39 2001  Owen Taylor  <otaylor@redhat.com>
961
962         * glib/ghash.c: Eliminate use of floating point when 
963         determining if the hash table needs to be resized,
964         and also factor out the test from g_hash_table_resize()
965         to save function calls for the common case.
966         (#59124)
967
968         * glib/gmain.c (g_main_context_query): Document the
969         return value.
970
971 2001-08-19  Darin Adler  <darin@bentspoon.com>
972
973         * glib/gshell.c: (g_shell_quote): Added missing \ character.
974
975         * tests/shell-test.c: (check_string_result), (test_shell_unquote),
976         (main): Added tests for g_shell_quote and g_shell_unquote.
977
978 2001-08-19  Fatih Demir <kabalak@gtranslator.org>
979
980         * configure.in: Added "ta" to the languages list.
981
982 2001-08-19  Havoc Pennington  <hp@pobox.com>
983
984         * glib/gshell.c (g_shell_unquote): add comment about shell quoting
985         rules to the docs.
986
987 2001-08-16  Ron Steinke  <rsteinke@w-link.net>
988
989         * glib/giounix.c: fixed an error in setting close_on_unref
990         in g_io_channel_new_file ()
991
992 2001-08-16  Ron Steinke  <rsteinke@w-link.net>
993
994         * glib/giochannel.c glib/glib.def glib/giochannel.h: Added
995         new functions g_io_channel_[set,get]_close_on_unref ()
996
997         * glib/giochannel.c: glib/giochannel.h: Documentation fixes
998
999         * glib/giochannel.c: Fixed g_io_channel_write_chars ()
1000         so that bytes_written is always set to an appropriate
1001         value when it returns
1002
1003         * glib/giounix.c: changed g_io_channel_get_flags () to
1004         set the is_readable and is_writeable flags cached
1005         by the channel
1006
1007 Wed Aug 15 11:09:56 2001  Tim Janik  <timj@gtk.org>
1008
1009         * Makefile.am: let the generated .pc files depend on config.status,
1010         so they get correctly remade.
1011
1012 Sun Aug 12 21:05:13 2001  Tim Janik  <timj@gtk.org>
1013
1014         * glib/gmessages.h: fix g_return_if_fail, g_assert and friends to
1015         have a body for G_DISABLE_CHECKS and G_DISABLE_ASSERT.
1016         fixes #58873.
1017
1018 2001-08-12  Ron Steinke  <rsteinke@w-link.net>
1019
1020         * glib/giochannel.c: safer handling of errno, fixed
1021         a bug in an assert
1022
1023 Sun Aug 12 10:09:00 2001  Owen Taylor  <otaylor@redhat.com>
1024
1025         * tests/iochannel-test.c (main): Find test case for
1026         srcdir != builddir, miscellaneous cleanups.
1027
1028         * tests/Makefile.am (EXTRA_DIST): Distribute casefold.txt,
1029         casemap.txt iochannel-test-infile.
1030
1031         * glib-2.0-uninstalled.pc.in: Fix for move of glib files
1032         into subdir. (Pointed out by Steve Baker)
1033
1034 Sat Aug  4 01:04:08 2001  Tim Janik  <timj@gtk.org>
1035
1036         * glib/gscanner.c (g_scanner_unexp_token): fix INT and FLOAT warnings
1037         for invalid token values.
1038
1039 2001-08-10  Ron Steinke  <rsteinke@w-link.net>
1040
1041         * glib/giochannel.c: Fixed a "sense of comparison" bug,
1042         added an assert to check when g_io_channels_read_chars ()
1043         is looping endlessly due to encoded_read_buf being corrupted.
1044
1045 2001-08-06  Sven Neumann  <sven@gimp.org>
1046
1047         * glib/gutils.[ch]: added new function g_nullify_pointer().
1048         
1049 2001-08-05  Ron Steinke  <rsteinke@w-link.net>
1050
1051         * glib/giochannel.c glib/giochannel.c glib/glib.def
1052         docs/reference/glib/glib-sections.txt: Added new functions
1053         g_io_channel_[read,write]_unichar ()
1054
1055         * glib/giochannel.h: Finally remembered to remove the
1056         old error message G_IO_CHANNEL_ERROR_PCHAR_FLUSH
1057
1058         * glib/giochannel.c: Some fixes to g_io_channel_fill_buffer ()
1059         and g_io_channel_write_chars ()
1060
1061 2001-08-05  Ron Steinke  <rsteinke@w-link.net>
1062
1063         * glib/giochannel.c: Replaced the local use_buf variable with a macro
1064         in most places. This allows us to check some things without worrying
1065         whether we have allocated the read buffers yet, and allows us to allocate
1066         the buffers later in some cases.
1067
1068         * glib/giochannel.c: Introduced a MAX_CHAR_SIZE macro, which is
1069         supposed to be greater than or equal to the length in bytes
1070         of the longest character in any encoding. This is necessary
1071         to get the minimum buffer size for successful writing.
1072
1073         * glib/giochannel.c: Fixed g_io_channel_set_encoding () so
1074         that it just prints a warning if partial_write_buf isn't
1075         empty instead of failing.
1076
1077         * glib/giochannel.c: Fixed several functions so they can accept
1078         NULL parameters for pointers to return values.
1079
1080         * glib/giochannel.c: Altered the error handling for
1081         g_io_channel_read_chars () to only return an error if
1082         it doesn't have any buffered data.
1083
1084         * glib/giochannel.c: Rewrote g_io_channel_write_chars ()
1085         to fix the error handling and remove duplicate sections
1086         of code.
1087
1088         * glib/giounix.c: Fixed g_io_channel_new_file () to
1089         call fstat () to set the is_seekable flag, in case someone
1090         uses it on a FIFO.
1091
1092 Sun Aug  5 08:25:30 2001  Owen Taylor  <otaylor@redhat.com>
1093
1094         * glib/gmacros.h: Include stddef.h so that we use
1095         the system's definition of NULL. (#54730)
1096
1097 2001-08-04  Alexander Larsson   <alexl@redhat.com>
1098         
1099         * win32-fixup.pl: 
1100         Hacky script to fix up your .msc.in files on windows. 
1101         Dunno if this is a good solution yet.
1102         
1103         * build/win32/module.defs:
1104         Back down libiconv version to 1.3, since that is what tor distributes.
1105         
1106         * glib/glib.def:
1107         Update
1108
1109         * gobject/makefile.msc.in:
1110         build gobject-query.exe and gmarshal.strings, add libiconv dependency to linklines.
1111
1112         * gobject/marshal-genstrings.pl:
1113         New file. perl script to generate gmarshal.strings.
1114         
1115 2001-08-03  Ron Steinke  <rsteinke@w-link.net>
1116
1117         * glib/giochannel.c: Fixed g_io_channel_seek_position()
1118         so that G_SEEK_CUR can be used with UTF-8 encoding
1119
1120         * glib/giochannel.c: Changed test to decide whether
1121         use_buf is encoded_read_buf or read_buf from
1122         "if (channel->do_encode)" to "if (channel->encoding)" to
1123         fix bug 58472
1124
1125         * tests/iochannel-test.c: Fixed so it doesn't output
1126         double newlines
1127
1128         * glib/giochannel.c: Fixed g_io_channel_fill_buffer()
1129         so that encoded_read_buf is created for UTF-8 encoding
1130
1131 2001-08-03  Darin Adler  <darin@bentspoon.com>
1132
1133         * tests/strfunc-test.c: (strv_check), (main):
1134         Improve strfunc test to test the split function in a way that
1135         demonstrates its idiosyncrasies.
1136         * tests/.cvsignore:
1137
1138 2001-08-03  Sven Neumann  <sven@gimp.org>
1139
1140         * configure.in: beautified configure help output.
1141         
1142         * glib/gtree.c: changed help for g_tree_insert(); it was misleading.
1143
1144 Fri Aug  3 10:20:10 2001  Owen Taylor  <otaylor@redhat.com>
1145
1146         * glib/guniprop.c (g_unichar_xdigit_value): Fix computation
1147         (Fix from Cesar Rincon)
1148
1149 2001-08-01  Christopher James Lahey  <clahey@ximian.com>
1150
1151         * glib/gutf8.c (g_utf8_find_prev_char): Made g_utf8_find_prev_char
1152         able to return the first character of a string.
1153
1154 2001-07-31  Ron Steinke  <rsteinke@w-link.net>
1155
1156         * glib/giochannel.h: Committed this file, which is where
1157         the changes in my previous changelog entry happened,
1158         not giochannel.c
1159
1160 2001-07-31  Sven Neumann  <sven@gimp.org>
1161
1162         * glib/gmem.c: declare gboolean vtable_set static.
1163
1164 2001-07-30  Ron Steinke  <rsteinke@w-link.net>
1165
1166         * glib/giochannel.c docs/reference/glib/glib-sections.txt
1167         tests/iochannel-test.c: removed G_IO_CHANNEL_*_LINE_TERM macros
1168
1169         * glib/giochannel.c put /*<public>*/ and /*<private>*/ tags in
1170         the GIOChannel structure
1171
1172
1173 2001-07-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1174
1175         * configure.in: #undef inline before testing whether it works to
1176         avoid false positives. Patch from Garry R. Osgood
1177         <grosgood@rcn.com>. Fixes bug #58272.
1178
1179         * gmodule/gmodule.c (parse_libtool_archive): build the library
1180         name ourselfs ... so we can load the library specified and not
1181         mangle any name not beggining in 'lib'. Patch from Michael Meeks
1182         <michael@ximian.com>. Fixes bug #58226.
1183
1184 2001-07-29  Ron Steinke  <rsteinke@w-link.net>
1185
1186         * glib/giochannel.c: Matthias Classen's patch to give
1187         g_io_channel_flush() the correct sense when testing
1188         whether the buffer is empty
1189         * glib/giounix.c: Matthias Classen's patch to set
1190         the mode of a file created with g_io_channel_new_file()
1191
1192 Sun Jul 29 16:08:17 2001  Tim Janik  <timj@gtk.org>
1193
1194         * glib/gscanner.[hc]: removed deprecated g_scanner_stat_mode().
1195
1196         * glib/gscanner.c (g_scanner_msg_handler): by default, print scanner
1197         errors and warnings to stderr.
1198
1199 2001-07-27  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1200
1201         * glib/gtypes.h: Use G_GNUC_EXTENSION instead of
1202         __extension__. Patch from Pavel Roskin <proski@gnu.org>.
1203
1204 2001-07-26  Darin Adler  <darin@bentspoon.com>
1205
1206         * configure.in:
1207         * m4macros/glib-2.0.m4:
1208         Update location of pkgconfig from sourceforge.net to new
1209         location at freedeskop.org.
1210
1211 2001-07-26  Michael Natterer  <mitch@convergence.de>
1212
1213         * gobject/glib-genmarshal.c: added a "release_check" to the
1214         OutArgument structure, which, if present, gets integrated in the
1215         marshaller code and protects us from stuff like
1216         g_object_unref(NULL) on marshaller return values.
1217
1218 2001-07-23  Padraig O'Briain  <Padraig.Obriain@sun.com>
1219
1220         * gobject/gobjectnotifyqueue.c: fix unconditional check of
1221         first GParamSpec in g_object_notify_queue_thaw(); prevent
1222         property notification being lost
1223
1224 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
1225
1226         * glib/giochannel.c: fixed g_io_channel_seek_position() so that
1227         G_SEEK_CUR works for UTF-8 channel encoding, and unallocated
1228         converters are not flushed after the seek; fixed
1229         g_io_channel_get_buffer_condition() so that G_IO_IN is only
1230         set if the read buffer contains at least one full character
1231
1232 2001-07-23  Sven Neumann  <sven@gimp.org>
1233
1234         * Makefile.am: removed glib.def from EXTRA_DIST ...
1235         * glib/Makefile.am: ... and added it here.
1236
1237 2001-07-22  Hans Breuer  <hans@breuer.org>
1238
1239         * glib/giochannel.c (g_io_channel_get_buffer_condition) : make
1240         the code actually have an effect (Use |= to set bits). Not
1241         absolutely sure if is the right one.
1242
1243         * glib/giowin32.c (g_io_win32_<check|prepare>) : don't modify
1244         watch->condition but restored the previous behaviour.
1245         Now gio-test as well as The Gimp work again ...
1246         
1247 2001-07-21  Hans Breuer  <hans@breuer.org>
1248
1249         * glib/giowin32.c (g_io_channel_new_file) : set the
1250         corresponding p(ermission)mode of the file when creating,
1251         otherwise a wronly file couldn't be overwritten (at least
1252         not on Win9x).
1253
1254 2001-07-21  Hans Breuer  <hans@breuer.org>
1255
1256         * glib/giowin32.c : intial implementation of new API functions.
1257         Not sure if it behaves as intended ...
1258
1259         * glib.def : removed, glib/glib.def is the file used since moved
1260         * glib/glib.def : updated
1261
1262         * tests/makefile.msc : added iochannel-test
1263
1264 Fri Jul 20 19:19:10 (UTC) 2001  Ron Steinke  <rsteinke@w-link.net>
1265
1266         * glib/giochannel.c: API changes, fixes to
1267         error handling, some internal restructuring
1268         * glib/giochannel.h: API changes, documentation for
1269         elements in GIOChannel structure
1270         * glib/giounix.c: Matched API changes, implemented
1271         backend to set is_readable, is_writeable, is_seekable
1272         flags, added a test to catch large values of count
1273         for which the behavior of write() is undefined
1274         * glib/giowin32.c: Changed to match new prototypes for
1275         io_close() and io_seek(), removed references to
1276         G_IO_STATUS_INTR, set is_seekable flag in channel
1277         creation functions
1278         * glib.def: Renamed g_channel_error_quark() and
1279         g_channel_error_from_errno() to g_io_channel_error_quark() and
1280         g_io_channel_error_from_errno(); added new functions
1281         g_io_channel_get_buffered() and g_io_channel_set_buffered()
1282         * docs/reference/glib/glib-sections.txt: Modified iochannel
1283         section to reflect new functions and API changes
1284         * tests/iochannel-test.c: Fixed to work with API changes
1285         * tests/iochannel-test-infile: New file; input file
1286         for iochannel-test
1287         * tests/unicode-collate.c tests/unicode-normalize.c:
1288         Changed G_IO_FILE_MODE_READ to "r" to match API change
1289
1290 Fri Jul 20 19:16:24 (UTC) 2001  Ron Steinke  <rsteinke@w-link.net>
1291
1292         * gobject/glib-genmarshal.c: modified to create header files
1293         using G_[BEGIN,END]_DECLS instead of #ifdef __cplusplus ...
1294
1295 Fri Jul 20 14:11:29 2001  Owen Taylor  <otaylor@redhat.com>
1296
1297         * glib/gutf8.c glib/gunidecomp.c: s/size_t/gsize/ to match
1298         prototypes.
1299
1300 Thu Jul 19 16:05:21 2001  Owen Taylor  <otaylor@redhat.com>
1301
1302         * glib/gcompletion.c (g_completion_complete): Fix memory
1303         leak and dubious list manipulation. (Found by 
1304         Ron Koerner, #53408)
1305
1306         * glib/gfileutils.c (get_contents_stdio): Call fclose()
1307         on FILE * on error. (#57057)
1308
1309 2001-07-20  Hans Breuer  <hans@breuer.org>
1310
1311         * glib/glib/giowin32.c : make it compile again
1312
1313         * glib/glib.def : updated exports
1314
1315         * glib/makefile.msc.in :
1316         * glib/makefile.mingw.in : 
1317         * tests/makefile.msc.in : reflect glib move
1318
1319         * tests/mainloop-test.c : #include <io.h> for _pipe()
1320
1321         * tests/gio-test.c : casts for strict compiler settings
1322
1323         * makefile.msc.in : new master makefile reflecting the glib
1324         move. The '.in' isn't really needed anymore, because there
1325         is no version number in it
1326
1327 2001-07-19  Darin Adler  <darin@bentspoon.com>
1328
1329         * glib/gstrfuncs.c: (g_ascii_strdown), (g_ascii_strup): Add
1330         missing const.
1331         (g_strsplit): Add g_return_val_if_fail for case of empty
1332         delimiter, which can result in an infinite loop otherwise.
1333         * glib/gstrfuncs.h: Add missing const.
1334         * tests/.cvsignore: Ignore a generated file.
1335         
1336         * tests/array-test.c:
1337         * tests/dirname-test.c:
1338         * tests/hash-test.c:
1339         * tests/list-test.c:
1340         * tests/node-test.c:
1341         * tests/relation-test.c:
1342         * tests/shell-test.c:
1343         * tests/slist-test.c:
1344         * tests/spawn-test.c:
1345         * tests/strfunc-test.c:
1346         * tests/string-test.c:
1347         * tests/testglib.c:
1348         * tests/tree-test.c:
1349         * tests/type-test.c:
1350         Add an #undef G_DISABLE_ASSERT so all tests will assert even if
1351         asserts are disabled inside glib itself.
1352
1353 Fri Jul 13 19:20:06 2001  Owen Taylor  <otaylor@redhat.com>
1354
1355         * glib/gstring.c (g_string_insert/append/prepend_unichar):
1356         Add functions to insert a unichar as UTF-8, since this
1357         is reasonably common.
1358
1359         * glib/gutf8.c glib/gunicode.h (g_utf8_get_char_validated):
1360         New function exposing iterating through possibly invalid/incomplete
1361         UTF-8 to unicode to the outside world.
1362
1363         * glib/gutf8.c (g_utf8_get_char_extended): Fix max_len argument
1364         to be gssize, not gsize.
1365
1366 2001-07-17  Kjartan Maraas  <kmaraas@gnome.org>
1367
1368         * configure.in: Added "nn" to ALL_LINGUAS.
1369         
1370 2001-07-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1371
1372         * glib/gmain.c: Add some assertions. Simplify and fix
1373         g_main_context_release(). Fix some locking bugs in
1374         g_main_loop_run().
1375
1376 2001-07-12  Mark Murnane  <Mark.Murnane@sun.com>
1377
1378         * glib/gmessages.c: Changed prototype of printf_string_upper_bound
1379         to return gsize.  Now matches the actual function body.
1380
1381         * glib/gstrfuncs.c (g_strrstr_len): Changed type of parameter #2 
1382         from gint to gssize.  Now matches the prototype in gstrfuncs.h.
1383         
1384 2001-07-11  Darin Adler  <darin@bentspoon.com>
1385
1386         * .cvsignore: Add some generated files.
1387
1388         * glib/gmain.c: (g_main_context_iterate): Comment out cruft
1389         after #endif to avoid gcc warning.
1390         * gmodule/gmodule.c: (g_module_set_error_unduped): Remove
1391         const from type to avoid gcc warning.
1392         * gobject/gsignal.c: (g_signal_emitv): ifdef variable used
1393         only if G_ENABLE_DEBUG to avoid gcc warning.
1394         * gobject/gtype.c: (type_iface_vtable_init_Wm),
1395         (type_iface_vtable_finalize_Wm): ifdef call needed only
1396         if !G_DISABLE_ASSERT to avoid gcc warning.
1397         * tests/testglib.c: (main): ifdef call needed only if
1398         !G_DISABLE_ASSERT to avoid gcc warning. Maybe later we
1399         should make the test to #undef G_DISABLE_ASSERT.
1400         * tests/unicode-collate.c: Add include of <string.h> to
1401         avoid gcc warning.
1402
1403 Wed Jul 11 11:13:50 2001  Owen Taylor  <otaylor@redhat.com>
1404
1405         * glib/Makefile.am (libglib_1_3_la_SOURCES): Add gunicomp.h
1406         (Reported by Sven Neumann).
1407
1408         * glib/guniprop.c (g_utf8_str/updown) glib/gunicollate.c
1409         (g_utf8_collate_key): Fix shadowing problems reported by
1410         many (D. Adler, S. Neumann, M. Murmane, L. Peter)
1411
1412 Fri Jul  6 00:02:41 2001  Tim Janik  <timj@gtk.org>
1413
1414         * glib/gmessages.c (printf_string_upper_bound): fix negative exponent
1415         handling (numbers<0).
1416         
1417         * glib/gutils.h (g_bit_storage): take a gulong as argument.
1418         same for g_bit_nth_lsf() and g_bit_nth_msf() as mask.
1419
1420 2001-07-08  Martin Baulig  <baulig@suse.de>
1421
1422         * tests/unicode-normalize.c, tests/unicode-collate.c:
1423         Reflect latest g_io_channel_new_file() API changes, use
1424         G_IO_FILE_MODE_READ instead of "r".
1425
1426 Fri Jul  6 22:34:32 2001  Owen Taylor  <otaylor@redhat.com>
1427
1428         * glib/gunicode.h glib/gunidecomp.c glib/guniprop.c 
1429           glib/gunicollate.c: Add length arguments to
1430         g_utf8_{strup,strdown,casefold,collate_key}.
1431
1432         * glib/gdate.c: Fix for above.
1433
1434 2001-07-06  Pablo Saratxaga <pablo@mandrakesoft.com>
1435
1436         * configure.in: added Basque (eu) to ALL_LINGUAS
1437
1438 Mon Jul  2 19:48:52  2001 Andrew Lanoix <alanoix@umich.edu>
1439
1440         *giowin32.c: g_source_remove()ing an socket iochannel closes
1441         the socket when it should not. Patch by Peter Zelezny 
1442         <zed@linux.com>
1443
1444         *giowin32.c: Fix a few typos
1445         
1446 Mon Jul  2 16:03:21 2001  Owen Taylor  <otaylor@redhat.com>
1447
1448         * glib/giochannel.c (g_io_channel_get_buffer_condition): Fix.
1449
1450         * glib/giunix.c: Fix prepare/check/dispatch for watches.
1451
1452         * tests/unicode-normalize.c: #include <string.h>
1453
1454 Sat Jun 30 23:14:32 2001  Tim Janik  <timj@gtk.org>
1455
1456         * glib/glist.[hc]: added g_list_insert_before().
1457
1458         * glib/gslist.c (g_slist_insert_before): provide an implementation,
1459         prototype was already present...
1460
1461 Sun Jul  1 20:16:25 2001  Owen Taylor  <otaylor@redhat.com>
1462
1463         * glib/guniprop.c (g_unichar_totitle): Use G_N_ELEMENTS
1464         rather than a custom macro.
1465
1466         * glib/gen-unicode-tables.pl: Adapt to changes in table
1467         formats for Unicode 3.1
1468
1469         * glib/gunicode.h glib/guniprop.c glib/gunichartables.h
1470           glib/gen-unicode-tables.pl: Add case conversion functions
1471         g_utf8_casefold, g_utf8_strup, g_utf8_strdown.
1472
1473         * tests/unicode-caseconv.c tests/gen-casefold-txt.pl
1474           tests/gen-casemap-txt.pl tests/casefold.txt 
1475           tests/casemap.txt: Test cases for case conversion.
1476
1477         * glib/gunicode.h glib/gunidecomp.[ch] glib/gunicomp.h
1478           glib/gen-unicode-tables.pl: Add function to do Unicode
1479         normalization g_utf8_normalize().
1480
1481         * tests/unicode-normalize.c: Test program for case conversion.
1482
1483         * glib/gunicode.h glib/gunicollate.c: Add collation functions
1484         g_utf8_collate, g_utf8_collate_key.
1485
1486         * test/unicode-collate.c: Test program for collation.
1487
1488         * glib/gdate.c (g_date_fill_parse_tokens): Fix uninitialized
1489         variable.
1490
1491         * glib/gdate.c (g_date_strftime) docs/Changes-2.0.txt:
1492         Make work with UTF-8 even if the locale isn't UTF-8 based.
1493         Still somewhat of broken, if the format string contains 
1494         characters not representable in the current locale, will warn
1495         and not work.
1496         
1497         * glib/gdate.c: Use UTF-8 normalization and casefolding.
1498
1499 Sat Jun 30 16:03:16 2001  Owen Taylor  <otaylor@redhat.com>
1500
1501         * glib/giowin32.c glib/giounix.c glib/gmain.[ch]:
1502         Rename GSourceFuncs::destroy to GSourceFuncs::finalize.
1503         (#56858)
1504
1505 Sat Jun 30 15:49:10 2001  Owen Taylor  <otaylor@redhat.com>
1506
1507         * glib/gmain.[ch]: (Mostly patch from Sebastian Wilhemi)
1508         Make some changes to the way that GMainContext works:
1509
1510          - a GMainContext is no longer associated with a single
1511            thread, but any thread can acquire ownership 
1512            of thread and iterate.
1513
1514          - There is a facility g_main_context_wait() for
1515            non-owner-threads to wait either for ownership
1516            or for a condition to be broadcast.
1517
1518          - For efficiency, GMainLoop just piggybacks of
1519            of the loops mutex / condition instead of
1520            having a separate mutex/condition for each
1521            GMainLoop.
1522
1523         * glib/gthread.[ch]: Remove hacks to store the thread's
1524         GMainContext in the GThread structures, since we
1525         no longer have the GMainContext <=> GThread correspondence.
1526         
1527         * glib/gmain.[ch]: Make g_main_context_wakeup() public
1528         so someone could completely duplicate GMainLoop 
1529         with the public API.
1530
1531         * tests/mainloop-test: Fix up to the new API. Decidedly
1532         doesn't work at the moment, but that may be the IO
1533         channel changes, or preexisting locking problems.
1534
1535 Sat Jun 30 13:18:28 2001  Owen Taylor  <otaylor@redhat.com>
1536
1537         * glib/gstrfuncs.c glib/gstring.h: Try compiling
1538         before committing, why don't you? Simple fixes
1539         for my stupid typos. 
1540
1541 Sat Jun 30 12:49:26 2001  Owen Taylor  <otaylor@redhat.com>
1542
1543         Patch from Darin Adler (#54166)
1544         
1545         * glib/gstrfuncs.[ch]: Add ascii-only, locale-insensitive
1546         g_ascii_to[lower/upper], g_ascii_str[down/up],
1547         g_ascii_is[upper/lower] and deprecate the locale-affected
1548         versions which break for UTF-8, etc. Make
1549         g_ascii_strup/strdown duplicating,
1550         not in-place for consistency with UTF-8 functions.
1551
1552         * glib/gstring.[ch]: Add ascii-only, locale-insensitive
1553         g_string_ascii_[down/up], and deprecate the locale-affected
1554         versions which break for UTF-8, etc.
1555
1556         * glib/gutils.c glib/gwin32.c test/testglib.c: Use
1557         the g_ascii_* functions where appropriate.
1558
1559 Fri Jun 29 13:36:39 2001  Owen Taylor  <otaylor@redhat.com>
1560
1561         * glib/gstring.[ch] (g_string_set_size): Add function to 
1562         allow setting the length of a string greater than the 
1563         current length (for buffering usage)
1564
1565         * glib/gstring.[ch]: Expose string->allocated_len, since
1566         that is useful when using GString simply as a buffer. 
1567         (Renamed from string->alloc)
1568
1569         * glib/giochannel.[ch] glib/giounix.c glib/giowin32.c:
1570         Major patch from Hidetoshi Tajima and Ron Steinke
1571         reworking GIOChannel to have:
1572
1573          - Buffering
1574          - Sane and useful error reporting
1575          - Streaming encoding conversion with iconv
1576          - Convenience functions to read by lines or 
1577            an entire file.
1578
1579         Also fix remaining 64 bit cleanliness issues.
1580
1581         * tests/iochannel-test.c tests/Makefile.am: Test case
1582         for IO channel streaming conversion. Still needs 
1583         some fixing up.
1584
1585 Thu Jun 28 16:57:44 2001  Tim Janik  <timj@gtk.org>
1586
1587         * configure.in (GLIB_MICRO_VERSION): up version number to 1.3.7,
1588         interface age 0, binary age 0.
1589
1590 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
1591
1592         * glib/gmarkup.c: Fix a typo.
1593         
1594 2001-06-27  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1595
1596         * Makefile.am, configure.in: Removed glib-config-2.0, as we have
1597         pkg-config now.
1598
1599         * glib/Makefile.am: Added -I$(top_srcdir) for builddir != srcdir.
1600
1601         * Makefile.am: Removed gen-unicode-tables.pl from EXTRA_DIST.
1602
1603 Tue Jun 26 11:43:46 2001  Owen Taylor  <otaylor@redhat.com>
1604
1605         * configure.in Makefile.am *.[ch] glib/*.[ch] glib/Makefile.am:
1606         Move glib library into a subdirectory, make all GLib include
1607         files include as <glib/glist.h>
1608
1609         * tests/testglib.c tests/testgdate.c tests/testgdateparser.c
1610           tests/timeloop.c tests/timeloop-basic.c: Move all tests into
1611         the tests/ subdirectory.
1612
1613 Sat Jun 23 17:34:38 2001  Tim Janik  <timj@gtk.org>
1614
1615         * gmessages.c (g_logv): use G_BREAKPOINT() instead of raise(5).
1616
1617 Wed Jun 20 12:00:54 2001  Owen Taylor  <otaylor@redhat.com>
1618
1619         Changes for 64-bit cleanliness, loosely based on patch 
1620         from Mark Murnane.
1621         
1622         * gconvert.c (g_convert/g_convert_with_fallback): Remove
1623         workarounds for since-fixed GNU libc bugs. Minor
1624         doc fix.
1625
1626         * gconvert.[ch]: Change gint to gsize/gssize as
1627         appropriate.
1628
1629         * gconvert.c (g_locale/filename_to/from_utf8): Fix incorrect
1630         computation of bytes_read / bytes_written.
1631
1632         * gfileutils.[ch] (g_file_get_contents): Make length
1633         out parameter 'gsize *len'.
1634
1635         * ghook.c (g_hook_compare_ids): Don't compare a
1636         and b as 'a - b'.
1637
1638         * gmacros.h (GSIZE_TO_POINTER): Add GPOINTER_TO_SIZE,
1639         GSIZE_TO_POINTER.
1640
1641         * gmain.c (g_timeout_prepare): Rewrite to avoid
1642         overflows. (Fixes bug when system clock skews
1643         backwards more than 24 days.)
1644
1645         * gmarkup.[ch]: Make lengths passed to callbacks
1646         gsize, length for g_markup_parse-context_parse(),
1647         g_markup_escape_text() gssize.
1648
1649         * gmessages.[ch] (g_printf_string_upper_bound): Change
1650         return value to gsize.
1651
1652         * gmessages.c (printf_string_upper_bound): Remove
1653         a ridiculous use of 'inline' on a 300 line function.
1654
1655         * gstring.[ch]: Represent size of string as a gsize,
1656         not gint. Make parameters to functions take gsize,
1657         or gssize where -1 is allowed.
1658
1659         * gstring.c (g_string_erase): Make
1660         g_string_erase (string, pos, -1) a synonym for
1661         g_string_truncate for consistency with other G*
1662         APIs.
1663
1664         * gstrfuncs.[ch]: Make all functions taking a string
1665         length, take a gsize, or gssize if -1 is allowed.
1666         (g_strstr_len, g_strrstr_len). Also fix some boundary
1667         conditions in g_str[r]str[_len].
1668
1669         * gutf8.c tests/unicode-encoding.c: Make parameters that 
1670         are byte lengths gsize, gssize as appropriate. Make 
1671         character offsets, other counts, glong.
1672
1673         * gasyncqueue.c gcompletion.c
1674           timeloop.c timeloop-basic.c gutils.c gspawn.c.
1675         Small 64 bit cleanliness fixups.
1676
1677         * glist.c (g_list_sort2, g_list_sort_real): Fix functions
1678         that should have been static.
1679
1680         * gdate.c (g_date_fill_parse_tokens): Fix extra
1681         declaration that was shadowing another.
1682
1683         * tests/module-test.c: Include string.h
1684
1685 Mon Jun 18 15:43:29 2001  Owen Taylor  <otaylor@redhat.com>
1686
1687         * gutf8.c (g_get_charset): Make argument
1688         G_CONST_RETURN char **.
1689
1690 2001-06-22  Andrew Lanoix <alanoix@umich.edu>
1691         
1692         *giowin32.c: Debug and partial rewrite of async socket code
1693         on windows, which fixes major MT issues. Some test code kindly 
1694         provided by wroberts1@home.com.
1695         
1696 Thu Jun 14 14:09:46 2001  Owen Taylor  <otaylor@redhat.com>
1697
1698         * gstrfuncs.c (g_strconcat): Fix a use of strcat that
1699         wasn't replaced with g_stpcpy in the original 
1700         stpcpy-for-efficiency patch.
1701
1702 2001-06-11  Havoc Pennington  <hp@redhat.com>
1703
1704         * NEWS: updated
1705
1706         * configure.in (GLIB_MICRO_VERSION): increment version to 1.3.6
1707
1708 2001-06-08  Alex Larsson  <alexl@redhat.com>
1709
1710         * gstrfuncs.[ch]:
1711         Added new functions g_strstr_len, g_strrstr and g_strrstr_len
1712         
1713         * tests/strfunc-test.c:
1714         Add some tests for the new functions.
1715         
1716         * gunicode.h:
1717         * gutf8.c:
1718         Add length argument to g_utf8_strchr and g_utf8_strrchr.
1719         
1720 2001-06-08  Havoc Pennington  <hp@redhat.com>
1721
1722         * gspawn.c: support G_SPAWN_FILE_AND_ARGV_ZERO specifying that 
1723         the vector passed in to g_spawn_* contains a filename to 
1724         execute in argv[0] then the actual argv begins at argv + 1.
1725         Kind of a lame hack, but this isn't something you commonly want
1726         to do, and avoids adding more function arguments.
1727
1728 2001-06-08  Pablo Saratxaga <pablo@mandrakesoft.com>
1729
1730         * configure.in: Added Azeri (az) to ALL_LINGUAS
1731
1732 2001-06-08  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1733
1734         * docs/Makefile.am, configure.in: Remove docs/glib-config.1.in.
1735
1736         * gthread-2.0-uninstalled.pc.in (Cflags): Add @G_THREAD_CFLAGS@.
1737
1738 2001-06-07  Havoc Pennington  <hp@redhat.com>
1739
1740         * m4macros/glib-2.0.m4: subst GLIB_GENMARSHAL, GOBJECT_QUERY, 
1741         GLIB_MKENUMS variables
1742
1743         * gmodule-2.0.pc.in: add gmodule_supported variable
1744
1745         * glib-2.0.pc.in: add glib_genmarshal, gobject_query,
1746         glib_mkenums variables  
1747
1748         * configure.in: put G_MODULE_SUPPORTED value into 
1749         .pc files
1750
1751         * autogen.sh: support AUTOGEN_SUBDIR_MODE
1752
1753         * Makefile.am: add -uninstalled.pc.in to EXTRA_DIST
1754
1755 2001-06-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1756
1757         * configure.in: Look for nanosleep function. 
1758
1759         * gtimer.c: Use nanosleep for g_usleep, when found.
1760
1761         * gtimer.c, gtimer.h: Add g_time_val_add function. Closes #54271.
1762
1763         * gasyncqueue.c: Documentation updates.
1764
1765         * gthreadpool.c: Use g_time_val_add now that we have it.
1766
1767 2001-06-01  Jon Trowbridge  <trow@gnu.org>
1768
1769        * gdate.c (g_date_update_julian): Changed to take a const
1770        argument, and then to cast out const.
1771        (g_date_update_dmy): Changed to take a const argument, and then
1772        cast out const.
1773        (g_date_get_weekday): Changed argument to be const.
1774        (g_date_get_month): Changed argument to be const.
1775        (g_date_get_year): Changed argument to be const.
1776        (g_date_get_day): Changed argument to be const.
1777        (g_date_get_julian): Changed argument to be const.
1778        (g_date_get_day_of_year): Changed argument to be const.
1779        (g_date_get_monday_week_of_year): Changed argument to be const.
1780        (g_date_get_sunday_week_of_year): Changed argument to be const.
1781        (g_date_compare): Changed arguments to be const.
1782        (g_date_to_struct_tm): Changed GDate argument to be const.
1783        (g_date_strftime): Changed GDate argument to be const.
1784        (g_date_clamp): Added.  The equivalent of the CLAMP macro for
1785        GDates.
1786        (g_date_order): Added.  Ensure that the first GDate argument
1787        preceeds the second, swapping them if necessary.
1788        (g_date_days_between): Added.  Computes the (signed) number of days
1789        between two dates.
1790
1791 Mon Jun  4 16:02:57 2001  Owen Taylor  <otaylor@redhat.com>
1792
1793         * gstrfuncs.c (g_strup/strdown): to match g_strcasecmp,
1794         check if it is lower/upper before converting to upper/lower
1795         [ not required by ISO... ] (#55682, Jon Trowbridge)
1796
1797 Mon Jun  4 15:59:15 2001  Owen Taylor  <otaylor@redhat.com>
1798
1799         * gunicode.h: Make a bit more standalone by adding include
1800         of gerror.h. #54543.
1801         
1802         * gunicode.h: Change size_t to g_size. (Ugh)
1803
1804 2001-05-31  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1805
1806         * grand.h (g_random_boolean, g_rand_boolean): Fix to stupid bug in
1807         g_random_boolean, also both functions now return 1 or 0 instead of
1808         1<<15 or 0.
1809
1810         * tests/rand-test.c: Extended testcases.
1811
1812         * configure.in: Remove G_HAVE_ISO_CXX_VARARGS and
1813         G_HAVE_ISO_C_VARARGS and define G_HAVE_ISO_VARARGS directly
1814         guarded by #if(n)def __cplusplus.
1815
1816 2001-05-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1817
1818         * gthread-2.0.pc.in: Add @G_THREAD_CFLAGS@ to Cflags.
1819
1820 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
1821
1822         * autogen.sh (have_libtool): Fix GNU sedism
1823
1824 2001-05-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1825
1826         * tests/Makefile.am, tests/qsort-test.c: Add test case for the
1827         g_qsort_with_data func. It works. This fixes bug #52605.
1828
1829         * tests/Makefile.am, tests/cxx-test.C: Now that we check for a C++
1830         compiler in configure.in anyway, I added a test, that the GLib
1831         headers can be inclued into a C++ program. This fixes bug #52605.
1832
1833         * configure.in: Don't bail out, if no C++ compiler is
1834         found. Define G_HAVE_ISO_VARARGS only if appropriate.
1835
1836         * gmessages.h: Thus we can revert the previous patch.
1837
1838 2001-05-29  James Henstridge  <james@daa.com.au>
1839
1840         * gmessages.h: "#ifdef G_HAVE_ISO_VARARGS" will always succeed
1841         even when we don't have ISO vararg support.  Changed to
1842         "#if G_HAVE_ISO_VARARGS".
1843
1844 Mon May 28 11:40:34 2001  Owen Taylor  <otaylor@redhat.com>
1845
1846         * configure.in: Check for __VARARGS__ separately for C and C++.
1847
1848 2001-05-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1849
1850         * configure.in: Fix typo.
1851
1852 Sun May 27 05:09:18 2001  Tim Janik  <timj@gtk.org>
1853
1854         * gmain.c (g_main_context_prepare): unlock context when bailing
1855         out with a warning.
1856         (g_main_context_check): same here.
1857
1858         * gmain.c (g_main_context_check): before returning due to
1859         changed pollfds, unlock context.
1860         
1861 Thu May 24 21:24:16 CEST 2001 Paolo Molaro <lupus@ximian.com>
1862
1863         * gmarkup.c: back out change by mitch@convergence.de and apply patch in
1864         bug id #52067 that fixes the same problem in a more complete manner.
1865         This fixes also a segfault for a malformed XML file and adds a new
1866         test case.
1867
1868 2001-05-24  Hans Breuer  <hans@breuer.org>
1869
1870         * grel.c : reflect renaming of g_string_sprintfa to g_string_printfa
1871
1872         * makefile.msc.in : create an additional static lib to be used from
1873         (at least) glib-genmarshal
1874
1875 2001-05-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1876
1877         * garray.c (g_array_remove_index_fast): Tiny speed improvement
1878         suggested by noon@users.sourceforge.net.
1879
1880 2001-05-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1881
1882         * config.h.win32.in: Removed POSIX_*. Defined G_THREAD_SOURCE to
1883         "gthread-win32.c".
1884
1885         * glibconfig.h.win32.in: Define G_HAVE_ISO_VARARGS for gcc, don't
1886         know about MSC. Define G_THREADS_IMPL_WIN32 instead of
1887         G_THREADS_IMPL_POSIX and define the right static mutex macros and
1888         types.
1889
1890         * glib.def: g_thread_create renamed to g_thread_create_full.
1891
1892         * gthread.c: memcpy is not necessary here. We can simply use
1893         struct assignment.
1894
1895         * gmessages.c: Fix compilation error on win32. Added
1896         GFileDescriptor, wich is gint on Unix and FILE* on win32.
1897
1898 2001-05-21  Andrew Lanoix <alanoix@umich.edu>
1899
1900         *giowin32.c: G_IO_WIN32_WINDOWS_MESSAGES channels
1901         not handled correctly in g_io_win32_check()
1902
1903 Sun May 20 10:47:47 2001  Owen Taylor  <otaylor@redhat.com>
1904
1905         * configure.in: Fix some problems in writing out varargs
1906         tests in configure.in
1907
1908 Fri May 18 10:52:23 2001  Owen Taylor  <otaylor@redhat.com>
1909
1910         * configure.in gmessages.h: Use compile checks for ISO C99 and GNU
1911         extension varargs macros syntax and store result in glibconfig.h
1912         (G_HAVE_ISO_VARARGS, G_HAVE_GNUC_VARARGS) rather than relying
1913         on checking predefined macros.
1914
1915 2001-05-18  Michael Natterer  <mitch@convergence.de>
1916
1917         * gmarkup.c: don't g_strdup()/g_free() all parsed attributes and
1918         their values twice but simply copy the string pointers from the
1919         GMarkupAttribute struct to the string arrays before passing them
1920         to start_element().
1921
1922 2001-05-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1923
1924         * gthread.c, gthread.h: Renamed g_thread_create to
1925         g_thread_create_full and added macro g_thread_create, which omits
1926         'stack_size', 'bound' and 'priority' parameters. Also removed
1927         'bound' from GThread struct.
1928
1929         * gthreadpool.h, gthreadpool.c: Adapted GThreadPool to the above
1930         changes. GThreadPool lost the 'priority' and 'bound'
1931         members. g_thread_pool_new the 'stack_size', 'bound' and
1932         'priority' parameters.
1933
1934         * tests/mainloop-test.c, tests/thread-test.c,
1935         tests/threadpool-test.c: Adapted to the above changes.
1936
1937         * gmem.c (g_mem_profile): Fixed mutex deadlock.
1938
1939 2001-05-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1940
1941         * makefile.mingw.in: Add gpattern.o to objects.
1942
1943         * glib.def: Export g_thread_exit as well.
1944
1945         * Makefile.am: Fix BUILT_EXTRA_DIST exporting.
1946
1947 Sun May 13 10:31:17 2001  Owen Taylor  <otaylor@redhat.com>
1948
1949         * glib/Makefile.am gobject/Makefile.am gmodule/Makefile.am:
1950         Add inter-library dependencies.
1951
1952         * acinclude.m4: Remove libtool macros.
1953
1954         * autogen.sh: Require libtool-1.4, automake-1.4p1.
1955
1956 2001-05-15  Havoc Pennington  <hp@redhat.com>
1957
1958         * configure.in (AC_OUTPUT): m4macros/Makefile
1959
1960         * m4macros/Makefile.am, m4macros/glib-2.0.m4,
1961         m4macros/glib-gettext.m4:
1962         m4 files moved here on server, Makefile.am added
1963          
1964         This is so you can aclocal -I m4macros while avoiding acinclude.m4
1965
1966         * Makefile.am: add m4macros subdir, remove references to glib-2.0.m4
1967
1968 2001-05-14  Havoc Pennington  <hp@redhat.com>
1969
1970         * gutf8.c (g_utf8_get_char): fix docs; they said we validated 
1971         the UTF-8, but we can't possibly detect partial chars since
1972         there's no length arg here, so trying to use this function 
1973         on invalid UTF-8 is a bad idea.
1974
1975 Thu May 10 23:21:30 2001  Owen Taylor  <otaylor@redhat.com>
1976
1977         * gmessages.c (g_log_write_prefix): Avoid using stdio
1978         to be as robust as possible in out-of-memory.
1979
1980         * gmessages.c (g_log_default_handler): Remove some dead
1981         code.
1982
1983         * gutils.c (g_parse_debug_string): Fix to avoid mallocs.
1984
1985 Fri May 11 18:25:23 2001  Tim Janik  <timj@gtk.org>
1986
1987         * gdataset.c:
1988         (g_dataset_foreach):
1989         (g_datalist_foreach): make these safe against removal of the
1990         current element.
1991
1992 2001-05-10  Havoc Pennington  <hp@pobox.com>
1993
1994         * gmessages.c (g_log_write_prefix): change env variable to
1995         G_MESSAGES_PREFIXED, suggested by Tim
1996
1997 Thu May 10 15:19:01 2001  Tim Janik  <timj@gtk.org>
1998
1999         * gscanner.c (g_scanner_key_hash): use g_str_hash() algorithm
2000         to generate hashes.
2001
2002         * gmem.c (standard_calloc): free() doesn't return a value
2003         (Mark Murnane).
2004
2005 2001-04-26  Havoc Pennington  <hp@redhat.com>
2006
2007         * configure.in: Get rid of --enable-msg-prefix
2008
2009         * gmessages.c: make whether to prefix the messages with
2010         appname/pid a runtime setting, not a compile-time setting.  Change
2011         default to include prefix for debug/warning/error type messages.
2012
2013 2001-05-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2014
2015         * gthread.c, gthread.h: Renamed 'value' and 'arg' to 'data' and
2016         'thread_func' to 'func' to make it more consistent with the rest
2017         of GLib.
2018
2019         * gthreadpool.c, gthreadpool.h: Moved 'stack_size' from the public
2020         members of GThreadPool to the private ones. Renamed 'thread_func'
2021         to 'func' as above. Moved up 'user_data' in g_thead_pool_new
2022         argument list and in GThreadPool struct.
2023         
2024 Tue May  8 15:33:31 2001  Tim Janik  <timj@gtk.org>
2025
2026         * gcompletion.h: removed #include <unistd.h> sneaked in by
2027         sopwith in november.
2028
2029 2001-05-08  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2030
2031         * gmain.c, gthread.c, gthread.h: Moved func and arg members from
2032         GRealThread to GThread, such that they can be accessed by the
2033         user.
2034
2035         * gthread.c, gthread.h: Due to popular demand (Tim being the
2036         populus here ;-) threads now have a 'return value', which is
2037         returned by g_thread_join and is either the return of the topmost
2038         thread function or the value given to g_thread_exit.
2039         
2040         * gthreadpool.c, tests/mainloop-test.c, tests/thread-test.c:
2041         Adapted to the above change.
2042
2043 2001-01-06  Hans Breuer  <hans@breuer.org>
2044
2045         * glib.def : don't try to export g_strcpy, it is g_stpcpy;
2046         updated and added some tweaking for functions which got 
2047         renamed recently, to avoid the update hassle if it can 
2048         simply be done compatible. Should vanish if there is a 
2049         stable version for win32.
2050
2051 Fri May  4 11:49:18 2001  Owen Taylor  <otaylor@redhat.com>
2052
2053         * Released 1.3.5
2054
2055         * NEWS: Updated
2056
2057         * configure.in (GLIB_MICRO_VERSION): Up version to 1.3.5,
2058         interface/binary age 0.
2059
2060 2001-05-04  Sven Neumann  <sven@convergence.de>
2061
2062         * ghash.c: fixed a typo in a comment.
2063
2064         * gtree.[ch]: added new functions g_tree_new_full(), g_tree_replace(), 
2065         g_tree_steal() and g_tree_foreach() to adapt GTree to the GHashTable
2066         API. Moved comments into the C file.
2067
2068         * docs/reference/glib/glib-sections.txt
2069         * docs/reference/glib/tmpl/glib-unused.sgml
2070         * docs/reference/glib/tmpl/hash_tables.sgml
2071         * docs/reference/glib/tmpl/linked_lists_double.sgml
2072         * docs/reference/glib/tmpl/linked_lists_single.sgml
2073         * docs/reference/glib/tmpl/macros_misc.sgml
2074         * docs/reference/glib/tmpl/trees-binary.sgml: updated documentation
2075         
2076 Thu May  3 06:38:28 2001  Owen Taylor  <otaylor@redhat.com>
2077
2078         * g[s]list.c (g_[s]list_foreach) docs/Changes-2.0.txt: Make
2079         foreach() safe against removal of the _current_ element. While
2080         this could break some code, the new behavior is consistent with
2081         the rest of GLib/GTK+ and probably is what people expect in most
2082         cases. (Suggested by Paul Kuykendall, #50071)
2083
2084 Wed May  2 11:10:22 2001  Owen Taylor  <otaylor@redhat.com>
2085
2086         * gutf8.c (g_utf8_to_ucs4_fast): Fix read past end of the string.
2087         (#50404, fix from Jonas Borgström)
2088         
2089 Sun Apr 29 00:37:34 2001  Tim Janik  <timj@gtk.org>
2090
2091         * ghook.[hc]: made hook ids a gulong.
2092
2093 2001-04-20  Dan Winship  <danw@ximian.com>
2094
2095         * configure.in: Add a check for the Darwin dynamic linker. Use
2096         AC_TRY_LINK when checking for "nonposix getpwuid_r" so it notices
2097         "no getpwuid_r" correctly.
2098
2099         * testglib.c (main): Make template[] bigger to prevent an overrun.
2100         Remove an unused variable. Initialize error to NULL.
2101
2102         * tests/gio-test.c (main): Add a cast to prevent a warning when
2103         size_t is a long.
2104
2105         * tests/type-test.c (main): Add an #ifdef to prevent a warning
2106         when G_HAVE_GINT64 is defined and G_GINT64_FORMAT isn't.
2107
2108 2001-04-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2109
2110         * ghash.c, ghash.h: Remove definition of g_hash_table_freeze and
2111         g_hash_table_thaw. Instead added G_DISABLE_DEPRECATED-guarded
2112         macros to ghash.h to go along the lines of the standard.
2113
2114         * gscanner.c, gscanner.h: Dito for g_scanner_freeze_symbol_table
2115         and g_scanner_thaw_symbol_table.
2116
2117         * gutils.c, gutils.h: Dito for g_dirname. g_basename is still
2118         defined in gutils.c, but declared ing gutils.h only
2119         G_DISABLE_DEPRECATED-guarded.
2120         
2121         * configure.in: Removed bashism in test for the pkg-config
2122         version.
2123
2124         * configure.in: Rewrote test for multithread flag. Now uses
2125         localtime_r, which hopefully has a consistent prototype across
2126         different platforms. Also it uses a clever double EGREP trick
2127         instead of compiling, which could give false positives. Thanks to
2128         Dan Winship <danw@ximian.com> for the hint.
2129
2130 Wed Apr 18 17:35:38 2001  Owen Taylor  <otaylor@redhat.com>
2131
2132         * gutils.c (_glib_gettext): Add missing static pointed
2133         out by Michael Meeks.
2134
2135 Wed Apr 18 09:37:07 2001  Owen Taylor  <otaylor@redhat.com>
2136
2137         * MAINTAINERS: Removed. Keeping README, README.cvs-commits
2138         HACKING, and AUTHORS up to date is plenty without extra
2139         random files that someone thought a module should have.
2140         (Actually, I believe this was used for debbugs in the past.)
2141
2142 Tue Apr 17 11:47:07 2001  Owen Taylor  <otaylor@redhat.com>
2143
2144         * Released 1.3.4
2145
2146         * NEWS: Updated
2147
2148 Tue Apr 17 10:43:36 2001  Owen Taylor  <otaylor@redhat.com>
2149
2150         * gstrfuncs.c: Define _GNU_SOURCE for stpcpy
2151
2152         * tests/mainloop-test.c (main): Wait for all threads
2153         to start before beginning tests.
2154
2155 2001-04-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2156
2157         * gthreadpool.c (g_thread_pool_thread_proxy): Until now every
2158         thread pool always had at least one tread waiting to avoid
2159         switching overhead in case a new task would be added soon after
2160         one finished. This however means a big waste of threads, if many
2161         mostly inactive thread pools are involved. Now such a waiting
2162         thread will only wait for half a second (This value is of course
2163         very randomly picked) and go to the global threadpool afterwards.
2164
2165 Mon Apr 16 12:04:52 2001  Owen Taylor  <otaylor@redhat.com>
2166
2167         * configure.in: Remove warnings about conflicts with the
2168         stable version.
2169
2170         * glib-2.0.m4: Fix some of the error text to be halfway
2171         up to date.
2172
2173         * README.in INSTALL.in: Add these to generate README, INSTAL
2174         (as in the stable branch). Update.
2175
2176         * HACKING: Update.
2177
2178 2001-04-16  Havoc Pennington  <hp@redhat.com>
2179
2180         * gqsort.c: docs
2181
2182         * gfileutils.c: docs
2183
2184         * gwin32.c: docs fixes
2185
2186         * gconvert.c: docs
2187
2188         * guniprop.c: docs
2189
2190         * gutf8.c: docs
2191
2192 2001-04-16  Havoc Pennington  <hp@redhat.com>
2193
2194         * glib-2.0.m4: put AC_PATH_PROG(pkg-config) before "Checking for
2195         glib" so the output looks right 
2196
2197 2001-03-23  Havoc Pennington  <hp@redhat.com>
2198
2199         * gutils.c (g_parse_debug_string): make GDebugKeys argument 
2200         const
2201
2202 2001-04-14  Hans Breuer  <hans@breuer.org>
2203
2204         * glib.def : 
2205         * makefile.msc.in : updated
2206
2207         * gpattern.c : include "gutils.h" to resolve the inline hassle
2208
2209 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2210
2211         * glib-2.0.m4: Pass pkg-config options
2212         before the other args so it works even if
2213         POSIXLY_CORRECT is set.
2214
2215 Mon Apr  9 18:57:44 2001  Tim Janik  <timj@gtk.org>
2216
2217         * configure.in: increment version to 1.3.4 (binary 0, interface 0).
2218
2219 2001-04-05  Christian Rose  <menthos@menthos.com>
2220
2221         * configure.in: Added sv to ALL_LINGUAS.
2222
2223 Wed Apr  4 09:18:55 2001  Tim Janik  <timj@gtk.org>
2224
2225         * Released GLib-1.3.3.
2226
2227 Tue Apr  3 20:22:59 2001  Tim Janik  <timj@gtk.org>
2228
2229         * NEWS: updates.
2230
2231         * NEWS.pre-1-3: take over old news.
2232
2233 Tue Apr  3 12:38:16 2001  Owen Taylor  <otaylor@redhat.com>
2234
2235         * glib-config-2.0.in: Exit with an error message that you
2236         should use pkg-config instead.
2237
2238         * configure.in (PACKAGE): Require pkg-config.
2239
2240         * tests/Makefile.am (EXTRA_DIST): Add utf8.txt.
2241
2242         * configure.in (GLIB_MICRO_VERSION): Up MICRO to 3,
2243         leave interface/binary at 0.
2244
2245 Tue Apr  3 13:46:22 2001  Tim Janik  <timj@gtk.org>
2246
2247         * glist.[hc]: added g_list_nth_prev() which walks ->prev instead
2248         of ->next.
2249
2250         * gpattern.[hc]: added shell-style pattern matching code from beast,
2251         derived from the gtk_pattern_*() code, but with a couple of bug fixes
2252         and a number of optimizations.
2253
2254 2001-04-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2255
2256         * gthreadpool.c: Added documentation.
2257
2258         * gthreadpool.c: The global thread pool now also is seperated for
2259         bound and unbound threads. Only threads with standard stack size
2260         go to the global pool. g_thread_pool_new now protects the global
2261         setup of inform_mutex etc. with a lock. Fixed some typos. Unlock
2262         the queue after g_thread_pool_wakeup_and_stop_all in the proxy.
2263
2264 2001-04-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2265
2266         * gmain.c: Use the new GRealThread member "context" instead of a
2267         GStaticPrivate to store the thread specific main loop context.
2268
2269         * gthread.c: Added "context" member to GRealThread and updated
2270         g_thread_create, g_thread_self and g_thread_cleanup accordingly.
2271         
2272         * gthread.c, gthread.h: Removed the functions
2273         g_static_private_(get|set)_for_thread and adapted
2274         g_static_private_(get|set) and g_static_private_free
2275         accordingly. This fixes Bug #51435.
2276         
2277 2001-03-30  Sven Neumann  <sven@gimp.org>
2278
2279         * ghash.[ch]
2280         * docs/reference/glib/tmpl/hash_tables.sgml: added new functions
2281         g_hash_table_new_full, g_hash_table_replace, g_hash_table_steal and
2282         g_hash_table_foreach_steal. Moved most docs out of the template
2283         file into the C file. Please proofread the new documentation.
2284
2285 2001-03-29  Tor Lillqvist  <tml@iki.fi>
2286
2287         * glib.def: Updates.
2288         * tests/makefile.mingw.in
2289         * tests/makefile.msc.in: Add module-test rules.
2290
2291 Mon Mar 26 14:14:53 2001  Owen Taylor  <otaylor@redhat.com>
2292
2293         * Makefile.am (INCLUDES): -DG_DISABLE_DEPRECATED
2294
2295         * gmain.h timeloop.c: Surround the cruftiest stuff with
2296         #ifndef G_DISABLE_DEPRECATED.
2297
2298         * gcompat.h gdate.h: Move compat defines back to 
2299         gdate.h, surround with #ifndef G_DISABLE_DEPRECATED. 
2300         Remove gcompat.h.
2301
2302 Mon Mar 26 13:34:50 2001  Owen Taylor  <otaylor@redhat.com>
2303
2304         [ Patch from DindinX  <David.Odin@bigfoot.com>, added docs ]
2305  
2306         * gstrfuncs.c, gstrfuncs.h: Add g_stpcpy () for platform that
2307         don't have stpcpy ().
2308         * gstrfuncs.c (g_strjoin, g_strjoinv, g_strconcat): 
2309         use g_stpcpy () so these functions run much faster.
2310         * config.h.win32.in, glib.def: add reference to g_stpcpy ()
2311         * configure.in: Add a test for the stpcpy () function.
2312  
2313 2001-03-20  Havoc Pennington  <hp@redhat.com>
2314
2315         * gutf8.c (g_utf8_strlen): rewrite, based on bug #52328 from
2316         Anders
2317
2318 2001-03-19  Havoc Pennington  <hp@redhat.com>
2319
2320         * gutf8.c (g_unichar_validate): added this function
2321
2322 2001-03-18  Tor Lillqvist  <tml@iki.fi>
2323
2324         * gspawn-win32.c (SETUP_DEBUG): Add braces to silence gcc -Wall.
2325
2326         * gspawn-win32-helper.c (write_no_error): Remove unused function.
2327
2328         * tests/makefile.mingw.in (module-test.exe): Add rules for
2329         building module-test.
2330
2331 Wed Mar 14 18:46:54 2001  Tim Janik  <timj@gtk.org>
2332
2333         * gscanner.[hc]: removed archaic gpointer derived_data; relict and
2334         added a GData member instead.
2335         
2336         * glist.[hc]: added g_list_remove_all().
2337
2338         * gslist.[hc]: added g_slist_remove_all().
2339
2340 Sat Mar 17 19:54:51 2001  Owen Taylor  <otaylor@redhat.com>
2341
2342         * timeloop.c: Reorder headers to make FreeBSD happy. 
2343
2344 2001-03-13  Tor Lillqvist  <tml@iki.fi>
2345
2346         From Edward M. Lee  <tailbert@yahoo.com>:
2347
2348         * gdate.c (g_date_set_parse): add support for dates that in the
2349         form "Wed Mar 14 2001". Running testgdate on cygwin requires this.
2350
2351 Fri Mar  9 18:01:43 2001  Tim Janik  <timj@gtk.org>
2352
2353         * gscanner.[hc]: made config arg to g_scanner_new() const.
2354
2355 2001-03-12  Tor Lillqvist  <tml@iki.fi>
2356
2357         * tests/Makefile.am (libmoduletestplugin_b_la_LIBADD,
2358         libmoduletestplugin_b_la_LIBADD): Link with the libgmodule la only
2359         on Win32.
2360
2361 2001-03-10  Tor Lillqvist  <tml@iki.fi>
2362
2363         * glibconfig.h.win32.in: Define G_PLATFORM_WIN32 here, too.
2364
2365         * tests/Makefile.am: Use the _LIBADD dependency on libglib only on
2366         Win32.
2367
2368 2001-03-09  Tor Lillqvist  <tml@iki.fi>
2369
2370         * README.win32: Update with some information about using configure
2371         and libtool.
2372
2373 2001-03-09  Hans Breuer  <hans@breuer.org>
2374
2375         * gobject/gobject.def : updated
2376
2377 2001-03-08  Tor Lillqvist  <tml@iki.fi>
2378
2379         * glib.def
2380         * gobject/gobject.def
2381         * gobject/makefile.mingw.in: Update.
2382
2383 2001-03-08  Sven Neumann  <sven@gimp.org>
2384
2385         * gtree.[ch]: 
2386         * docs/reference/glib/tmpl/trees-binary.sgml: added new function 
2387         g_tree_lookup_extended().
2388
2389 Thu Mar  8 16:23:34 2001  Tim Janik  <timj@gtk.org>
2390
2391         * ghook.[hc]: destruction cleanup. there's one
2392         ->finalize_hook member in the hooklist now that gets
2393         called when a hook should be destroyed, that's it.
2394         that function is guarranteed to be called only when
2395         all ref_counts to the hook vanished, thus also when
2396         the hook is not in call.
2397
2398 2001-03-08  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2399
2400         * configure.in (FLAG_DOES_NOT_WORK): Fix typo and thus bug #51862.
2401
2402 Wed Mar  7 09:32:06 2001  Tim Janik  <timj@gtk.org>
2403
2404         * glib-object.h: add gvaluearray.h.
2405
2406         * gstring.[hc]: fixup naming of g_string_sprint*.
2407         
2408         * gtypes.h: fixed GCompareDataFunc naming.
2409
2410 2001-03-07  Christian Meyer  <chrisime@gnome.org>
2411
2412         * configure.in: Added de (German) to ALL_LINGUAS.
2413
2414 2001-03-02  Christophe Merlet  <redfox@eikonex.org>
2415
2416         * configure.in: Added fr (French) to ALL_LINGUAS.
2417
2418 2001-03-01  Tor Lillqvist  <tml@iki.fi>
2419
2420         * gutils.c (g_path_is_absolute): (Win32) Remove test for initial
2421         double backslash (UNC path), this will of course be matched by the
2422         test for an initial G_DIR_SEPARATOR right up front. Silly me.
2423         (g_find_program_in_path): Implement on Win32. Append the
2424         executable file name suffixes from PATHEXT in turn while looking
2425         for the program.
2426         (g_find_program_in_path): If the program we are looking for is a
2427         relative path in a subdirectory, don't do any path search.
2428         (g_get_any_init): (Win32) Also look for the USERPROFILE env var
2429         indicating the home directory equivalent.
2430         (g_find_program_in_path): (Win32): Use MAXPATHLEN, not PATH_MAX
2431         which isn't defined with MSVC.
2432
2433         * testglib.c (main): Test g_find_program_in_path() on Win32 by
2434         looking for more.com and regedit.
2435
2436         * glib.def: Add g_find_program_in_path.
2437
2438 2001-02-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2439
2440         * gthreadpool.c (g_thread_pool_thread_proxy): Make
2441         max_unused_threads work for -1 as well.
2442
2443 2001-02-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2444
2445         * gthread.h (struct _GThread): Change the order to match the order
2446         in g_thread_create().
2447
2448         * gthread.c (g_static_rec_mutex_lock_full): Also do the right
2449         thing (behave like 'depth' calls to g_static_rec_mutex_lock) for a
2450         mutex, that is already locked.
2451
2452 Thu Feb 22 10:31:36 2001  Owen Taylor  <otaylor@redhat.com>
2453
2454         * gmain.c (g_source_remove_poll): Add missing implementation
2455         of g_source_remove_poll. (Pointed out by Stefan Westerfeld)
2456
2457 2001-02-21  Tor Lillqvist  <tml@iki.fi>
2458
2459         * gutils.c (g_find_program_in_path): Implement on Win32.
2460
2461         Cygwin support contributed by Stefan Ondrejicka
2462         <ondrej@idata.sk>. Hopefully I got it all in while simultaneously
2463         adding support for auto*/libtool for mingw.
2464
2465         * Makefile.am: Changes for auto* support on Cygwin and Win32. Do
2466         still distribute the hand-written makefiles and *.win32.in files,
2467         though. Use GIO, GSPAWN and PLATFORMDEP macros set by configure.
2468         Use -no-undefined. Pass -export-symbols glib.def to libtool.
2469         
2470         * configure.in: Define G_PLATFORM_WIN32 on both pure Win32 (mingw)
2471         and Cygwin. Add AC_CYGWIN, AC_EXEEXT and AC_LIBTOOL_WIN32_DLL
2472         calls for Cygwin and mingw support.  Check for %I64u guint64
2473         format (in MS C library). Set G_MODULE_IMPL on mingw and
2474         Cygwin. Use ac_object and ac_exeext.  Set GIO, GSPAWN, PLATFORMDEP
2475         and G_LIBS_EXTRA. Compile timeloop only on Unix. Define OS_WIN32
2476         automake conditional on Win32.
2477         
2478         * glib.h: Include gwin32.h also on Cygwin.
2479
2480         * gfileutils.c (get_contents_posix): Use O_BINARY (defined as 0 on
2481         Unix) for Cygwin's sake.
2482
2483         * gtimer.c (GETTIME): Reduce #ifdefs, use a macro GETTIME().
2484
2485         * gconvert.c
2486         * gthread.c
2487         * gutf8.c
2488         * gutils.c: For code needed both on Cygwin and native Win32,
2489         test for G_PLATFORM_WIN32.
2490
2491         * gmarkup.h: Use G_BEGIN_DECLS and G_END_DECLS.
2492         
2493         * gtypes.h: Refine GLIB_VAR definition. Also check for DLL_EXPORT
2494         in case compiling a static library on Win32 or Cygwin.
2495
2496         * gwin32.c: No <direct.h> on Cygwin. No need for ftruncate() or
2497         dirent emulation on Cygwin.
2498         (get_package_directory_from_module) Convert return value from
2499         GetModuleFileName() to POSIX path on Cygwin.
2500
2501         * tests/Makefile.am (progs_LDADD): Link with libglib, libgthread
2502         and libgmodule as appropriate. Use -no-undefined.
2503
2504         * gbacktrace.c: Move #ifdefs around a bit on Win32.
2505
2506 2001-02-21  Tor Lillqvist  <tml@iki.fi>
2507
2508         * gshell.c (unquote_string_inplace): Make static.
2509
2510         * gthread.h: Include gtypes.h to be sure to get GLIB_VAR
2511         definition, remove definition from here.
2512
2513         * gunicode.h: Remove duplicate GLIB_VAR definition from here, too.
2514
2515         * gutils.c: (Win32) Use USERPROFILE as home dir if present. On
2516         Win2k, HOMEDRIVE and HOMEPATH aren't reliable.
2517         
2518         * Makefile.am (INCLUDES): Add -DGLIB_COMPILATION.
2519
2520         * makefile.mingw.in: Remove install target, Windows isn't Unix.
2521         (DEFINES): Add -DDLL_EXPORT.
2522
2523         * testgdate.c
2524         * testgdateparser.c
2525         * testglib.c: Undefine GLIB_COMPILATION.
2526
2527         * testglib.c: Make some vars static. Add Cygwin path tests.
2528
2529         * glib.def: Updates.
2530
2531         * .cvsignore
2532         * */.cvsignore: Ignore also .obj, .dll, .lib and .exe files.
2533
2534 2001-02-19  Hans Breuer <hans@breuer.org>
2535
2536         * glib/glib.def, gobject/gobject.def : added nissing symbols
2537
2538         * gobject/makefile.msc : updated
2539
2540         * glib/gmessages.c : call the "debug interrupt" before exiting the
2541         program, if build with msvc as debug version. Which gives the opportunity
2542         to see the callstack, etc.
2543
2544         * glib/gthread.c : thread->pid is only defined #ifdef
2545         G_THREAD_USE_PID_SURROGATE
2546
2547 Mon Feb 19 07:32:38 2001  Tim Janik  <timj@gtk.org>
2548
2549         * glib-config-2.0.in (lib_glib): my name is glib-config-2.0!
2550         don't exit with errorcode!=0 for --help or -h.
2551         
2552         * Makefile.am:
2553         * configure.in: build glib-config-2.0.
2554
2555 2001-02-17  Havoc Pennington  <hp@pobox.com>
2556
2557         * gthread.c: include string.h
2558
2559         Applied patch from Soeren Sandmann:
2560         
2561         * testglib.c: const fixes
2562
2563         * gwin32.h: format cleanups
2564
2565         * gutils.c (g_atexit): constify a variable
2566         (g_find_program_in_path): constification
2567         (g_basename): G_CONST_RETURN
2568         (g_path_skip_root): G_CONST_RETURN
2569         (g_getenv): G_CONST_RETURN
2570         (g_get_user_name): G_CONST_RETURN
2571         (g_get_real_name): G_CONST_RETURN
2572         (g_get_home_dir): G_CONST_RETURN
2573         (g_get_tmp_dir): G_CONST_RETURN
2574         (g_get_prgname): G_CONST_RETURN
2575         (_glib_gettext): G_CONST_RETURN
2576
2577         * gunicode.h: formatting cleanups
2578
2579         * gstrfuncs.c (g_strerror): G_CONST_RETURN
2580         (g_strsignal): G_CONST_RETURN
2581
2582         * gspawn.c (g_execute): const on variables
2583
2584         * gmessages.c (printf_string_upper_bound): fix const on a variable
2585
2586         * gmem.c (g_mem_chunk_new): make the "name" arg const
2587         (struct _GRealMemChunk): make the "name" field const
2588
2589         * gfileutils.c (g_file_open_tmp): store const return in a const
2590         gchar* variable
2591
2592         * gdataset.c (g_quark_to_string): G_CONST_RETURN
2593
2594 Sat Feb 17 07:26:33 2001  Tim Janik  <timj@gtk.org>
2595
2596         * configure.in (G_MODULE_HAVE_DLERROR): add check for broken RTLD_GLOBAL
2597         (on OSF1 V5.0).
2598
2599 2001-02-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2600
2601         * acconfig.h, configure.in: Reverted the changes necessary to
2602         enlarge the system thread for G_THREAD_USE_PID_SURROGATE.
2603
2604         * gthread.c: Now implement G_THREAD_USE_PID_SURROGATE in gthread.c
2605         instead of gthread/gthread-posix.c. While the latter has the
2606         advantage, that it is conceptually cleaner, it makes
2607         g_thread_self_posix_impl _very_ slow and that hurts
2608         GStaticRecMutex and other things. So the new version is less
2609         clean, but faster.
2610
2611 2001-02-09  Havoc Pennington  <hp@redhat.com>
2612
2613         * gconvert.c (g_convert): don't overwrite errors
2614
2615         * gerror.c (g_set_error): improve warning message if an error is
2616         overwritten     
2617         (g_propagate_error): ditto
2618
2619 2001-02-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2620
2621         * gthread.c, gthread.h: Added functions g_static_rec_mutex_init,
2622         g_static_rec_mutex_free, g_static_private_init,
2623         g_static_private_free, g_static_rw_lock_init to allow the usage of
2624         all those types dynamically. (g_static_rw_lock_free already
2625         existed). Aditionally freed static_private indeces are reused
2626         now. Untill now the array would just grow if you would use more
2627         and more static_private. That required adding a slist of all
2628         running threads, which could potentially be of good use later. It
2629         is not exported however. Renamed a LOCK and small indentation
2630         fixes.
2631
2632         * tests/thread-test.c: Test the new static_private index freing
2633         and reusing feature.
2634         
2635 Mon Feb 12 15:01:09 2001  Owen Taylor  <otaylor@redhat.com>
2636
2637         * configure.in (gtk_doc_min_version): Add check for gtk-doc version.
2638
2639 2001-02-10  Tor Lillqvist  <tml@iki.fi>
2640
2641         * gtypes.h
2642         * gutils.h: Move GLIB_VAR definition from gutils.h to gtypes.h
2643
2644         * glib.def
2645         * gmem.h: Mark glib_mem_profiler_table for export.
2646
2647         * gwin32.c (get_package_directory_from_module): Don't store
2648         address of local variable in hashtable.
2649
2650 2001-02-08  Fatih Demir <kabalak@kabalak.net>
2651
2652         * configure.in: Added "tr" to ALL_LINGUAS.
2653
2654 2001-02-04  Tor Lillqvist  <tml@iki.fi>
2655
2656         * gwin32.c (g_win32_getlocale): Use "nn" for Nynorsk, as nn.po
2657         files are appearing now. If the sublanguage starts with '@', don't
2658         use a '_' separator. South Africa is 'ZA', not 'SA'.
2659
2660 Sun Feb  4 07:38:32 2001  Tim Janik  <timj@gtk.org>
2661
2662         * docs/debugging.txt: s/glib_trap_/g_trap_/. add comments on
2663         g_trap_instance_signals, g_trace_instance_signals and
2664         GRUNTIME_DEBUG.
2665
2666         * gmem.c: s/glib_trap_/g_trap_/.
2667         
2668 2001-02-04  Tor Lillqvist  <tml@iki.fi>
2669
2670         * tests/Makefile.am (thread_LDADD): Change order of libs,
2671         put progs_LDADD last. Needed for cygwin, says jbdoll@kepri.re.kr.
2672
2673 2001-02-02  Tor Lillqvist  <tml@iki.fi>
2674
2675         * giochannel.h
2676         * giowin32.c
2677         * gmain.c: Stylistic cleanups. Use G_STRLOC in g_warning() calls.
2678
2679         * glib.def: Add missing functions.
2680
2681 2001-02-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2682
2683         * gthread.c, gthread.h: Added g_static_mutex_init to allow
2684         initialization of a GStaticMutex, that can not be initialized with
2685         G_STATIC_MUTEX_INIT, for example in allocated structures.
2686
2687 Wed Jan 31 13:46:58 2001  Owen Taylor  <otaylor@redhat.com>
2688
2689         * acinclude.m4 glib-gettext.m4: Fix problem with --disable-nls.
2690
2691 2001-01-31  Tor Lillqvist  <tml@iki.fi>
2692
2693         * glibconfig.h.win32.in: Corresponding change as below to
2694         GStaticMutex.
2695
2696 2001-01-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2697
2698         * gthread.c, gthread.h: Added g_static_mutex_free to allow using
2699         GStaticMutexes with limited lifetime without leaking.
2700         
2701         * configure.in: GStaticMutex doesn't have to provide extra space
2702         for debugging information for G_ERRORCHECK_MUTEXES, as then the
2703         non-default implementation (runtime_mutex) is used anyway.
2704
2705         * gthread.h (g_cond_wait): Added debug information for
2706         g_mutex_free calls, if G_ERRORCHECK_MUTEXES is defined.
2707
2708 2001-01-29  Tor Lillqvist  <tml@iki.fi>
2709
2710         * glibconfig.h.win32.in: Use the same GMutex structure as the
2711         configure-generated glibconfig.h does.
2712
2713         * gstrfuncs.c (g_strsignal): Declare strsignal() on Cygwin, too,
2714         says jbdoll@kepri.re.kr.
2715
2716 2001-01-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2717
2718         * gthread.c: Broadcast the condition, if there are waiting
2719         readers, as all might read at the same time. Only signal the
2720         writer thread, if there are no more readers.
2721
2722 2001-01-25  Tor Lillqvist  <tml@iki.fi>
2723
2724         * makefile.mingw.in
2725         * */makefile.mingw.in: Protect the rule to rebuild makefile.mingw
2726         if makefile.mingw.in has changed with a check if said .in file
2727         exists. (This rule is mainly a convenience for yours truly.)
2728
2729         * giowin32.c: Socket support rewritten. It was utterly broken, and
2730         untested in fact. We still do use a thread for each socket being
2731         watched, but instead of blocking in recv() (which of course was
2732         plain stupid for sockets being listen()ed on in a server-type
2733         application), we block in select(). The read method for sockets
2734         calls recv(). It is now possible for the application to call
2735         accept(), recv() or send() in the callback, just like on
2736         Unix. Tested with code kindly provided by Andrew Lanoix.
2737
2738         Rename g_io_channel_win32_new_stream_socket() to
2739         g_io_channel_win32_new_socket() as it isn't restricted to stream
2740         sockets.
2741         
2742         * gmain.c (g_poll): Related changes in the Win32 version of
2743         g_poll(). When polling for messages, always do a PeekMessage()
2744         first. We used to miss messages if several were posted between
2745         calls to g_poll().
2746
2747         * giochannel.h: Improve Win32-related comments.
2748
2749         * gutf8.c: (Win32) Include <stdio.h> for sprintf.
2750
2751         * tests/gio-test.c: (Win32) Add tests for polling for Windows
2752         messages.
2753
2754         * tests/makefile.mingw.in: Remove superfluous compilation command
2755         line.
2756
2757 2001-01-23  Alex Larsson  <alexl@redhat.com>
2758
2759         * gmain.c (g_source_callback_unref): Free the callback
2760         (g_source_set_callback): Initialize the callback refcount
2761
2762 2001-01-20  Tor Lillqvist  <tml@iki.fi>
2763
2764         * gutils.c (g_get_codeset): (Win32) Even if g_get_codeset() is
2765         currently commented out from gutils.h, fix it to return the same
2766         CP%d value as g_get_charset().
2767
2768 2001-01-19  Kjartan Maraas  <kmaraas@gnome.org>
2769
2770         * gconvert.c: Fix typo.
2771         * gfileutils.c: Same here.
2772         * configure.in: Added no to ALL_LINGUAS
2773         
2774 2001-01-17  Tor Lillqvist  <tml@iki.fi>
2775
2776         * gwin32.c (g_win32_getlocale, g_win32_error_message): Add doc
2777         comments.
2778         (g_win32_get_package_installation_directory): Add one parameter,
2779         the name of a DLL in the package. Add possibility to use that to
2780         deduce the installation directory if not entered into the
2781         Registry. Make the return value dynamically allocated.
2782         (g_win32_get_package_installation_subdirectory): New convenience
2783         function.
2784
2785         * gutils.c (GLIB_LOCALE_DIR)
2786         * gwin32.h: Adapt accordingly.
2787
2788         * testglib.c (main): Adapt tests accordingly.
2789
2790 Tue Jan 16 23:20:38 2001  Owen Taylor  <otaylor@redhat.com>
2791
2792         * gutils.c glibintl.h: Optimize for size rather than speed by
2793         making _() always call _glib_gettext() instead of conditionally
2794         calling gettext() or _glib_gettext_init. glib only uses translated
2795         strings in slow error handling code anyways.
2796
2797         * glibintl.h: g'ify types.
2798
2799         * Makefile.am: include glibintl.h in _SOURCES
2800
2801 2001-01-17  Tor Lillqvist  <tml@iki.fi>
2802
2803         * config.h.win32.in: Define ENABLE_NLS and GETTEXT_PACKAGE.
2804
2805         * makefile.mingw.in
2806         * makefile.msc.in: Use the GNU intl library.
2807
2808         * gwin32.c (g_win32_get_package_installation_directory): New
2809         function. To be used by various GLib-using packages to get their
2810         installation directory, which should be stored in the Registry by
2811         some installer.
2812
2813         * gwin32.h: Declare it.
2814
2815         * testglib.c (main): Test it.
2816
2817         * gutils.c: On Win32, define GLIB_LOCALE_DIR using
2818         g_win32_get_package_installation_directory().
2819
2820         * glib.def: Update.
2821
2822 Mon Jan 15 21:39:06 2001  Owen Taylor  <otaylor@redhat.com>
2823
2824         * glib-2.0.pc.in (Libs) glib-config-2.0.in: Add @INTLLIBS@.
2825
2826 Mon Jan 15 21:12:49 2001  Owen Taylor  <otaylor@redhat.com>
2827
2828         * configure.in acconfig.h glibintl.h gutils.c
2829         po/{Makefile.in.in,POTFILES.in,po2tbl.in}: Add gettext
2830         support.
2831
2832         * glib-gettext.m4 acinclude.m4: Clean up the GTK+ gettext macros
2833         some more and put them in this file, though they also need
2834         to be included in acinclude.m4 due to the brokeness of
2835         aclocal.
2836
2837         * gspawn.c gspawn-win32.c gutf8.c gconvert.c gfileutils.c
2838         gshell.c: Remove dummy _() #defines, include glibintl.m4.
2839
2840 2001-01-09  Tor Lillqvist  <tml@iki.fi>
2841
2842         * giowin32.c: Rework the changes needed to pass mainloop-test. Now
2843         we don't need to call TerminateThread() after all, which is a
2844         relief, as the docs have a BIG RED WARNING SIGN about using that
2845         API. Instead, when closing a fd channel that has a reader thread
2846         running, just mark it as non-running and additionally mark the fd
2847         as ripe for closing. When the reader thread hopefully eventually
2848         gets something (and EOF or some actual data), it will note that it
2849         shouldn't be running, break out of the loop, and close the fd.
2850
2851         The socket channel closing code should probably be changed
2852         similarily, but that will have to wait until I have a test case.
2853         
2854         (g_pipe_readable_msg, g_io_channel_win32_new_pipe,
2855         g_io_channel_win32_new_pipe_with_wakeups,
2856         g_io_channel_win32_pipe_request_wakeups,
2857         g_io_channel_win32_pipe_readable): Remove these, have been
2858         obsolete for some time.
2859         
2860         * gutils.c (g_basename, g_dirname): Don't warn about deprecation
2861         on Win32. Code written for GLib 1.2 doesn't have much choice but
2862         to use GLib >= 1.3 on Win32.
2863
2864         * glib.def: Update.
2865
2866 2001-01-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2867
2868         * gmem.c: Made g_profile_mutex a GMutex* instead of
2869         G_LOCK_DEFINE_STATIC to avoid deadlock for thread implementations
2870         without native static mutexes. Contruct g_profile_mutex in
2871         g_mem_init().
2872
2873 2001-01-06  Tor Lillqvist  <tml@iki.fi>
2874
2875         * gconvert.c (g_locale_to_utf8, g_locale_from_utf8): Get len using
2876         strlen() if arg is negative in the Win32 code, too.
2877
2878         * giowin32.c: Changes necessary to be able to run
2879         mainloop-test. We can't close the fd that our (internal) reader
2880         thread is sitting doing a blocking read() from. We must terminate
2881         the thread first. Keep track of thread handle, and close it when
2882         thread is dying. Start reader thread with the lower-level
2883         CreateThread() instead of _beginthreadex() from the C runtime, in
2884         order to be able to use TerminateThread(). Hopefuly this isn't
2885         harmful.
2886
2887         * glib.def: Update.
2888
2889         * tests/makefile.{mingw,msc}.in (TESTS): Add mainloop-test and
2890         unicode-encoding.
2891
2892         * tests/mainloop-test.c: Portability: <unistd.h>, need <fcntl.h>
2893         on Win32.
2894
2895         * tests/unicode-encoding.c (process): Add missing "line" argument
2896         to fail(). On Win32, convert UTF-16LE, as libiconv'c ivonf always
2897         converts to UTF-16BE if we ask for unspecific UTF-16.
2898         (main) Handle also '\r'.
2899
2900 Fri Jan  5 11:25:42 2001  Owen Taylor  <otaylor@redhat.com>
2901
2902         * configure.in (PACKAGE): move $enable_debug down below
2903         checks for GCC to avoid setting CFLAGS prematurely,
2904         change checks to avoid adding -g twice.
2905
2906         * gutf8.c (g_ucs4_to_utf8): Support len < 0 to mean
2907         0 termination.
2908
2909         * gutf8.c (g_utf8_to_ucs4): Terminate result with 0.
2910
2911         * tests/mainloop-test.c (main): Fix uses of 
2912         g_main_loop_destroy().
2913
2914         * tests/unicode-encoding.c tests/Makefile.am tests/utf8.txt:
2915         Tests for unicode-conversion code.
2916
2917         * gconvert.c (g_convert, g_convert_with_fallback): work around
2918         a couple of GNU libc bugs.
2919
2920         * gconvert.[ch] (g_{locale,filename}_{to,from}_utf8): Standardize
2921         arguments to match g_convert(). Document.
2922
2923         * gunicode.[ch]: 
2924           - Implement conversion functions to and from UTF-16
2925           - Standardize unicode conversion functions on prototype like
2926             g_convert.
2927           - Add a lot of error checking to unicode conversion functions.
2928
2929         * gunicode.[ch] (g_utf8_to_ucs4_fast): Add fast, non-checking
2930         variant of g_utf8_to_ucs4.
2931
2932         * gutf8.c (g_utf8_validate): 
2933          - add g_return_if_fail (str != NULL).
2934          - add checks for overlong strings, non-valid Unicode characters (>= 110000)
2935            and single surrogates.
2936
2937 2001-01-05  Tor Lillqvist  <tml@iki.fi>
2938
2939         * testglib.c (main): Add test for g_path_skip_root().
2940
2941         * gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
2942         forward slashes in the template.
2943
2944         * gutils.c (g_path_skip_root): On Win32, skip the \\server\share
2945         part of UNC paths. On all platforms, skip several initial
2946         slashes. Add a few comments.
2947         (g_get_any_init): On Win32, in case HOME is Unix-style with
2948         (forward) slashes (some other applications apparently set it up
2949         this way, convert to backslashed form.
2950
2951         * configure.in (glib_os): Remove stray 'v'. Add case for mingw,
2952         although using configure for mingw surely doesn't work yet.
2953
2954         * glib.def: Update.
2955
2956 2001-01-02  Havoc Pennington  <hp@redhat.com>
2957
2958         * configure.in: remove glib-config-2.0
2959
2960         * Makefile.am: remove glib-config-2.0
2961
2962 2001-01-03  Havoc Pennington  <hp@pobox.com>
2963
2964         * tests/Makefile.am (INCLUDES): -I$(top_srcdir)/gmodule, 
2965         fix from Michael Meeks
2966
2967         * Makefile.am (INCLUDES): DISABLE was spelled wrong
2968
2969 Wed Jan  3 14:10:49 2001  Owen Taylor  <otaylor@redhat.com>
2970
2971         * gmain.[ch]: Switch GMainLoop to be ref/unref, use to
2972         make dropping reference to running loop safe.
2973
2974 Wed Dec 13 20:41:49 2000  Owen Taylor  <otaylor@redhat.com>
2975
2976         * gmain.c (g_source_unref_internal): Unref callback->cb_data
2977         if it was still set when the source is freed. (Usually, this
2978         will be done by g_source_destroy.)
2979
2980 2001-01-02  Dan Winship  <danw@helixcode.com>
2981
2982         * garray.h (g_array_append_val, g_array_prepend_val,
2983         g_array_insert_val): Use parentheses around an argument to make
2984         these cause an error if you pass a non-lvalue for the value,
2985         rather than silently doing the wrong thing.
2986
2987 2000-12-29  Tor Lillqvist  <tml@iki.fi>
2988
2989         * glibconfig.h.win32.in: Add GLIB_SIZEOF_VOID_P and GLIB_SIZEOF_LONG.
2990
2991         * glib.def: Update.
2992
2993         * {.,*}/makefile.{mingw,msc}.in: Add -DG_ENABLE_DEBUG.
2994         
2995 Fri Dec 29 14:53:18 2000  Tim Janik  <timj@gtk.org>
2996
2997         * configure.in: we can't grow _cv_ variables by using a backticked
2998         expr that refers back to the variable (glib_cv_sizeof_system_thread for
2999         G_THREAD_USE_PID_SURROGATE), that'd keep the variable growing every time
3000         it's evaluated. quantum states, anyone?)
3001
3002 Thu Dec 28 10:21:46 2000  Tim Janik  <timj@gtk.org>
3003
3004         * gmem.[hc]: got rid of outdated dmalloc support. provide g_try_malloc()
3005         and g_try_realloc() which _may_ fail and return NULL.
3006         nuked g_mem_check(), provided GMemVTable for memory function
3007         virtualization, alterable at program startup with g_mem_set_vtable().
3008         provided glib_mem_profiler_table and g_mem_profile() to support limited
3009         profiling information out of the box (uses mprotect() for free()ed areas
3010         on linux).
3011         provide globally visible G_MEM_ALIGN.
3012         buncha cleanups.
3013
3014         * docs/macros.txt: file to get a clue about the various configuration
3015         macros.
3016
3017         * docs/debugging.txt: explain debugging traps.
3018
3019         * configure.in: got rid of --enable-mem-check and --enable-mem-profile,
3020         define GLIB_SIZEOF_VOID_P and GLIB_SIZEOF_LONG. check malloc prototypes
3021         and define SANE_MALLOC_PROTOS is we can use them.
3022         <boy, is this file a mess>
3023
3024         * gutils.c, gscanner.c: fix up compatibility warnings, use g_message().
3025
3026 2000-12-27  Tor Lillqvist  <tml@iki.fi>
3027
3028         * README.win32: Update.
3029
3030 2000-12-25  Tor Lillqvist  <tml@iki.fi>
3031
3032         * gmessages.c: (Win32) Use a MessageBox for fatal
3033         messages. Collect eror message into a buffer, and display that.
3034
3035         * glib.def: Update.
3036
3037         * glibconfig.h.win32.in: Update. Remove unused wchar and wctype
3038         macros, add G_MODULE_SUFFIX.
3039
3040 2000-12-24  Ali Abdin  <aliabdin@aucegypt.edu>
3041
3042         * Makefile.am, gcompat.h, glib.h: New gcompat.h header file
3043           as recommended by Havoc.
3044
3045         * gdate.c, gdate.h, testgdate.c,
3046           docs/reference/glib/glib-sections.txt,
3047           docs/reference/glib/tmpl/date.sgml, tests/date-test.c: Rename some
3048           of the gdate functions to use the '_get' in their name. Patch
3049           reviewed by Havoc.
3050                 
3051 2000-12-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3052
3053         * configure.in: Determine the suffix of the shared librarries for
3054         this system. This is done analogous to
3055         ltconfig.sh. G_MODULE_SUFFIX in glibconfig.h is set to either
3056         "sl", "dll", or (most often) "so".
3057
3058         * tests/Makefile.am, tests/module-test.c,
3059         tests/libmoduletestplugin_a.c, tests/libmoduletestplugin_b.c:
3060         Added new testcase for gmodule. This is mostly copied from
3061         gmodule/testgmodule.c, but unlike that is is quiet. (Why BTW are
3062         some tests that verbose, not to say loquacious...)
3063
3064 2000-12-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3065
3066         * grand.c: Updated G_RAND_DOUBLE_TRANSFORM to be more
3067         accurate. Redid g_rand_double() such that it returns 52 bits after
3068         the point instead of 32 as before. That OTOH requires calling
3069         g_rand_int() twice. Overhauled g_rand_int_range(), which is easier
3070         now thanks to the new precision of g_rand_double(). Thanks to
3071         Sverre Johansen <sj@ifi.uio.no> for the hint.
3072
3073         * grand.h: Added g_rand_boolean() and g_random_boolean()
3074         macros. While they could be omitted due to extreme simplicity,
3075         they make intention clearer in code and are therefore good to have.
3076
3077         * grand.c, grand.h: Renamed all 'min' and 'max' parameters to'
3078         begin' and 'end' resp. to avoid making people think, that 'max' is
3079         included in the interval. 'end' now isn't, whereas 'begin'
3080         is. That's similar to the use in the STL.
3081
3082         * gslist.c, glist.c: Ok, I'm a moron. When I originally
3083         implemented ENABLE_GC_FRIENDLY, I forgot to include config.h into
3084         the affected files. Now that Alex did that for those two,
3085         inevitable typos surfaced, which are now fixed.
3086         
3087         * garray.c, ghash.c, gqueue.c, gtree.c: Include config.h as well,
3088         as ENABLE_GC_FRIENDLY should be known.
3089
3090 2000-12-19  Alexander Larsson  <alexl@redhat.com>
3091
3092         * configure.in:
3093         Added --disable-mem-pools option.
3094
3095         * glist.c:
3096         * gslist.c:
3097         * gnode.c:
3098         * gmem.c:
3099         Disable free list and memory chunks if DISABLE_MEM_POOLS is defined.
3100
3101 2000-12-17  Tor Lillqvist  <tml@iki.fi>
3102
3103         * gutf8.c (g_utf8_get_charset_internal): (Win32) Use GetACP to get
3104         the current ANSI codepage.
3105
3106         * gunicode.h: Add comment that the static string g_get_charset
3107         sets the parameter to point to should be copied in case the
3108         charset might be changed later in the program.
3109
3110 2000-12-14  Tor Lillqvist  <tml@iki.fi>
3111
3112         * makefile.{mingw,msc}.in: No need to -DGSPAWN_HELPER when
3113         compiling gspawn-win32-helper any longer.
3114
3115         * giowin32.c (g_io_win32_dispatch): Warn if no callback. Call
3116         callback correctly.
3117         (g_io_win32_create_watch): Fix typo.
3118         (g_io_win32_fd_create_watch): Ditto.
3119         (g_io_channel_unix_new): If it is a file descriptor (i.e., a Unix
3120         fd lookalike provided by the C library), call
3121         g_io_channel_win32_new_fd(). If it is a socket (from WinSock),
3122         call g_io_cahnnel_win32_new_stream_socket(). Hopefully sockets and
3123         fds don't overlap. TODO: Implement also datagram sockets.
3124         (g_io_channel_win32_poll): Call g_main_context_get_poll_func().
3125
3126         * gcompletion.h: Include <unistd.h> only on Unix. Is this
3127         inclusion really needed here? OTOH, do include <stddef.h>, for
3128         size_t.
3129
3130         * gmessages.c: (Win32) Don't define a function called "write" that
3131         might clash with the prototype from <io.h>, use a #define.
3132
3133         * glib.def: Update.
3134
3135         * gmain.c (g_source_add_poll): Don't return a value from void
3136         function.
3137         (g_main_context_get_poll_func): Compile also for non-Win32, as
3138         presumably was intended. The result var is a GPollFunc, not a
3139         GPollFunc*. Return the result!
3140
3141 2000-12-13  Havoc Pennington  <hp@redhat.com>
3142
3143         * gconvert.c (open_converter): make static
3144
3145         * gutf8.c (g_utf8_validate): Simplify logic a bit, maybe 
3146         speeding it up - now we just return FALSE if we had to bail out
3147         for any reason before getting to the end of the string, as defined 
3148         by a nul byte if len was -1, defined by the len otherwise. This 
3149         also fixes a bug where nul bytes were not treated as invalid 
3150         when the length was specified.
3151
3152 2000-12-12  Havoc Pennington  <hp@pobox.com>
3153
3154         * gmain.c (g_main_context_destroy): don't try to use thread stuff
3155         unless G_THREADS_ENABLED
3156         (g_main_context_query): ditto
3157         (g_main_context_check): ditto
3158         (g_main_loop_quit): ditto
3159
3160 Tue Dec 12 18:58:22 2000  Tim Janik  <timj@gtk.org>
3161
3162         * ghash.c (g_hash_table_remove): return whether a value
3163         got removed.
3164
3165 Tue Dec 12 15:18:10 2000  Owen Taylor  <otaylor@redhat.com>
3166
3167         * gmain.[ch]: Revert unauthorized changes.
3168
3169 2000-12-12  Elliot Lee  <sopwith@redhat.com>
3170
3171         * gmain.c, gmain.h (g_main_context_new, g_main_context_destroy):
3172         GMainContext useful in implementing some additional styles of
3173         main loop usage.  To do this, however, Joe Hacker needs to be able
3174         to create/destroy GMainContext's at will. This is just an export
3175         of existing functionality, rather than any new functionality.
3176
3177         They are listed in the "Low level functions for implementing custom
3178         main loops" section of the header file, to avoid confusing people.
3179
3180 Sun Dec 10 10:47:11 2000  Owen Taylor  <otaylor@redhat.com>
3181
3182         * gmain.c (g_source_destroy_internal): Remove pollfds
3183         from the context here, not when actually freeing the
3184         source.
3185
3186         * gmain.c (g_source_unref_internal): Free source list
3187         and source, call source->source_funcs->destroy().
3188
3189         * giochannel.c: Unreference io_channel properly.
3190
3191 Thu Dec  7 15:22:30 2000  Owen Taylor  <otaylor@redhat.com>
3192
3193         * tests/mainloop-test.c (recurser_start): Add a bunch
3194         of unrefs.
3195
3196         * gmain.c (g_source_attach): Reference the source
3197         when adding (pointed out by Elliot)
3198
3199 2000-12-08  Raja R Harinath  <harinath@cs.umn.edu>
3200
3201         * acglib.m4 (GLIB_AC_DIVERT_BEFORE_HELP): 
3202         Rename from GLIB_DIVERT_BEFORE_HELP.  
3203         Update to track autoconf 2.49b.
3204         * configure.in: Reflect above change.
3205         (AC_EGREP_HEADER): Rename from really obselete AC_HEADER_EGREP.
3206         (debug_default): Replace "if test `expr ...`" with "case". 
3207
3208         * tests/Makefile.am (TESTS): Rearrange into other variables, and
3209         include run-markup-tests.sh.
3210         (TESTS_ENVIRONMENT): New.  Pass $srcdir to tests.
3211         (noinst_PROGRAMS): Rename to ...
3212         (check_PROGRAMS): ... this.  'automake' ensures that these are
3213         built before running the tests.
3214         * tests/run-markup-tests.sh: Support $srcdir != $builddir.
3215
3216 2000-12-08  Havoc Pennington  <hp@pobox.com>
3217
3218         * tests/Makefile.am (TESTS): move markup-test to noinst_PROGRAMS;
3219         it isn't a proper test, the proper test would be 
3220         run-markup-tests.sh, but that can't go in tests, so we need 
3221         a manual make check rule. Didn't do that yet.
3222
3223 2000-12-07  Raja R Harinath  <harinath@cs.umn.edu>
3224
3225         * gmain.h: Don't put anything after an #endif.
3226         * gmain.c: Likewise.
3227
3228 2000-12-06  Havoc Pennington  <hp@pobox.com>
3229
3230         * tests/strfunc-test.c (main): add g_strdupv test
3231
3232         * gstrfuncs.c (g_strdupv): Add a function to copy 
3233         an array of strings
3234
3235 Tue Dec  5 12:23:04 2000  Owen Taylor  <otaylor@redhat.com>
3236
3237         * gmain.[hc]: Major change in API for creating sources
3238         to handle multiple main loops (GMainContext *). 
3239
3240         GSources are now exposed as GSource * and implemented
3241         with structure derivation.
3242
3243         * giochannel.[ch]: Changed vtable for GIOChannel to correspond
3244         to the new mainloop API, add g_io_channel_create_watch().
3245          
3246         * gtypes.h: Move GTimeVal here.
3247
3248         * gthread.h: Remove gmain.h include to avoid circularity.
3249         
3250         * giounix.c: Update for new GMain API.
3251          
3252         * giowin32.c: Update for new GMain API. (No check for
3253         proper compilation or working.)
3254
3255         * timeloop.c timeloop-basic.c: A benchmarking program for
3256         the main loop comparing the main loop against a 
3257         hand-written (timeloop-basic.c) variant. 
3258
3259         * tests/mainloop-test.c: New torture test of mainloop.
3260         
3261         * docs/Changes-2.0.txt: Started. Added text about
3262         changes to GMain.
3263
3264         * gmain.c (g_main_add_poll_unlocked): Initial fd->revents
3265         to zero. (#8482, Benjamin Kahn)
3266
3267 2000-12-01  Tor Lillqvist  <tml@iki.fi>
3268
3269         * {.,*}/makefile.msc.in: Include make.msc from GLib's build subdir.
3270
3271         * makefile.{mingw,msc}.in (glib_OBJECTS): Add gunibreak.
3272
3273         * glib.def: Update correspondingly.
3274
3275 2000-11-21  Havoc Pennington  <hp@pobox.com>
3276
3277         * gmacros.h: Provide G_CONST_RETURN which is 'const' by default,
3278         and nothing when G_DISABLE_CONST_RETURNS is defined.
3279
3280 2000-11-29  Havoc Pennington  <hp@redhat.com>
3281
3282         * gunidecomp.c (COMBINING_CLASS): 
3283         s/UNICODE_LAST_CHAR/G_UNICODE_LAST_CHAR/
3284
3285         * gunichartables.h: Update for data in Unicode 3.0.1
3286
3287         * gunidecomp.h: Ditto
3288         
3289         * gunicode.h (GUnicodeBreakType): Enum for line break properties
3290         (g_unichar_break_type): Get the break property for a char
3291         
3292         * gunibreak.h: Autogenerated line break property tables
3293
3294         * gunibreak.c (g_unichar_break_type): added 
3295         
3296         * Makefile.am (EXTRA_DIST): dist gen-unicode-tables.pl
3297
3298         * Makefile.am (libglib_1_3_la_SOURCES): Add gunibreak.h, gunibreak.c
3299         
3300         * gen-unicode-tables.pl: Include the script to update the unicode
3301         char tables
3302
3303 2000-11-28  Elliot Lee  <sopwith@redhat.com>
3304
3305         * gmarkup.c: Fix warnings.
3306
3307         * guniprop.c, gunidecomp.c: Make warnings go away by using
3308         GPOINTER_TO_INT() instead of (int).
3309
3310         * gcompletion.[ch]: Add g_completion_set_compare(),
3311         to allow (for example) using case-insensitive completion.
3312
3313 2000-11-28  Tor Lillqvist  <tml@iki.fi>
3314
3315         Patches by Hans Breuer:
3316         
3317         * gspawn-win32.c: Move the code for gspawn-win32-helper to its own
3318         file.
3319
3320         * makefile.{mingw,msc}.in: Change accordingly.
3321
3322         * gspawn-win32-helper.c: New file.
3323
3324         * Makefile.am (EXTRA_DIST): Add it.
3325
3326         * gmarkup.c (find_current_text_end): Fix assertion not to check an
3327         uninitialised variable.
3328
3329 2000-11-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3330
3331         * gthread.c: Set the thread data before locking the mutex, because
3332         the locking call might use g_thread_self ().
3333
3334         * gthread.h: Do only show the location of the locking/unlocking
3335         for -DG_ERRORCHECK_MUTEXES and not the name of the mutex. Add the
3336         errorcheck capability for g_cond_wait and g_cond_timed_wait as
3337         well.   
3338
3339 2000-11-27  Havoc Pennington  <hp@redhat.com>
3340
3341         * gthread.h: Add void in empty function arg list
3342
3343 2000-11-22  Tor Lillqvist  <tml@iki.fi>
3344
3345         * makefile.{mingw,msc}.in: Add gqsort.
3346
3347         * glib.def: Update.
3348
3349 2000-11-21  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3350
3351         * configure.in: Add a surrogate for thread priorities using PID
3352         niceness for systems with no thread priorities and different PIDs
3353         for threads of the same process (most notably: Linux). Define
3354         G_THREAD_USE_PID_SURROGATE in that case, as used by
3355         gthread-posix.c. Also make the system thread bigger by
3356         sizeof (long) to contain the thread's PID.
3357
3358         * gfileutils.c: Include stdlib.h for mkstemp prototype.
3359
3360         * gthread.c: Add priority range checks to the affected functions.
3361
3362         * gthreadpool.c: Remove unused variable.
3363
3364 Mon Nov 20 18:55:17 2000  Jonathan Blandford  <jrb@redhat.com>
3365
3366         * gtree.[hc]: Patch from David Benson <daveb@idealab.com> to add
3367         user_data support to gtree functions.
3368
3369 Mon Nov 13 18:35:52 2000  Jonathan Blandford  <jrb@redhat.com>
3370
3371         * gtypes.h (GCompareFuncData): new func type to let you use user
3372         data when comparing nodes.
3373
3374         * gslist.c (g_list_sort_with_data): new function to sort with
3375         user_data. 
3376
3377         * glist.c (g_list_sort_with_data): new function to sort with
3378         user_data. 
3379
3380         * garray.[ch]: Added convenience functions to sort arrays.
3381
3382 2000-11-16  Havoc Pennington  <hp@redhat.com>
3383
3384         * guniprop.c (g_unichar_isspace): Use a switch here, maybe helps 
3385         the compiler optimize things. Also, ' ' is a SPACE_SEPARATOR,
3386         so don't special case it.
3387
3388 2000-11-17  Tor Lillqvist  <tml@iki.fi>
3389
3390         * glib.def: Add g_trash_stack entry points.
3391
3392 Fri Nov 17 15:43:00 2000  Owen Taylor  <otaylor@redhat.com>
3393
3394         * Released 1.3.2
3395         
3396         * NEWS: Update.
3397
3398         * tests/Makefile.am (dist-hook): Add code to distribute
3399         markup test files.
3400
3401 2000-11-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3402
3403         * configure.in: Check for the sched.h header and include it on
3404         gthread/gthread-posix.c if available.
3405
3406         * configure.in: Add -D_POSIX4_DRAFT_SOURCE to
3407         GTHREAD_COMPILE_IMPL_DEFINES. Also add -D_POSIX4A_DRAFT10_SOURCE
3408         to G_THREAD_CFLAGS. Really deploy GTHREAD_COMPILE_IMPL_DEFINES,
3409         when searching for thread libs. Look for sched_* functions in
3410         -lrte as well. All of that is necessary on DG/UX.
3411
3412         * configure.in: Use AC_TRY_COMPILE instead of AC_EGREP_HEADERS in
3413         various places to make it work more reliable, to make it accept
3414         macros instead of functions etc.
3415
3416         * configure.in: Replace some NULL's for checks with 0 to make it
3417         work without stdio.h everywhere.
3418
3419         * configure.in, gutils.c: changed the test for getpwuid_r to first
3420         test for a posix version and then for a non-posix version. No code
3421         change in gutils.c. Again this change deals better with getpwuid_r
3422         being a macro and not a function. Most of the above with kind help
3423         from Tethys <tet@isengard.europe.dg.com>. This fixes Bug #13403.
3424         
3425 2000-11-14  Tor Lillqvist  <tml@iki.fi>
3426
3427         * gwin32.h: Make #endif comment match #ifdef.
3428
3429 Mon Nov 13 14:00:20 2000  Owen Taylor  <otaylor@redhat.com>
3430
3431         * configure.in: Up version to 1.3.2
3432
3433         * gconvert.h (enum GConvertError): Remove trailing ,
3434
3435         * gfileutils.c (g_file_open_tmp): Fix comment to 
3436         properly describe return value.
3437
3438 2000-11-13  Tor Lillqvist  <tml@iki.fi>
3439
3440         * config.h.win32.in: Add USE_LIBICONV.
3441
3442         * gconvert.c: Check G_OS_WIN32 only after including glib.h. 
3443
3444         * glib.def: Update.
3445
3446 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3447
3448         * gthread.c (g_static_rec_mutex_*): Made recursive mutexes also
3449         work when the thread system is not (yet) initialized.
3450
3451 Sun Nov 12 18:34:32 2000  Owen Taylor  <otaylor@redhat.com>
3452
3453         * gconvert.[ch]: Create wrapper functions for iconv()
3454         so that we can transparently use the native iconv, 
3455         libiconv, or (in the future) a mini-iconv included
3456         with glib.
3457
3458         * glib-config-2.0.in glib-2.0.pc.in: Include @ICONV_LIBS@
3459
3460         * INSTALL: Added note about libiconv.
3461
3462         * configure.in: Add checks for libiconv from pango. If
3463         EILSEQ is not defined in errno.h add define for it into
3464         glibconfig.h so g_iconv can use it. (Note, recompiling
3465         from a system without EILSEQ to a system with EILSEQ
3466         will break binary compatibility)
3467
3468 2000-11-12  Robert Brady  <robert@suse.co.uk>
3469
3470         * gstrfuncs.c, gstrfuncs.h: Remove g_filename_{to,from}_utf8
3471
3472         * gconvert.c, gconvert.h: Add g_filename_{to,from}_utf8 and
3473         g_locale_{to.from}_utf8.  The locale_ variant honours 
3474         nl_langinfo(CODESET), the filename_ variant uses UTF-8 unless
3475         asked otherwise.
3476
3477         (g_convert): Add G_CONVERT_ERROR_PARTIAL_INPUT error, if bytesread
3478         != length and no bytesread pointer passed.
3479
3480 Sun Nov 12 15:29:53 2000  Owen Taylor  <otaylor@redhat.com>
3481
3482         * gfileutils.[ch]: template is a reserved word in
3483         C++ s/template/tmpl/. 
3484
3485 2000-11-11  Havoc Pennington  <hp@pobox.com>
3486
3487         * gmarkup.c (g_markup_parse_context_parse): Handle a long stream
3488         of bytes containing no UTF-8 character starts
3489
3490 2000-11-11  Tor Lillqvist  <tml@iki.fi>
3491
3492         * glib.def: Add missing entry points.
3493
3494         * gfileutils.c (g_mkstemp): Improve chance to generate unique
3495         names with less effort a bit.
3496
3497         * gfileutils.h: Add g_file_open_tmp() declaration.
3498
3499         * testglib.c: Include <io.h> on Win32.
3500
3501         * makefile.mingw.in: Correct the way to invoke sub-makes.
3502
3503 Sun Nov  5 13:20:54 2000  Owen Taylor  <otaylor@redhat.com>
3504
3505         * glib-object.h: Add gtypemodule.h
3506
3507 2000-11-11  Tor Lillqvist  <tml@iki.fi>
3508
3509         * gfileutils.c (g_file_open_tmp): New function, suggested by Havoc
3510         earlier this month.
3511         (g_mkstemp): Use only one case for letters in temp file name, as
3512         this will be used on systems with case-insensitive file systems.
3513
3514         * testglib.c (main): Test g_mkstemp() and g_file_open_tmp().
3515
3516 2000-11-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3517
3518         * gthreadpool.c: Don't take other threads with other priorities
3519         into account as changing the priority is highly
3520         unportable. (Actually using it at all already is unportable, but
3521         even sometimes where that works, changing priority is not
3522         possible).
3523
3524 2000-11-05  Havoc Pennington  <hp@pobox.com>
3525
3526         * gmarkup.h: rename G_MARKUP_FOO to
3527         G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG
3528
3529         * gmarkup.c: don't start doc comments with "Returns"
3530         
3531 2000-11-05  Havoc Pennington  <hp@pobox.com>
3532
3533         * gmarkup.c: inline docs
3534         (unescape_text): properly check strtoul for failure.
3535         
3536         * gerror.c (g_propagate_error): Free the src error if the dest
3537         location is NULL - I'm pretty sure that's what this function was 
3538         supposed to do.
3539
3540 2000-11-05  Havoc Pennington  <hp@pobox.com>
3541
3542         * gutils.c (g_find_program_in_path): cleanup docs, sync param 
3543         names to those in the header
3544
3545         * gfileutils.c (g_mkstemp): clean up docs
3546
3547         * gshell.h: sync param names with param names in .c file
3548
3549         * gfileutils.h (enum GFileTest): remove trailing comma from last
3550         member, confuses gtk-doc
3551
3552         * gmarkup.h: s/GMarkupErrorType/GMarkupError/g; to follow
3553         convention
3554
3555 2000-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3556
3557         * gasyncqueue.c: Added documentation for asyncronous queues.
3558
3559         * gspawn.c: Include sys/select.h (some platforms need it for
3560         select). 
3561
3562         * gspawn.c: Changed unportable __FUNCTION__ to the verbatim
3563         function name.
3564
3565 2000-10-31  Tor Lillqvist  <tml@iki.fi>
3566
3567         * gutils.c
3568         * gutils.h
3569         * gfileutils.c
3570         * gfileutils.h: Actually, g_mkstemp() is better suited in gfileutils.
3571
3572 2000-10-30  Tor Lillqvist  <tml@iki.fi>
3573
3574         * configure.in: Check for mkstemp.
3575
3576         * gutils.c (g_mkstemp): New function. If HAVE_MKSTEMP, just call
3577         it, otherwise use code lifted from glibc.
3578
3579         * gutils.h: Declare it.
3580
3581         * glib.def: Here, too. Plus two missing functions.
3582
3583 2000-10-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3584
3585         * gcache.h, gcache.c, ghash.h, ghash.c, grel.c, grel.h, gtypes.h:
3586         Introduced new function type GEqualFunc to return TRUE for equal
3587         params. This is now used instead of GCompareFunc (which should
3588         work akin to strcmp) here. This kind of fixes Bug #14412. Note
3589         that technically GCompareFunc and GEqualFunc are still the same
3590         types, as gint == gboolean.
3591
3592         * ghash.h, gutils.c: g_int_equal and g_direct_equal now return
3593         gboolean to be really become GEqualFunc.
3594
3595         * gscanner.c, testglib.c, tests/hash-test.c: Some tiny changes to
3596         follow the above change.
3597
3598 2000-10-27  Tor Lillqvist  <tml@iki.fi>
3599
3600         * makefile.{mingw,msc}.in (glib_OBJECTS): Add gmarkup.
3601
3602         * glib.def: Add missing functions.
3603
3604         * tests/makefile.{mingw,msc}.in (TESTS): Add markup-test.
3605
3606 2000-10-24  Havoc Pennington  <hp@pobox.com>
3607
3608         * gmarkup.h, gmarkup.c: New module to parse a simple
3609         markup language
3610         
3611         * Makefile.am: add gmarkup.h, gmarkup.c
3612
3613         * tests/Makefile.am: add markup-test
3614
3615         * gstring.h (g_string_new_len): new function to create a string
3616         with a length
3617         (g_string_new): avoid a gratuitous realloc
3618
3619 2000-10-26  Tor Lillqvist  <tml@iki.fi>
3620
3621         * makefile.{mingw,msc}.in: Cosmetics.
3622
3623 2000-10-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3624
3625         * gstrfuncs.c (g_strsplit): When the string is ended by a
3626         delimiter, return an extra empty string just like for a delimiter
3627         at the start of the string. This makes the function behave more
3628         consistent and also fixes Bug #15026.
3629
3630 Tue Oct 24 22:09:14 2000  Tim Janik  <timj@gtk.org>
3631
3632         * glib-object.h: added newly added gobject/ headers.
3633
3634         * gmesage.c: print g_message() output to stderr instead of stdout.
3635
3636 2000-10-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3637
3638         * configure.in: Use one = instead of two, which is plainly wrong.
3639
3640 2000-10-19  Tor Lillqvist  <tml@iki.fi>
3641
3642         * makefile.msc.in: Pass -DGSPAWN_HELPER when building it. Link
3643         with user32.lib.
3644
3645         * gspawn-win32.c
3646         * gfileutils.c: Make them compile with picky MSVC.
3647
3648         * gwin32.h: New file. Move Win32-only stuff that isn't related to
3649         GIOChannels here from giochannel.h.
3650
3651         * Makefile.am: Add it here.
3652
3653         * giochannel.h: Move stuff to gwin32.h.
3654
3655         * glib.h: On Win32, include gwin32.h.
3656
3657 Mon Sep 11 10:03:24 2000  Owen Taylor  <otaylor@redhat.com>
3658
3659         * glib.h convert.c (g_convert_with_fallback): Change
3660         ERROR_OTHER to ERROR_FAILED, add some dummy marking with _().
3661
3662         * docs/reference/glib/glib-sections.txt
3663         docs/reference/glib/glib-docs.sgml Update for g_convert,
3664         g_unicode_validate.
3665
3666 2000-10-16  Tor Lillqvist  <tml@iki.fi>
3667
3668         * glibconfig.h.win32.in: Remove alloca stuff from here. galloca.h
3669         takes care of it, correctly.
3670
3671         * giowin32.c (reader_thread): Some more debugging output.
3672         (g_io_channel_win32_poll): Remove unused vars.
3673
3674         * gfileutils.c: Changes for Win32, with no unistd.h and no
3675         S_ISLNK().
3676
3677         * gspawn-win32.c: Implementation of the g_spwan_* functions for
3678         Win32. Due to the general non-Unixness of Win32, much of the
3679         functionality that is relatively clean to implement on Unix, is
3680         hard to do on Win32. We must use a separate helper program to
3681         change directory, close extra file descriptors, redirect the std
3682         ones, as needed, and only then start the child process. No child
3683         process pid can be returned, unfortunately. Or if we used
3684         CreateProcess directly, it probably could. (Now we use the spawnv*
3685         functions from msvcrt.)
3686
3687         * Makefile.am (EXTRA_DIST): Add gspawn-win32.c
3688
3689         * glib.def: Add new entry points.
3690
3691         * glib.def
3692         * giowin32.c: Remove g_io_channel_win32_wait_for_condition(),
3693         g_io_channel_win32_poll() subsumes it.
3694
3695         * gbacktrace.h: G_BREAKPOINT for MSVC (on the ix86).
3696
3697         * gwin32.c (g_win32_getlocale): Use "sp" for
3698         LANG_CROATIAN+SUBLANG_SERBIAN_LATIN.
3699
3700         * makefile.{mingw,msc}.in (glib_OBJECTS): Add new files.
3701         Add gspawn-win32-helper.exe rule.
3702
3703         * tests/makefile.{mingw,msc}.in (TESTS): Add shell-test and
3704         spawn-test.
3705
3706         * tests/spawn-test.c: (run_tests): On Win32, don't try to run
3707         /bin/sh, but ipconfig (no special significance in choosing that,
3708         just a program that outputs something to stdout).
3709
3710 2000-10-15  Raja R Harinath  <harinath@cs.umn.edu>
3711
3712         Remove need for acconfig.h, and misc. cleanups.
3713         * acglib.m4 (GLIB_SIZEOF): Add 'autoheader' comment to
3714         AC_DEFINE_UNQUOTED.
3715         (GLIB_BYTE_CONTENTS): Likewise.
3716
3717         * configure.in: Add 'autoheader' comments to all AC_DEFINE(...)
3718         and AC_DEFINE_UNQUOTED(...) lines.
3719         Replace AC_MSG_CHECKING/AC_CACHE_VAL with AC_CACHE_CHECK.
3720         (AM_PROG_LIBTOOL): Move after AC_PROG_CC.
3721         
3722         * acconfig.h: Empty out.
3723
3724         * Makefile.am (BUILT_EXTRA_DIST): New variable.  List 'dist'able
3725         files that are created in the builddir.
3726         (dist-hook): Handle those files.
3727         (libglib_1_3_la_SOURCES): Remove @ALLOCA@.  @ALLOCA@ should only
3728         be used in an _LDADD or _LIBADD, since it expands (if necessary)
3729         to 'alloca.o'.
3730
3731         * tests/Makefile.am (BUILT_EXTRA_DIST): New variable.
3732         (dist-hook): Handle $(BUILT_EXTRA_DIST).
3733         
3734 2000-10-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3735
3736         * grand.c: Added inline documentation. 
3737
3738         * gtypes.h, gnode.h, gutils.h: Readded GFreeFunc,
3739         g_node_insert_after and g_find_program_in_path resp., which
3740         mysteriously disappeared during the glib.h dissection.
3741
3742 2000-10-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3743
3744         * glibconfig.h.win32.in: Adapted accordingly to header separation
3745         and GLIB_HAVE_ALLOCA_H renaming.
3746
3747         * Makefile.am: Added the new headers to glibinclude_HEADERS.
3748
3749         * glib.h: Forgot to include gerror.h.
3750
3751         * glib.h, galloca.h, garray.h, gasyncqueue.h, gbacktrace.h,
3752         gcache.h, gcompletion.h, gconvert.h, gdataset.h, gdate.h, ghash.h,
3753         ghook.h, giochannel.h, glist.h , gmacros.h, gmain.h, gmem.h,
3754         gmessages.h, gnode.h, gprimes.h, gquark.h, gqueue.h, grand.h,
3755         grel.h, gscanner.h, gslist.h, gstrfuncs.h, gstring.h, gthread.h,
3756         gthreadpool.h, gtimer.h, gtree.h, gtypes.h, gutils.h: Split glib.h
3757         into many header files mostly according to the resp. *.c-files.
3758         
3759         * gmacros.h: Added G_BEGIN_DECLS and G_END_DECLS to mean: 'in case
3760         of C++: extern "C" { ... }' analogous to glibc __BEGIN_DECLS and
3761         __END_DECLS.
3762
3763         * configure.in, gerror.h, gfileutils.h, gshell.h, gspawn.h,
3764         gunicode.h, : Changed guard-macro names to something more
3765         consistent.
3766
3767         * configure.in, *.h: Use G_BEGIN_DECLS and G_END_DECLS.
3768
3769         * configure.in: Defined GLIB_HAVE_ALLOCA_H instead of including
3770         alloca.h in glibconfig.h, GLIB_HAVE_ALLOCA_H is used in glib.h.
3771
3772         * configure.in: Removed cruft from old threading code.
3773
3774 2000-10-09  Raja R Harinath  <harinath@cs.umn.edu>
3775
3776         Work with beta autoconf 2.50.
3777         * configure.in (GLIB_MAJOR_VERSION): Use GLIB_DIVERT_BEFORE_HELP
3778         instead of AC_DIVERT_PUSH(),AC_DIVERT_POP.
3779         (AC_CHECK_HEADERS): Remove redundant AC_DEFINE(HAVE_...).
3780         (REALLOC_0_WORKS): Move AC_DEFINE outside AC_CACHE_VAL.
3781         (dlopen): Quote nested AC_CHECK_... calls.
3782
3783         * acglib.m4 (GLIB_TR_SH, GLIB_TR_CPP): Utility macros copied from
3784         beta autoconf 2.50.
3785         (GLIB_DIVERT_BEFORE_HELP): New macro that works both with autoconf
3786         2.13 and beta autoconf 2.50.
3787         (GLIB_SIZEOF, GLIB_BYTECONTENTS): Use GLIB_TR_*.
3788
3789         * Makefile.am (CONFIGURE_DEPENDENCIES): Use this to specify
3790         that 'configure' depends on acglib.m4.
3791
3792 2000-10-09  Havoc Pennington  <hp@redhat.com>
3793
3794         * Makefile.am, tests/Makefile.am: Add new files.
3795
3796         * tests/spawn-test.c, tests/shell-test.c: new tests for
3797         the shell/spawn stuff
3798
3799         * gutils.c (g_find_program_in_path): convert a relative
3800         program name into an absolute pathname to an existing 
3801         executable
3802
3803         * gspawn.h, gspawn.c: New fork/exec API
3804
3805         * gshell.h, gshell.c: Shell-related utilities, at the moment
3806         simply routines to parse argv and quote/unquote strings
3807
3808         * guniprop.c (g_unichar_isspace): Return TRUE for the 
3809         ASCII space characters isspace() returns TRUE for.
3810
3811         * gfileutils.c (g_file_get_contents): Convenience function 
3812         to slurp entire file into a string and return it. Partially
3813         written by Joel Becker.
3814         (g_file_test): file test function
3815
3816 2000-10-06  Tor Lillqvist  <tml@iki.fi>
3817
3818         * makefile.msc.in: Revamp to be like makefile.mingw.in, make
3819         the MSVC build actually work again.
3820
3821         * gmodule/makefile.msc.in
3822         * gobject/makefile.msc.in
3823         * gthread/makefile.msc.in: New files, like their mingw counterparts.
3824
3825         * gmodule/Makefile.am
3826         * gobject/Makefile.am
3827         * gthread/Makefile.am: Make and distribute them.
3828
3829         * */makefile.mingw.in: Allow override of GLib version number from
3830         the build/win32/module.defs file.
3831
3832         * glib.def: Add new entry point.
3833
3834         * tests/gio-test.c (main): Fix the Win32-only code to use current
3835         API, g_io_channel_win32_make_pollfd() and g_io_channel_win32_poll().
3836
3837         Fixes from Hans Breuer:
3838
3839         * glib.h (struct DIR): Keep the last readdir result cached inside
3840         the DIR struct, to enable several DIRs being open simultaneously.
3841
3842         * gwin32.c (g_win32_readdir): Use the above instead of static.
3843
3844         * giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
3845         MSVC happy.
3846
3847 2000-10-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3848
3849         * glib.h: Changed alloca stuff a bit: when we have a working
3850         alloca.h, we're not messing with alloca any further. Should fix a
3851         bug reported by Bernd Demian <wega@csc-dd.de>.
3852
3853 2000-09-29  Jonathan Blandford  <jrb@redhat.com>
3854
3855         * gnode.c (g_node_insert_after): Added function to keep symmetry
3856         with g_node_insert_before. 
3857
3858 2000-09-29  Martin Baulig  <baulig@suse.de>
3859
3860         Several minor ANSI C fixes.
3861
3862         Added missing casts:
3863         * gdate.c (g_date_fill_parse_tokens): `s = (guchar *) str'.
3864         * gmain.c (g_idle_dispatch): `func = (GSourceFunc) source_data'.
3865         (g_idle_add_full): `(gpointer) function' in call to g_source_add().
3866         * gstrfuncs.c (g_strdown): `s = (guchar *) string' and
3867         `return (gchar *) string'.
3868         (g_strup): Likewise.
3869         (g_strchug): `start = (guchar*) string' in 1st for() argument;
3870         `strlen ((gchar *) start)' in call to g_memmove().
3871         * gstring.c (g_string_down): `s = (guchar *) string->str'.
3872         (g_string_up): Likewise.
3873         * gthreadpool.c (stop_this_thread_marker):
3874         `(gpointer) &g_thread_pool_new'.
3875         * gunidecomp.h (decomp_table[]): Cast all the strings to
3876         `unsigned char *'.
3877
3878         Put text following #endif into comments:
3879         * gmain.c: here.
3880
3881 2000-09-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3882
3883         * configure.in, glib.h: Added errorcheck mutexes. These are
3884         activated through the preprocessor symbol
3885         G_ERRORCHECK_MUTEXES. Need to add an extra word to StaticMutex in
3886         order to achieve this. g_(static_)mutex_* functions instrument the
3887         mutex operations with mutex name and location, when compiled with
3888         -DG_ERRORCHECK_MUTEXES. g_thread_init activates the errorcheck
3889         mutexes, when compiled with -DG_ERRORCHECK_MUTEXES.
3890
3891 2000-09-28  Havoc Pennington  <hp@pobox.com>
3892
3893         * glib.h (GThreadPriority): fix indentation
3894         (GConvertError): generic error is conventionally called
3895         _FAILED rather than _OTHER, at least at the moment, 
3896         according to GError docs in docs/reference.
3897
3898         * gconvert.c: s/_OTHER/_FAILED/
3899
3900 2000-09-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3901
3902         * configure.in: Adjusted the test for an unimplemented
3903          getpwuid_r. Info from Michael Pruett. This is just a forward
3904          merge from glib-1-2.
3905
3906         * configure.in: Moved determination of G_THREAD_FLAGS before
3907         G_THREAD_LIBS. Check for UnixWare systems and set the right cflags
3908         and libs there (it needs -Kthread for the native compiler and
3909         -pthread for gcc). Thanks to Boyd Lynn Gerber <gerberb@zenez.com>
3910         for the info.
3911
3912         * configure.in: Fail immediately, when no thread library is found,
3913         instead of continuing searching for rt libs etc. Changed almost
3914         all occurances of $enable_threads to $have_threads, as that's,
3915         what we want.
3916
3917         * tests/threadpool-test.c: Define vars inside the guard to avoid
3918         warnings.
3919
3920         * configure.in, tests/type-test.c: Some platforms support 64 bit
3921         'long long', but you can not printf or scanf them. In that case,
3922         don't define G_G{UINT|INT}64_FORMAT. Changed the type-test program
3923         to reflect that.
3924
3925         * gutils.c (g_get_current_dir): max_len can't be initialized
3926         statically as it might call a function. So do it at first call.
3927
3928 Tue Sep 26 2000 Elliot Lee <sopwith@redhat.com>
3929
3930         * glib.h: Add G_GNUC_PURE macro (but don't use it anywhere).
3931
3932 Mon Sep 25 2000 Elliot Lee <sopwith@redhat.com>
3933
3934         * garray.c, glib.h, gmem.c: Add a few missing G_GNUC_CONST's.
3935
3936 2000-09-21  Tor Lillqvist  <tml@iki.fi>
3937
3938         * makefile.mingw.in: Add gconvert.o. Use libiconv.
3939
3940         * config.h.win32.in: Define HAVE_GETCWD.
3941
3942         * glib.def: Add new entry points.
3943
3944 2000-09-21  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3945
3946         * configure.in: The last released automake (1.4) still requires
3947         AM_PROG_LIBTOOL instead of AC_PROG_LIBTOOL, so use that for the
3948         time being.
3949
3950 2000-09-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3951
3952         * acconfig.h, configure.in, gutils.c: Test for the existence of
3953         getcwd, and use it only when found.
3954
3955         * glib.h: Only use the gcc-variable-macro-argument-extension for
3956         gcc >= 2.4. Both patches from Jonas Oberg <jonas@gnu.org>.
3957
3958 Mon Sep 18 10:58:21 2000  Owen Taylor  <otaylor@redhat.com>
3959
3960         * gutf8.c: Implement g_ucs4_to_utf8 which was in
3961         the header file but not implemented.
3962
3963 Sun Sep 17 2000 Elliot Lee <sopwith@redhat.com>
3964
3965         * glib.h configure.in: Define g_alloca() as an
3966         alloca-that-works-anywhere.
3967
3968         * gconvert.c: Fix warnings which could have caused problems on
3969         64-bit platforms.
3970
3971 Sun Sep 10 12:37:40 2000  Owen Taylor  <otaylor@redhat.com>
3972
3973         * glib.h gconvert.c (g_convert): Havoc Pennington's implementation 
3974         of convenient character set conversion using iconv, with
3975         the addition of GError. We probably need a fallback that
3976         just does conversions between, say UTF-8,16,32 and ISO-8859-1
3977         for targets without iconv at all.
3978
3979         Also add g_convert_with_fallback() to take care of conversions 
3980         where we accept some loss going to the target encoding.
3981
3982 2000-09-10  Havoc Pennington  <hp@redhat.com>
3983
3984         * gutf8.c (g_utf8_validate): Add this function.
3985
3986 Sat Sep  9 18:50:42 2000  Owen Taylor  <otaylor@redhat.com>
3987
3988         * gstrfuncs.c (g_strescape): Add a missing g_return_if_fail().
3989
3990 Mon Aug 21 03:57:46 2000  Tim Janik  <timj@gtk.org>
3991
3992         * glib.h (G_BREAKPOINT): for non-i386 and non-alpha, or non gcc,
3993         implement BREAKPOINT() as raise (5 /* SIGTRAP */);
3994
3995         * glib.h: provide user-definable switch G_IMPLEMENT_INLINES,
3996         to turn on compilation of inline function implementations provided
3997         in header files with extern linkage.
3998         wrap inline function implementations into ifdef __G_UTILS_C__, so we
3999         really only compile them for gutils.c and not also into arbitrary user
4000         code that wants to make use of G_IMPLEMENT_INLINES.
4001         adjusted comment apropriately.
4002
4003         * gutils.c: to turn on compilation of inline functions, provide
4004         #define G_IMPLEMENT_INLINES 1 and #define __G_UTILS_C__.
4005
4006 2000-09-06  Havoc Pennington  <hp@redhat.com>
4007
4008         * gerror.c: docs
4009
4010         * docs/reference/glib/tmpl/error_reporting.sgml: docs
4011
4012 Wed Sep  6 10:28:34 2000  Owen Taylor  <otaylor@redhat.com>
4013
4014         * guniprop.c gunicode.h gutf8.c: Some inline docs fixes.
4015
4016 2000-09-06  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4017
4018         * glib.h, gtimer.c, tests/thread-test.c:
4019         s/G_MICROSEC/G_USEC_PER_SEC/
4020
4021         * glib.h: Removed G_G{U}{SHORT|INT|LONG}_FORMAT from glib.h, as
4022         they are really superfluous.
4023
4024 Tue Sep  5 20:16:27 2000  Owen Taylor  <otaylor@redhat.com>
4025
4026         * configure.in docs/Makefile.am: Add gtk-doc checks
4027         for newly added docs/reference/ subdir.
4028
4029 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4030
4031         * gthread.c (g_thread_error_quark): Don't use a G_LOCK, as it
4032         isn't necessary.
4033
4034 2000-09-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4035
4036         * gstring.c (g_string_free): Use g_return_val_if_fail instead of
4037         g_return_if_fail, as the function now is supposed to return
4038         something.
4039
4040         * gerror.c, gerror.h (g_propagte_error): Added function
4041         g_propagte_error to hand over local errors to the calling
4042         function.
4043
4044         * glib.h: Include gerror.h before it is used for some g_thread_*
4045         functions.
4046
4047         * gthread.c, gthreadpool.c, glib.h: Enable error reporting for
4048         thread creation, namely for g_thread_create, g_thread_pool_new,
4049         g_thread_pool_push and g_thread_pool_set_max_threads.
4050
4051         * tests/thread-test.c, tests/threadpool-test.c: Adapted
4052         accordingly.
4053
4054 2000-08-31  Tor Lillqvist  <tml@iki.fi>
4055
4056         * glib.h
4057         * glib.def
4058         * giowin32.c (g_io_channel_win32_make_pollfd): New function, to
4059         make a GPollFD from a GIOChannel. Creates the events and starts
4060         the reader thread if necessary.
4061
4062         * glib.h
4063         * giowin32.c (g_io_channel_win32_poll): No use for separate
4064         condition parameter.
4065
4066         * gmain.c (g_get_current_time): (Win32): Simplify, use
4067         GetSystemTimeAsFileTime().
4068
4069 2000-08-27  Tor Lillqvist  <tml@iki.fi>
4070
4071         * giowin32.c (g_io_channel_win32_poll): New function, otherwise
4072         like g_io_channel_win32_wait_for_condition(), but accept several
4073         GPollFDs.
4074         (g_io_channel_win32_wait_for_condition): Call
4075         g_io_channel_win32_poll().
4076
4077         * glib.h: Declare g_io_channel_win32_poll().
4078
4079         * gwin32.c (g_win32_error_message): Don't believe return value
4080         from FormatMessage.
4081
4082 2000-08-25 Elliot Lee <sopwith@redhat.com>
4083
4084         * glib.h, gunicode.h, gmodule/gmodule.h:
4085         Mark the following functions G_GNUC_CONST (to allow optimization)
4086         because their results are a function of only their parameters: 
4087         g_int_hash, g_int_equal, g_direct_hash, g_direct_equal,
4088         g_quark_to_string, g_date_is_leap_year, g_date_days_in_month,
4089         g_date_monday_weeks_in_year, g_date_sunday_weeks_in_year,
4090         g_spaced_primes_closest, g_unichar_is*, g_unichar_to*,
4091         g_unichar_*digit_value, g_unichar_type
4092
4093 2000-08-21 Elliot Lee <sopwith@redhat.com>
4094
4095         * gobject/Makefile.am, gobject/gobject-query.c,
4096         gobject/gparamspecs.c: Fix inclusion of config.h
4097
4098 Mon Aug 21 14:46:23 2000  Owen Taylor  <otaylor@redhat.com>
4099
4100         * tests/gio-test.c: Fix a couple of trivial bugs that
4101         were causing warnings.
4102
4103 Mon Aug 21 14:39:36 2000  Owen Taylor  <otaylor@redhat.com>
4104
4105         * glib.h: Use C99 varargs macros where possible 
4106         (check __STDC_VERSION__), otherwise, on gcc, use an alternate 
4107         form of gcc varargs which is more likely
4108         to be supported going forward. (Based on some code
4109         from Raja Harinath)
4110
4111 2000-08-17  Darin Adler  <darin@eazel.com>
4112
4113         * glib.h:
4114         * garray.c: (g_array_free), (g_ptr_array_free),
4115         (g_byte_array_free): Return the data left behind.
4116         * gstring.c: (g_string_free): Return the data left behind.
4117
4118         Changed the free calls that leave data behind so they
4119         return a pointer to the left-behind data, NULL if told not
4120         to leave anything behind. This makes these calls easier
4121         to use correctly, without any incompatible API change for
4122         callers that don't know about the return value. Of course,
4123         it would be even clearer if the free calls weren't dual-purpose
4124         in the first place.
4125
4126 2000-08-12  Tor Lillqvist  <tml@iki.fi>
4127
4128         * giowin32.c: Some indentation and spacing fixes. Add some more
4129         logging.
4130         (g_io_win32_add_watch): New function, with common code from
4131         g_io_win32_fd_add_watch and g_io_win32_sock_add_watch. Don't start
4132         more than one reader thread for a GIOChannel. We should obviously
4133         have just one reader thread reading a file descriptor or socket.
4134
4135 2000-08-10  Havoc Pennington  <hp@redhat.com>
4136
4137         * gthread-2.0.pc.in (Cflags): don't duplicate glib Cflags
4138
4139         * gmodule-2.0.pc.in (Cflags): don't duplicate glib Cflags
4140
4141         * gobject-2.0.pc.in (Cflags): don't duplicate Cflags from glib
4142         itself
4143
4144 2000-08-10  Havoc Pennington  <hp@redhat.com>
4145
4146         * glib-2.0.pc.in (Cflags): Look in glib-2.0/include for
4147         glibconfig.h
4148
4149 2000-08-07  Tor Lillqvist  <tml@iki.fi>
4150
4151         * tests/gio-test.c (shutdown_source): New function, that calls
4152         g_source_remove(). Check return value of g_source_remove(), and
4153         decrement running subprocess counter only if g_source_remove()
4154         actually did remove the source.
4155
4156         (recv_message): Call shutdown_source() on EOF condition. Return
4157         FALSE on G_IO_HUP and G_IO_ERR condition. Fix printf format typo.
4158
4159 Sun Aug  6 20:06:02 2000  Tim Janik  <timj@gtk.org>
4160
4161         * gmessages.c (g_log_domain_check_free): keep *last updated while
4162         running through the domain list, so we don't screw up the removal,
4163         patch provided by Gady Kozma <gadykozma@hotmail.com>.
4164
4165 Sun Aug  6 20:03:41 2000  Tim Janik  <timj@gtk.org>
4166
4167         * gmessages.c (g_log_remove_handler): keep *last updated while running
4168         through the handler list, so we don't screw up the removal.
4169
4170 Sun Jul 30 16:54:13 2000  Owen Taylor  <otaylor@redhat.com>
4171
4172         * gunicode.h: Fix stray character
4173
4174         * gutf8.c (g_unichar_to_utf8): Allow outbuf to be NULL, in
4175         which case we just compute the length.
4176
4177 2000-07-31  Havoc Pennington  <hp@redhat.com>
4178
4179         * Makefile.am (EXTRA_DIST): forgot to add .pc.in to EXTRA_DIST
4180
4181 2000-07-31  Havoc Pennington  <hp@redhat.com>
4182
4183         * glib-2.0.pc.in, gobject-2.0.pc.in, gmodule-2.0.pc.in,
4184         gobject-2.0.pc.in: pkg-config data files         
4185
4186         * Makefile.am: Install/dist the .pc files
4187
4188         * configure.in: Output the .pc files
4189
4190 2000-07-31  Tor Lillqvist  <tml@iki.fi>
4191
4192         * giowin32.c (buffer_read): The code didn't compile (must
4193         have been sleepy when committing). "return" instead of "break"
4194
4195         (g_io_win32_fd_add_watch): Cannot check if the file descriptor is
4196         readable by calling ReadFile to read zero bytes. ReadFile blocks
4197         on NT even if trying to read nothing at all. So, don't check if
4198         file descriptor is readable; assume this function isn't called
4199         otherwise.
4200
4201 Sun Jul 30 10:44:16 2000  Tim Janik  <timj@gtk.org>
4202
4203         * gmain.c (g_get_current_time): fix tor's recent changes which
4204         got rid of a required variable in the non-windows path.
4205
4206 2000-07-30  Tor Lillqvist  <tml@iki.fi>
4207
4208         Finally, a new and improved IO Channel and condition watch
4209         implementation for Win32. Based on code provided by Craig Setera.
4210
4211         When watching file descriptors, for which there is no select()
4212         like functionality on Win32 that would work on all Win32 platforms
4213         for all types of file descriptors (including anonymous pipes), we
4214         start a new thread that blocks while trying to read from the file
4215         descriptor. When the read returns, a Win32 Event is signalled that
4216         the polling routine eventually notices. Meanwhile, the data being
4217         read is stored in a circular buffer, from where the IO channel's
4218         read() method picks it up.
4219
4220         If the buffer fills up the reading thread has to wait for space
4221         becoming available. For this another Win32 Event is used. The IO
4222         Channel's read() method signals this when it has read some data
4223         out of the buffer.
4224
4225         The separate reader thread(s), and the circular buffer(s) with
4226         associated events mean lots of possibilities for fun parallelism
4227         errors. But it seems to work OK, i.e. GIMP runs.
4228
4229         * gmain.c: Small changes to the Win32 polling function.
4230         (g_main_win32_get_poll_func): New function. Perhaps it would be a
4231         good idea to provide this on all platforms.
4232
4233         * giowin32.c: The bulk of the new implementation.
4234         (g_io_channel_win32_wait_for_condition): New function. To be used
4235         where on Unix one does a select() on the channel's fd, like
4236         libgimp's gimp_extension_process(). Could be provided on all
4237         platforms.
4238
4239         * glib.h: Update documentation for IO Channels on Win32. Remove
4240         the declarations for the as of now obsolete old functions related
4241         to IO Channels for pipes with "wakeup" messages.
4242
4243         * glib.def: Some new functions.
4244
4245         * tests/gio-test.c: New file, to test GIOChannel and main loop.
4246
4247         * tests/Makefile.am
4248         * tests/makefile.mingw.in: Add it.
4249
4250         (Later the same night:)
4251
4252         * giowin32.c: Compile in the debugging code all the time, but only
4253         output debug messages if told so. Add (unadvertised) function to
4254         turn on/off debug messages for a channel.
4255
4256         (buffer_read): Don't loop. It is expected behaviour to return a
4257         short read occasionally, for instance when reading from
4258         pipes. It's the calling code that should loop if it *knows* how
4259         much the writer has written.
4260
4261         * tests/gio-test.c: Correct the program's name in the output.
4262         (recv_message): Loop calling g_io_channel_read() (in a new
4263         function read_all()) until we have all the bytes we want (that we
4264         know the writer has written/will write).
4265
4266 Thu Jul 27 05:15:11 2000  Tim Janik  <timj@gtk.org>
4267
4268         * gstrfuncs.c (g_strlcpy, g_strlcat): completed tor's fix
4269         to cover both #ifdef branches.
4270
4271 2000-07-26  Tor Lillqvist  <tml@iki.fi>
4272
4273         * gstrfuncs.c (g_strlcpy, g_strlcat): Return 0 on error, not NULL.
4274
4275         * glib.def: Add g_strlcpy, g_strlcat.
4276
4277         * glibconfig.h.win32.in: Add gsize and gssize.
4278
4279 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
4280
4281         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
4282         updates the license headers to the GNU Lesser General Public License,
4283         as well as updating the copyright year to 2000.
4284
4285 Wed Jul 26 05:47:48 2000  Tim Janik  <timj@gtk.org>
4286
4287         * configure.in:
4288         * testglib.c:
4289         * gstrfuncs.c:
4290         * glib.h: added g_strlcat() and g_strlcpy() wrappers, supplied by
4291         David Wheeler <dwheeler@ida.org>:
4292
4293         * glib.h, gstrfuncs.c: added g_strlcpy and g_strlcat to support
4294           safe manipulation of fixed-length string buffers.
4295           These functions were originally developed by Todd Miller to simplify
4296           development of security-related programs, and
4297           are available on many (but not all) Unix-like systems,
4298           including OpenBSD, FreeBSD, and Solaris.  See
4299           ftp://ftp.openbsd.org/pub/OpenBSD/src/lib/libc/string/strlcpy.3
4300           and http://www.openbsd.org/security.html.
4301           If there's a strlcpy/strlcat on the system, it's called, otherwise
4302           an implementation is provided.
4303
4304         * testglib.c: Added tests for g_strlcpy, g_strlcat.
4305
4306 Wed Jul 26 05:03:24 2000  Tim Janik  <timj@gtk.org>
4307
4308         * acglib.m4 (GLIB_SIZEOF): include <stdlib.h> and <stddef.h> if
4309         STDC_HEADERS is defined.
4310
4311         * glib.h:
4312         * glibconfig.h: define gsize and gssize in terms of GLIB_SIZEOF_SIZE_T
4313
4314         * glib.h (g_return_if_reached): applied darin's fix for copy'n
4315         paste error in the macro implementation.
4316
4317 Wed Jul 26 00:46:03 2000  Tim Janik  <timj@gtk.org>
4318
4319         * glib.h: applied patch from Darin Adler <darin@eazel.com> which
4320         supplies g_return_if_reached(), g_return_val_if_reached() and
4321         g_critical().
4322
4323 2000-07-22  Tor Lillqvist  <tml@iki.fi>
4324
4325         * build-dll: Fix resource handling, the resource file got left out
4326         from the DLL after all... Remove the WIN32APIHEADERS, not needed
4327         with current windres.
4328
4329         * glib.def: Add new functions.
4330
4331 2000-07-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4332
4333         * gutils.c, glib.h: Mark the functions g_basename and g_dirname
4334         deprecated. They will issue an warning once, when compiled with
4335         G_ENABLE_DEBUG, but continue to work as before. Instead the
4336         functions g_path_get_basename and g_path_get_dirname should be
4337         used, which BOTH return newly allocated memory, that has to freed
4338         by g_free. The new g_path_get_basename now strips trailing slashes
4339         from the path. This fixes #5097. For discussion see
4340         http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
4341
4342         * gwin32.c, testglib.c, tests/dirname-test.c: Use the new
4343         functions instead of the old ones.
4344
4345         * ghash.c, gscanner.c, glib.h: Mark the functions
4346         g_hash_table_freeze, g_hash_table_thaw and thus
4347         g_scanner_freeze_symbol_table and g_scanner_thaw_symbol_table
4348         deprecated. They will issue an warning once, when compiled with
4349         G_ENABLE_DEBUG. This fixes Bug #3883. For discussion see
4350         http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
4351
4352 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4353
4354         * configure.in, glib.h: glibconfig.h and glib.h now include files
4355         outside of the extern "C" block. Makes some C++ compiler
4356         happy. Reported by Denis Vakatov <vakatov@peony.nlm.nih.gov>.
4357
4358 Sat Jul 15 23:49:03 2000  Owen Taylor  <otaylor@redhat.com>
4359
4360         * glib/glib.texi: Remove incomplete start of info file -
4361         real docs are in RDP.   
4362
4363 Sat Jul 15 22:44:22 2000  Owen Taylor  <otaylor@redhat.com>
4364
4365         * configure.in: Add build/Makefile and 
4366         build/win32/Makefile to AC_OUTPUT() so things build
4367         again.
4368
4369 Sat Jul 15 09:11:46 2000  Tim Janik  <timj@gtk.org>
4370
4371         * gstrfuncs.c (g_strncasecmp): fixed an off by 0 error (yeah,
4372         the function went off when the while (n--) loop failed due to
4373         n==0 ;), reported by Jean-Louis HAMEL <jlhamel@club-internet.fr>.
4374
4375 2000-07-15  Tor Lillqvist  <tml@iki.fi>
4376
4377         * Makefile.am (SUBDIRS): Include the "build" module in GLib, too,
4378         to make it more self-contained. If your CVS client doesn't
4379         automatically get it, do a cvs get build in glib.
4380
4381         * */makefile.mingw.in: Include make.mingw from build in the glib
4382         source directory.
4383
4384 Fri Jul 14 16:26:35 2000  Owen Taylor  <otaylor@redhat.com>
4385
4386         * Release 1.3.1
4387
4388 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
4389
4390         * configure.in Makefile.am glib-config.m4 glib.m4: Move
4391         glib-config to glib-config-2.0 move glib.m4 to
4392         glib-2.0.m4
4393
4394         * Makefile.am gobject/Makefile.am gmodule/Makefile.am
4395         gthread/Makefile.am tests/Makefile.am: Change 
4396         library names to libglib-1.3.la, etc, so that we
4397         can distinguish glib-1.2 and glib-2.0 on the linkline.
4398
4399         * Makefile.am gobject/Makefile.am gmodule/Makefile.am:
4400         Move include files into /usr/include/glib-2.0.
4401
4402 Thu Jul  6 18:54:49 2000  Owen Taylor  <otaylor@redhat.com>
4403
4404         * docs/Makefile.am (EXTRA_DIST): Remove info files
4405         from the build.
4406
4407 2000-07-14  Tor Lillqvist  <tml@iki.fi>
4408
4409         * glib.def: Add g_error functions.
4410
4411         * makefile.mingw.in: Add gbacktrace.o.
4412
4413         * gbacktrace.c: No need to include <process.h>.
4414
4415 2000-07-12  Havoc Pennington  <hp@redhat.com>
4416
4417         * glib.h: #include <gerror.h>
4418
4419         * Makefile.am (include_HEADERS): Add gerror.h
4420         (libglib_la_SOURCES): Add gbacktrace.c
4421
4422         * gbacktrace.c: Move g_on_error_query() in here (moved on the 
4423         server, so history is preserved)
4424
4425         * gerror.h: GError interface
4426
4427         * gerror.c: GError implementation replaces stuff that's now in 
4428         gbacktrace.c
4429
4430 Sun Jul  9 21:20:45 2000  Owen Taylor  <otaylor@redhat.com>
4431
4432         * gunicode.h: Include stddef.h instead of stdlib.h
4433
4434 2000-07-08  Tor Lillqvist  <tml@iki.fi>
4435
4436         * glib.h (GLIB_VAR): Rename the GUTILS_C_VAR macro to GLIB_VAR.
4437
4438         * gunicode.h: Mark the g_utf8_skip array with GLIB_VAR.
4439
4440         * glib.def: Add two missing entry points.
4441
4442 Thu Jul  6 15:35:28 2000  Owen Taylor  <otaylor@redhat.com>
4443
4444         * Release 1.3.1
4445
4446         * Makefile.am (EXTRA_DIST): Dist fixes.
4447
4448         * configure.in: Moderate the warnings just a little bit.
4449
4450 2000-07-05  Tor Lillqvist  <tml@iki.fi>
4451
4452         * README.win32: Update.
4453
4454 Mon Jul  3 17:58:02 2000  Owen Taylor  <otaylor@redhat.com>
4455
4456         * gutf8.c (g_utf8_get_charset_internal): Fix up
4457         to correspond to configure.in checks.
4458
4459 Mon Jul  3 17:18:19 2000  Owen Taylor  <otaylor@redhat.com>
4460
4461         * glib.h: Comment g_get_codeset() out of the header file
4462         temporarily. (Very similar to g_get_charset(), need
4463         to resolve the two.)
4464
4465 2000-07-01  Tor Lillqvist  <tml@iki.fi>
4466
4467         * glib.def: Add new entry points.
4468
4469         * makefile.{mingw,msc}.in: Add the new Unicode object files.
4470
4471 Thu Jun 29 15:57:28 2000  Owen Taylor  <otaylor@redhat.com>
4472
4473         * NEWS: updated
4474
4475         * Makefile.am: added snapcheck target to go along with snapshot
4476
4477         * gstring.c glib.h (g_string_hash): Add g_string_hash to 
4478         go along with g_string_equal.
4479
4480 Tue Jun 27 12:40:23 EDT 2000  David A. Wheeler <dwheeler@dwheeler.com>
4481
4482         * glib.h: Added g_string_equal for comparing GStrings;
4483         changed g_str_equal so it returns gboolean (instead of gint).
4484
4485         * gstring.c: Modified GString implementation to support embedded
4486         ASCII NUL ('\0') characters, and implemented g_string_equal.
4487
4488         * testglib.c tests/string-test.c: Added tests for g_string_equal
4489         and tests for proper handling of embedded ASCII NUL characters.
4490
4491 Wed Jun 28 22:52:00 2000  Owen Taylor  <otaylor@redhat.com>
4492
4493         * Makefile.am (libglib_la_SOURCES): Fix
4494         gunichartable.h => gunichartables.h. (From Eric Limings)
4495
4496 Fri Jun 23 17:20:26 2000  Tim Janik  <timj@gtk.org>
4497
4498         * glib.h: define gstring in terms of gchar*. this typedef reflects
4499         the type name of the primitive G_TYPE_STRING in the gobject module.
4500
4501 Wed Jun 21 12:09:03 2000  Owen Taylor  <otaylor@redhat.com>
4502
4503         * gunicode.h gutf8.c guniprop.c gunidecomp.[ch] gunichartables.h
4504         Makefile.am glib.h: Initial pass at adding unicode support
4505         functions. A few things still need to be implemented, a bit
4506         of cleanup needs to be done, tests need to be added, and 
4507         the docs need to be finished, but this should allow replacing
4508         most or all use of libunicode.
4509
4510 2000-06-06  Tor Lillqvist  <tml@iki.fi>
4511
4512         * giowin32.c (g_io_channel_win32_pipe_readable): If we are
4513         watching the same pipe for different conditions (with different
4514         callbacks), check them all. Only call the callback for G_IO_IN
4515         from here. (This bug popped up when a watch for G_IO_ERR|G_IO_HUP
4516         was added to gimplib.)
4517
4518 2000-05-30  Tor Lillqvist  <tml@iki.fi>
4519
4520         * gutils.c (g_locale_get_codeset): Implement on Win32.
4521
4522         * glib.def: Add g_get_codeset.
4523
4524         * tests/Makefile.am (EXTRA_DIST): makefile.cygwin* has been
4525         renamed to makefile.mingw*.
4526
4527 Tue May 30 16:01:32 2000  Owen Taylor  <otaylor@redhat.com>
4528
4529         * glib.h gutils.c: Move the g_locale_get_codeset() up in the 
4530         header file to correspond to to comments about memory
4531         management. Rename to g_get_codeset() to avoid 
4532         polluting the g_locale_* namespace, which probably
4533         would have g_locale_get_codeset (GLocale *locale).
4534         Add a doc comment.
4535
4536 Mon May 29 14:10:35 2000  Owen Taylor  <otaylor@redhat.com>
4537
4538         * gutils.c (g_locale_get_codeset): Add function to get the 
4539         codeset name for the current locale.
4540
4541         * configure.in acconfig.h: Add check for nl_langinfo(CODESET);
4542
4543 Fri May 19 11:39:29 2000  Tim Janik  <timj@gtk.org>
4544
4545         * gutils.c (g_snprintf):
4546         (g_vsnprintf): added argument assertments.
4547
4548         * gstring.c (g_string_assign): added argument assertments.
4549         (g_string_truncate): make len a guint.
4550
4551 Fri May 19 09:00:44 2000  Tim Janik  <timj@gtk.org>
4552
4553         * gmem.c (g_free): fixed SIZEOF_LONG==4 assumption with
4554         ENABLE_MEM_CHECK, from Art Haas <ahaas@neosoft.com>.
4555
4556         * gslist.c (g_slist_reverse): shut up compiler.
4557
4558         * gscanner.c (g_scanner_get_token_ll): removed inline assignment.
4559
4560         * garray.c: remove index>=0 checks for unsigned indices.
4561
4562         * gmain.c (g_idle_prepare): timeout assignment fix.
4563
4564         * gtree.c (g_tree_node_rotate_right): shut up compiler.
4565
4566 2000-05-13  Tor Lillqvist  <tml@iki.fi>
4567
4568         * makefile.mingw.in
4569         * tests/makefile.mingw.in
4570         * build-dll: Rename makefile.cygwin(.in) to
4571         makefile.mingw(.in), which better describes what it is. Move the
4572         build of gmodule, gthread and gobject DLLs to makefiles in those
4573         directories. Move resource file handling and build number bump to
4574         build-dll, where it sits much cleaner.
4575
4576         * README.win32
4577         * Makefile.am (EXTRA_DIST): Update accordingly.
4578
4579         * glib.h: Add G_PI, G_PI_2, G_PI_4, G_E, G_LN2, G_LN10 and
4580         G_SQRT2. M_PI etc aren't necessarily in <math.h> in strict ISO C
4581         implementations.
4582
4583         * glib.def: Add g_strcanon.
4584
4585         * gtree.c (g_tree_node_rotate_left): Remove unused variables.
4586
4587         * gwin32.c (g_win32_opendir): Remove unneeded statement.
4588
4589 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
4590
4591         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
4592         broken and require an empty arg, give it to them.
4593
4594 Fri Apr 28 23:54:35 2000  Tim Janik  <timj@gtk.org>
4595
4596         * setup things for a new sub-library libgobject:
4597
4598         * Makefile.am (SUBDIRS): added gobject
4599
4600         * glib-config.in: feature -lgobject.
4601
4602         * configure.in (AC_OUTPUT): generate gobject/Makefile.
4603
4604         * glib.m4 (AM_PATH_GLIB): feature gobject module.
4605
4606         * glib.spec.in: added %{prefix}/lib/libgobject-1.3.so.*
4607
4608 Fri Apr 28 21:41:49 2000  Tim Janik  <timj@gtk.org>
4609
4610         * glib.h: added G_STRLOC macro.
4611         G_STRUCT_OFFSET(): signedness corrections.
4612         (G_CSET_DIGITS): list 0-9.
4613         * gscanner.c (g_scanner_config_template): use G_CSET_DIGITS.
4614
4615         * glib.h: 
4616         * gstrfuncs.c:
4617         (g_strdown):
4618         (g_strup):
4619         (g_strreverse): return the modified string instead of void, so
4620         calls to these functions can be nested.
4621         (g_strcanon): new function, canonicalizes string according to
4622         a given character set.
4623
4624 Fri Apr 28 19:45:16 2000  Tim Janik  <timj@gtk.org>
4625
4626         * gasyncqueue.c (g_async_queue_unref): get rid of an unused variable.
4627
4628 Wed May 10 19:52:44 2000  Owen Taylor  <otaylor@redhat.com>
4629
4630         * glib.m4: Print found version when test succeeds.
4631
4632 2000-05-04  Tor Lillqvist  <tml@iki.fi>
4633
4634         * makefile.cygwin.in
4635         * tests/makefile.cygwin.in: Include the common makefile snippet
4636         from ../build/win32.
4637
4638         Maybe CVSROOT/modules should be changed so that the 'build' module
4639         is included within the glib module (and gtk+, and gimp, and maybe
4640         others later), in the same way as the 'macros' module is included
4641         in lots of GNOME CVS modules?
4642
4643 2000-05-02  Tor Lillqvist  <tml@iki.fi>
4644
4645         * glib.def: Add new functions.
4646
4647         * makefile.{cygwin,msc}.in (glib_OBJECTS): Add new object files.
4648
4649         * tests/makefile.{cygwin,msc}.in: Add threadpool-test.
4650
4651 2000-04-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4652
4653         * gasyncqueue.c: New File implementing an asynchronous queue to be
4654         used for asynchronous inter-thread communication.
4655
4656         * gthreadpool.c: New File implementing a thread pool to be used
4657         for distributing work among several threads. 
4658
4659         * glib.h: Added the type and function declarations for these two
4660         types.
4661
4662         * tests/threadpool-test.c: New File implementing a test for the
4663         thread pool. This also checks the asynchronous queue underlying
4664         the thread pool.
4665
4666         * tests/Makefile.am: Changed accordingly.
4667
4668 2000-04-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4669
4670         * configure.in: Look for both pthread_create and pthread_join in
4671         the thread library. Some systems define one of them, but not both
4672         in libc. Arghh. Now we really start a thread and join it later and
4673         check, whether the thread to actually ran.
4674
4675         * glib.h, gcache.c, gtree.c: Changed the 'value' parameter of
4676         g_cache_remove from gpointer to gconstpointer. Dito for the 'key'
4677         parameter of g_tree_lookup and g_tree_remove and the 'data'
4678         parameter of g_tree_search. This function now takes a function of
4679         type GCompareFunc instead of GSearchFunc. This fixes Bug
4680         #8267. Thanks to Juan Toledo <toledo@users.sourceforge.net> for
4681         pointing that out.
4682
4683         * glib.h: Removed declaration of GSearchFunc.
4684
4685         * gmem.c: s/GSearchFunc/GCompareFunc/.
4686
4687 2000-04-19  Tor Lillqvist  <tml@iki.fi>
4688
4689         * glib.def: Update entry point list.
4690
4691 2000-04-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4692
4693         * glib.h (G_TRYLOCK): Made the debugging G_TRYLOCK call also work
4694         for compilers with funny G_STMT_(START|END) macros.
4695
4696         * tests/thread-test.c: Implemented a check for that.
4697
4698         * gutils.c (g_getenv): Changed the win32 part of this function to
4699         be thread safe and to make the returned environment string
4700         persistent to match the UN*X behavior. This is again a response to
4701         Bug #8983.
4702
4703         * glib.h (G_LOCK_NAME): Removed parentheses around the lock name,
4704         as that seems to cause problems for some compilers and really
4705         isn't necessary.
4706
4707 Wed Apr 19 08:32:32 2000  Tim Janik  <timj@gtk.org>
4708
4709         * gscanner.c (g_scanner_new): make sure that
4710         scanner->config->cset_skip_characters is "" instead of NULL, so we
4711         don't segfault further on.
4712
4713 2000-04-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4714
4715         * glib.h, glist.h, gslist.h: Changed the 'data' parameters from
4716         gpointer to gconstpointer for the functions
4717         g_(list|slist)_(remove|find|find_custom|index), as they do not
4718         change this parameter. This fixes bug #4836.
4719
4720         * glib.h: Changed comment for g_getenv to reflect, that the
4721         returned memory must not be freed. Fixes bug #8983.
4722
4723 2000-04-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4724
4725         * configure.in, acconfig.h: Add configure test for garbage
4726         collector friendliness for GLib. If enabled, ENABLE_GC_FRIENDLY
4727         will be defined.
4728
4729         * garray.c, ghash.c, glist.c, gmain.c, gmem.c, gnode.c, gqueue.c,
4730         gslist.c, gtree.c: If ENABLE_GC_FRIENDLY is defined, NULLify all
4731         memory released by the user, but cached by GLib. This lets a
4732         garbage collector have a more correct view of the actually used
4733         memory.
4734
4735         * garray.c, glib.h: Added g_(array|ptr_array|byte_array)_sized_new
4736         functions, that reserve a certain amount of memeory for the array
4737         at creation time to avoid reallocation. Fixes bug #6707 from
4738         Charles Kerr <ckerr@osserver1.nssl.noaa.gov>.
4739
4740         * glib.h, gqueue.c, tests/queue-test.c (main): Renamed
4741         g_queue_create to g_queue_new in conformance to all other GLib
4742         data types.
4743
4744 2000-04-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4745
4746         * grand.c (g_rand_new): Fixed bug. Thanks to Marko Kreen
4747         <marko@l-t.ee> for reporting that.
4748
4749 2000-03-26  Tor Lillqvist  <tml@iki.fi>
4750
4751         * README.win32: Tell about using the mingw-based gcc, which is
4752         much easier than modifying the cygwin gcc to product mingw code
4753         for the msvcrt runtime.
4754
4755         * makefile.cygwin.in (WIN32APIHEADERS): Kludge to make it work
4756         with a "pure" mingw gcc, too.
4757
4758 2000-03-24  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4759
4760         * garray.c: Made GArray behave correctly. Now zero_terminated
4761         really means, that the element array->data[array->len] exists and
4762         is zeroed, and clear means that any unassigned elements obtained
4763         through g_array_set_size (the only way to get unassigned elements
4764         AFAICT) are zeroed. Added some macros to make the code more
4765         obvoius. Also made GPtrArray zero elements after
4766         g_ptr_array_set_size. This is done in a portbale way (assignment
4767         of NULL instead of just memsetting it to zero), though that might
4768         be more portability than we actually want.
4769
4770         * Makefile.am, gthread/Makefile.am, gmodule/Makefile.am,
4771         tests/Makefile.am: Added various win32 related *.in files to
4772         EXTRA_DIST to let 'make distcheck' procude all the corresponding
4773         files, which it silently fails to do currently.
4774
4775 2000-03-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4776
4777         * configure.in: After finding the right thread library (containing
4778         e.g. pthread_create) we now search for the right realtime library
4779         (containing e.g. sched_get_priority_max). Makes the output of the
4780         thread related libraries correct. 
4781
4782         * gtimer.c (g_usleep): The current implementation of g_usleep
4783         (simply calling select) doesn't work reliable for multi-threaded
4784         programs on some platforms (bad omen for the main loop....), so I
4785         changed the implementation for thread-using programs to wait for a
4786         GCond for the specified amount of time (NB: sleep and usleep are
4787         not MT-safe in general, because they often use signals).
4788
4789 Wed Mar 22 16:49:57 2000  Owen Taylor  <otaylor@redhat.com>
4790
4791         * gmem.c (g_mem_chunk_area_compare): Fix indentation.
4792
4793 2000-03-22 Elliot Lee <sopwith@redhat.com>
4794
4795         * gmem.c (g_mem_chunk_area_compare): Fix 64-bitness bug in
4796         comparing two pointers more than 4G apart.
4797
4798 2000-03-22  Tor Lillqvist  <tml@iki.fi>
4799
4800         * gutils.c: Move Win32-only includes after inclusion of glib.h, so
4801         that G_OS_WIN32 is defined.
4802
4803         * glibconfig.h.win32.in: Add GSystemThread.
4804
4805 2000-03-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4806
4807         * gutils.c (g_get_current_dir): Ok, Marcus Brinkmann
4808         <Marcus.Brinkmann@ruhr-uni-bochum.de> convinced me, that 128 KB
4809         path length might not be enough for the HURD. So I changed the
4810         loop to at least avoid an integer overflow, which could happen at
4811         beyond 2GB size ;-)
4812
4813         * configure.in: Test for sched_yield as the native yield function
4814         first. Corrected typo g_thread_sleep -> g_usleep. Corrected
4815         message for the pthread_create test. Negative Priorities are
4816         allowed (and used on Solaris), so consider
4817         sched_get_priority_min failed only if it returns -1, not <0. Check
4818         for sched_get_priority_min also in -lrt, if not found in -lpthread
4819         alone and add -lrt to G_THREAD_LIBS then. Remove special case
4820         handling of priorities for older solaris versions and posix
4821         threads. Thanks to Wan-Teh Chang <wtc@netscape.com> for suggesting
4822         some of those changes.
4823
4824         * config.guess, config.sub, ltconfig, ltmain.sh:
4825         Upgrade to libtool 1.3.4.
4826
4827 2000-03-21  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4828
4829         * glib.h, configure.in, gutils.h: always define G_GNUC_EXTENSION,
4830         even when not needed by GLib. That's actually also the way, the
4831         GLib reference manual describes that macro. Therefore I had to
4832         remove the lonesome #include <glibconfig.h> in gutils.c, which
4833         doesn't seem to be needed there however. This change should make
4834         Ben Gertzfield <che@debian.org> happy.
4835
4836         * gutils.c: Furthermore two warnings in gutils.c were voided,
4837         which crept in due to my last change.
4838
4839         * gutils.c (g_get_current_dir): Allocate only up to 128KB for a
4840         pathname. While this is an arbitrary value just like 2048, it
4841         seems to be enough (after all, even 4GB is an arbitrary value).
4842
4843 2000-03-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4844
4845         * gmain.c (g_main_poll): Warn in case of an error during the call
4846         to poll(2). Closes Bug#7564 as reported by David Helder
4847         <dhelder@umich.edu>.
4848
4849         * gutils.c (g_get_current_dir): Make g_get_current_dir work on
4850         systems with unlimited pathname length like the HURD (It worked
4851         there before, but only for pathes shorter than 2048). Closes
4852         Bug#4525 as reported by Marcus Brinkmann
4853         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
4854
4855 2000-03-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4856
4857         * giounix.c (g_io_unix_write, g_io_unix_read): Interpret EINTR as
4858         G_IO_ERROR_AGAIN.
4859
4860 2000-03-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4861
4862         * configure.in: Added the missing POSIX_NO_YIELD and
4863         POSIX_NO_PRIORITIES warning messages.
4864
4865         * configure.in: Use AC_TRY_RUN instead of AC_TRY_LINK, to test for
4866         real thread support. On solaris pthread_create can be linked to
4867         even in -lc, but it doesn't work then.
4868
4869         * configure.in: Don't use priorities for threads, when the
4870         minimal/maximal priorities couldn't be determined at configure
4871         time.
4872
4873         * configure.in, gthread.c: Always define GSystemThread in
4874         glibconfig.h to represent a system thread.
4875
4876         * configure.in: Do not use native recursive threads, when
4877         possibe. We use some features, that they do not expose (namely the
4878         depth counter).
4879
4880         * glib.h, gthread.c: Redefined GStaticRecMutex. The functions are
4881         now implemented in a different way, which should be way
4882         faster. Alsothere are now functions g_static_rec_mutex_unlock_full
4883         and g_static_rec_mutex_lock_full to leave/enter a recursive mutex
4884         completly.
4885
4886         * gthread.c (g_thread_self): Do not test the system_thread to be
4887         non-zero to speed things up.
4888
4889         * gthread.c (g_mutex_init): Therefore set the system_thread of the
4890         main thread here.
4891
4892         * tests/thread-test.c: Rerun all tests once again, but this time
4893         we fool the system into thinking, that the available thread system
4894         is not native, but userprovided.
4895
4896 2000-03-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4897
4898         * gqueue.c (g_queue_push_tail_link, g_queue_push_head_link): We
4899         want the next and prev pointer of the inserted link to be NULL.
4900
4901 2000-03-06  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4902
4903         * configure.in: Another small change to the pthread_.. search
4904         pattern. Should work *now* for AIX.
4905
4906 2000-03-04  Tor Lillqvist  <tml@iki.fi>
4907
4908         * gwin32.c (g_win32_error_message): New function that returns the
4909         message string for a Win32 error code.
4910
4911         * glib.h: Declare it.
4912
4913         * glib.def: Export it, plus g_node_copy.
4914
4915 2000-03-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4916
4917         * configure.in: Make the search for pthread_attr_... prototypes
4918         find names at the start of a line also, like it is on AIX. Thanks
4919         to Valdis Kletnieks <Valdis.Kletnieks@vt.edu> for the info.
4920
4921 Wed Mar  1 10:39:39 2000  Tim Janik  <timj@gtk.org>
4922
4923         * gslist.c (g_slist_reverse): minor optimization.
4924
4925         * testglib.c (g_node_test): added a couple of tests for
4926         g_node_copy().
4927
4928         * glib.h:
4929         * gnode.c (g_node_copy): new function to copy subtrees,
4930         supplied by dbsears@ix.netcom.com.
4931         changed iterator to walk the children list backwards, so
4932         we get down from O(n^2) to O(n).
4933
4934         * gnode.c (g_node_first_sibling): applied patch from
4935         dbsears@ix.netcom.com to optimize access if node->parent
4936         is present.
4937
4938         * gutils.c (g_get_any_init): backed out HAVE_PW_GECOS check around
4939         assignment of g_real_name, sicne HAVE_PW_GECOS is never defined and
4940         thus breaks the original code.
4941
4942         * merged changes from 1.2.7.
4943
4944 Fri Jan 28 11:37:41 2000  Owen Taylor  <otaylor@redhat.com>
4945
4946         Bug #4156 - Changes vaguely modelled after Scott Gifford's patch
4947
4948         * gtimer.c (g_timer_elapsed): Never report negative times -
4949         clip times to 0.
4950
4951         * gmain.c (g_timeout_prepare): Guard against unexpected
4952         clock shifts by never setting a timeout of more than
4953         data->interval msecs.
4954
4955 2000-02-27  Tor Lillqvist  <tml@iki.fi>
4956
4957         * glib.def: Add new functions.
4958
4959 2000-02-23  Tor Lillqvist  <tml@iki.fi>
4960
4961         * README.win32: Add a missing step to the setup instructions for
4962         gcc-2.95.2. Thanks to Arnaud Charlet.
4963
4964         * glib.def: Add missing entry point.
4965
4966 2000-02-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4967
4968         * configure.in: Changed GCC version test to also accept major
4969         versions > 2. Thanks to Ben Gertzfield <che@debian.org> for
4970         pointing this out.
4971
4972 Thu Feb 17 12:53:44 2000  Tim Janik  <timj@gtk.org>
4973
4974         * gstring.c: changed g_str_hash() to a 31 bit version based on
4975         a submission by Karl Nelson and hand optimized ad absurdum by
4976         various people ;)
4977
4978         * gstring.c: applied patch from havoc for new gstring functions,
4979         added some more sanity checks, coding style fixups.
4980
4981 2000-02-13  Havoc Pennington  <hp@pobox.com>
4982
4983         * tests/string-test.c (main): Add tests for the new GString 
4984         features
4985
4986         * testglib.c (main): Add tests for the new GString features
4987
4988         * gstring.c (g_string_insert_len): New function; insert 
4989         a given length of string at a given position. 
4990         (g_string_append): reimplement in terms of g_string_insert_len
4991         (g_string_append_len): new function
4992         (g_string_insert_c): accept -1 for "pos" arg to mean "append"
4993         (g_string_append_c): reimplement in terms of g_string_insert_c
4994         (g_string_prepend): reimplement in terms of g_string_insert_len
4995         (g_string_prepend_len): new function
4996         (g_string_prepend_c): reimplement in terms of g_string_insert_c
4997         (g_string_insert): reimplement in terms of g_string_insert_len
4998
4999         * glib.h: Declare g_string_insert_len, g_string_append_len,
5000         g_string_prepend_len
5001
5002 Sun Feb 13 08:16:47 2000  Tim Janik  <timj@gtk.org>
5003
5004         * configure.in: wtf??? someone destroyed the configure.in, reverting to
5005         an older version from Feb 4 which apears to still work.
5006
5007 2000-02-07  Tor Lillqvist  <tml@iki.fi>
5008
5009         * gmodule.rc.in gthread.rc.in: Move to corresponding subdirectories.
5010
5011         * Makefile.am
5012         * gmodule/Makefile.am
5013         * gthread/Makefile.am: Change accordingly.
5014
5015         * makefile.cygwin: Corresponding changes, some cleanup.
5016
5017 2000-02-05  Tor Lillqvist  <tml@iki.fi>
5018
5019         * glib.rc.in gmodule.rc.in gthread.rc.in: New files, for putting
5020         version info in the DLLs on Win32.
5021
5022         * Makefile.am: Generate corresponding *.rc files and distribute
5023         them.
5024
5025         * makefile.cygwin.in: Add rules to automatically bump a "build
5026         number" in the version info in the rc files each time the DLL is
5027         built. But do this only for the person who releases binaries. If
5028         others build the DLLs, the build number is set to zero.
5029
5030 Fri Feb  4 19:36:05 2000  Tim Janik  <timj@gtk.org>
5031
5032         * glib.h: 
5033         * gdataset.c: return stolen data from g_datalist_id_remove_no_notify()
5034         and g_dataset_id_remove_no_notify() to avoid second lookup for common
5035         use.
5036
5037 2000-02-01  Tor Lillqvist  <tml@iki.fi>
5038
5039         * glib.h
5040         * gstrfuncs.c (g_filename_to_utf8, g_filename_from_utf8): New
5041         functions for conversion between UTF-8 and the encoding expected
5042         by C runtime functions like open() and stat(), and returned by
5043         readdir().
5044
5045         Implement them on Win32 where we use the system "ANSI" codepage,
5046         which might be single-byte or double-byte. On Unix, just skip the
5047         issue for now and provide dummy implementations that return a copy
5048         of the argument.
5049
5050         * README.win32
5051         * build-dll
5052         * glib.def: Minor updates.
5053
5054 Wed Jan 26 05:24:38 2000  Tim Janik  <timj@gtk.org>
5055
5056         * glib.h:
5057         * gmain.c: s/current_time/dispatch_time/ for the dispatch() handlers.
5058         refetch the current time after invocation of poll() to cover up for
5059         the time spent in that function call.
5060
5061 Fri Jan 21 10:18:24 2000  Owen Taylor  <otaylor@redhat.com>
5062
5063         * glib.h (G_N_ELEMENTS): Added G_N_ELEMENTS macro to determine
5064         the number of elements in an array.
5065
5066 Sun Jan  9 13:28:36 2000  Tim Janik  <timj@gtk.org>
5067
5068         * gstrfuncs.c (g_strtod): correctly fetch the current locale,
5069         fix from owen.
5070
5071 1999-12-16  Tor Lillqvist  <tml@iki.fi>
5072
5073         * gmodule/gmodule-win32.c: Use FormatMessage to translate system
5074         error codes into textual messages.
5075
5076 1999-11-25  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5077
5078         * glib.h (G_TRYLOCK): This of course should return TRUE in a
5079         program with a thread-disabled GLib.
5080
5081 1999-11-18  Tor Lillqvist  <tml@iki.fi>
5082
5083         * glib.def: g_strjoin was missing.
5084
5085 1999-11-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5086
5087         * acconfig.h, config.h.win32.in, configure.in: Renamed
5088         GLIB_SIZEOF_PTHREAD_T to GLIB_SIZEOF_SYSTEM_THREAD to reflect
5089         changed meaning.
5090
5091         * configure.in: Cope with systems, that have a pthread_t type,
5092         that is not a pointer. Hint from Karl Nelson
5093         <kenelson@ece.ucdavis.edu>. Define GLIB_SIZEOF_SYSTEM_THREAD to 4
5094         for Solaris. Cope with systems, that have no default mutex
5095         initialize, like obviously most DCE systems.
5096
5097         * glib.h, gthread.c: Changed the prototype of thread_create and
5098         thread_self to return the system thread into provided memory
5099         instead of a return value. This is necessary, as HPUX has a
5100         pthread_t, that is bigger than the biggest integral type there.
5101
5102         * gthread.c: system_thread is no longer a pointer, but an memory
5103         area of size GLIB_SIZEOF_SYSTEM_THREAD. Changed the
5104         zeroinitialization and the tests for zeroness accordingly.
5105
5106 1999-11-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5107
5108         * configure.in: Create docs/glib-config.1 from
5109         docs/glib-config.1.in. Makes 'make distcheck' happy (and me too).
5110
5111         * glib-config.1: Removed from CVS, as it is a generated file.
5112
5113 1999-11-08  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5114
5115         * configure.in: Make the test for getpwuid_r work on newer AIX
5116         versions, too. Still works on Solaris and Linux. Patch from Craig
5117         Rodrigues <rodrigc@mediaone.net>.
5118
5119 1999-11-08  Tor Lillqvist  <tml@iki.fi>
5120
5121         * gwin32.c (g_win32_getlocale): Look at env vars LC_ALL, LC_CTYPE
5122         and LANG first. Some refinements to the sublanguage logic.
5123
5124 1999-11-04  Tor Lillqvist  <tml@iki.fi>
5125
5126         * makefile.{cygwin,msc}.in: Add gwin32 object. Add rule to make .i
5127         (preprocessed source) files.
5128
5129 1999-11-01  Tor Lillqvist  <tml@iki.fi>
5130
5131         * glib.h
5132         * glib.def: Rename Win32-only functions from gwin_* to g_win32_*
5133         to match the GLib naming conventions.
5134
5135         * gutils.c
5136         * gwin32.c
5137         * testglib.c
5138         * Makefile.am: Move the Win32-only functions to the new
5139         file gwin32.c
5140
5141 1999-10-31  Tor Lillqvist  <tml@iki.fi>
5142
5143         * gutils.c (gwin_getlocale): New Win32-specific function, returns
5144         a Unixish current locale string (en, zh_TW etc).
5145
5146         * glib.h: Declare it.
5147
5148         * glib.def: Export it.
5149
5150         * testglib.c: Test it.
5151
5152         * gmessages.c (Win32: ensure_stdout_valid): Some improvements,
5153         make sure we don't call AllocConsole several times, which I think
5154         has happened.
5155
5156 Sun Oct 31 18:55:01 1999  ape@spacetec.no  (Asbjorn Pettersen)
5157
5158         * gcache.c (g_cache_remove): Test if node is NULL.
5159         If not tested, GIMP's script-fu will crash. 
5160
5161 Sun Oct 17 18:11:40 1999  Tim Janik  <timj@gtk.org>
5162
5163         * gdataset.c (g_data_set_internal): remove g_dataset_global_lock around
5164         destroy() notification here as well.
5165
5166 1999-10-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5167
5168         * gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
5169         is called recursivly. Reported by Ola Andersson <rand@ling.umu.se>.
5170
5171 Tue Oct 12 14:17:12 1999  Tim Janik  <timj@gtk.org>
5172
5173         * glib.h: removed useless g_string(x) macro that cluttered the namespace
5174         and was just a poor wrapper around the cpp '#' symbol, use #x if you
5175         need to work around this.
5176         added new macro G_STRINGIFY(arg) that will convert arg to a string,
5177         no matter whether it contains macros or not.
5178
5179 1999-10-12  Tor Lillqvist  <tml@iki.fi>
5180
5181         * config.h.win32.in: Define the new GLIB_SIZEOF_* constants here,
5182         too.
5183
5184         * glib.h: Small Win32 comments improvement.
5185
5186 Tue Oct 12 12:16:12 1999  Tim Janik  <timj@gtk.org>
5187
5188         * gmessages.c (g_printf_string_upper_bound): completly new
5189         implementation for printf string upper bounds calculation.
5190         we handle all glibc 2.1 format specifiers now, except for positional
5191         parameters (%nn$...) and wide char strings, plus some obscure upper
5192         case variants of the standard conversions. this fixes a lot of
5193         bugs in the old code, i.e.
5194         - NULL format strings
5195         - floats with exponents >+24
5196         - %G
5197         - precision specifications in general
5198         - negative field widths
5199         - %p for SIZEOF_VOID_P > 4 platforms
5200         we now issue warnigns in places where the old code would have
5201         caused buffer overruns anyways. warnings are suppressed when invoked
5202         from glogv(), to avoid infinite recursions if someone passes a log
5203         message that comes with really obscure format specifications.
5204
5205 Tue Oct 12 11:49:00 1999  Tim Janik  <timj@gtk.org>
5206
5207         * gstrfuncs.c: nuked old g_printf_string_upper_bound() version.
5208
5209 Tue Oct 12 03:34:40 1999  Tim Janik  <timj@gtk.org>
5210
5211         * glib.h: added GFloatIEEE754 and GDoubleIEEE754 unions to access sign,
5212         mantissa and exponent of IEEE floats and doubles (required by the new
5213         version of g_printf_string_upper_bound). the unions are endian specific,
5214         we handle G_LITTLE_ENDIAN and G_BIG_ENDIAN as of currently. ieee floats
5215         and doubles are supported (used for storage) by at least intel, ppc and
5216         sparc, reference:
5217         http://twister.ou.edu/workshop.docs/common-tools/numerical_comp_guide/ncg_math.doc.html
5218
5219 Mon Oct 11 18:01:49 1999  Tim Janik  <timj@gtk.org>
5220
5221         * configure.in: added additional checks to figure sizes of size_t,
5222         ptrdiff_t and intmax_t (required by g_printf_string_upper_bound).
5223
5224 Wed Oct  6 12:44:23 PDT 1999 Manish Singh <yosh@gimp.org>
5225
5226         * configure.in: blah. use G_WITH_CYGWIN instead of G_HAVE_CYGWIN
5227
5228 1999-10-05  Tor Lillqvist  <tml@iki.fi>
5229
5230         * glib.h: (Win32) Drop the mapping of POSIX function names to the
5231         underscored versions, it's unnecessary after all. With MSVC we get
5232         them from oldnames.lib, with gcc-2.95 and mingw32 from
5233         -lmoldname-msvc. Add comment about what headers to include for
5234         prototypes.
5235
5236         * glibconfig.h.win32.in: Don't define WIN32 and NATIVE_WIN32.
5237
5238         * gerror.c (g_on_error_query): (Win32) Slightly increased verbosity.
5239
5240         * build-dll: Don't strip.
5241
5242         * tests/string-test.c tests/dirname-test.c: Use G_OS_WIN32.
5243
5244         * glib.def: Add g_thread_use_default_impl.
5245
5246 Sun Oct  3 19:46:55 PDT 1999 Manish Singh <yosh@gimp.org>
5247
5248         * configure.in: use G_HAVE_CYGWIN instead of G_OS_FEATURE_CYGWIN
5249
5250 Sun Oct  3 19:25:42 PDT 1999 Manish Singh <yosh@gimp.org>
5251
5252         * acconfig.h
5253         * configure.in
5254         * glibconfig.h.win32: G_OS_FOO #defines. I *think* I got the cygwin
5255         and beos stuff right, but I haven't tested it. The respective
5256         porters should fix any screwups
5257
5258         * glib.h
5259         * gerror.c
5260         * gmain.c
5261         * gmessages.c
5262         * gscanner.c
5263         * gthread.c
5264         * gtimer.c
5265         * gutils.c
5266         * testglib.c: use G_OS stuff
5267
5268 Wed Sep 22 01:53:18 1999  Tim Janik  <timj@gtk.org>
5269
5270         * glib.h (NULL): define NULL as (0L) if __cplusplus is defined, to
5271         avoid "ANSI C++ forbids implicit conversion from `void *' in argument
5272         passing" errors upon NULL usage in C++ programs (gcc-2.95 is on crack
5273         for erroring out on this, instead of just issueing a warning).
5274
5275         * glib.h (g_trash_stack_pop): use uncasted NULL again.
5276
5277 Fri Sep 17 10:24:45 1999  Tim Janik  <timj@gtk.org>
5278
5279         * gmem.c (g_mem_chunk_compute_size) (g_mem_chunk_new): applied
5280         patch from Soeren Sandmann <sandmann@daimi.au.dk>, to force mem
5281         chunk's area sizes to be a multitiple of atom_size, and to
5282         eliminate the MAX_MEM_AREA restriction of 65536 bytes. we also
5283         catch cases where users pass an area size < atom size with a
5284         return_if_fail statement now (which is ok, because previously this
5285         lead to memory corruption anyways).
5286
5287 Thu Sep 16 13:19:54 1999  Tim Janik  <timj@gtk.org>
5288
5289         * glib.h (g_trash_stack_pop): add explicit (GTrashStack*) cast for NULL
5290         pointer to cure ANSI C++ error.
5291
5292 Mon Sep 13 23:25:59 1999  Tim Janik  <timj@gtk.org>
5293
5294         * gmessages.c (g_logv): in case we have to abort the program,
5295         debugging is enabled and we are not called recursively, try
5296         to abort with raise (SIGTRAP) first, so developers may ignore
5297         certain failure conditions during debugging stage.
5298
5299 Thu Aug 26 15:09:36 1999  Tim Janik  <timj@gtk.org>
5300
5301         * Makefile.am:
5302         * gmodule/Makefile.am:
5303         * gthread/Makefile.am: added --export-dynamic so we can load dynmic
5304         modules, (required, according to the libtool 1.3.3 docu).
5305
5306 1999-07-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5307
5308         * grand.c (g_rand_new): Use /dev/urandom, as it doesn't block,
5309         which /dev/random might do. Do not XOR the time, when getting the
5310         seed form /dev/urandom, as this is good itself. Prevent the
5311         initial seed from being zero, which causes the PRNG to produce
5312         only zeros. Hints from Colin Plumb <colin@pgp.com>.
5313
5314 1999-08-17  Tor Lillqvist  <tml@iki.fi>
5315
5316         * glib.h (g_trash_stack_push): Add a cast.
5317
5318         * gslist.c
5319         * glist.c: Make the inline functions static inline, and add
5320         separate extern wrappers. Not all compilers produce callable entry
5321         points for inline functions, even if gcc does.
5322
5323 Sun Aug 15 02:47:14 1999  Tim Janik  <timj@gtk.org>
5324
5325         * glib.h (g_trash_stack_pop): eliminate memset() call, since string.h
5326         has not neccessarily been included prior to glib.h.
5327
5328 Mon Aug  2 21:03:10 1999  Tim Janik  <timj@gtk.org>
5329
5330         * configure.in: added --enable-msg-prefix option.
5331
5332         * gmessages.c (g_log_default_handler): feature "prg_name (pid:%u): "
5333         if --enable-msg-prefix was selected (use "(process:%u): " if
5334         g_get_prgname () returns NULL, along the lines of g_on_error_query).
5335
5336 1999-08-03  Tor Lillqvist  <tml@iki.fi>
5337
5338         * glib.h
5339         * gstrfuncs.c
5340         * tests/strfunc-test.c: Rename g_strccpy to g_strcompress and
5341         g_strecpy to g_strescape per Tim Janik's suggestion. Dropped the
5342         destination parameter, always g_malloc a new string.  Fix bug in
5343         g_strcompress, octal digits were gobbled up without limit, should
5344         use max three.
5345
5346         Sources that use g_strescape must have ifdefs to be compilable
5347         both with GLib 1.2 and 1.3.
5348
5349 Sat Jul 31 17:52:03 PDT 1999 Manish Singh <yosh@gimp.org>
5350
5351         * glib.h
5352         * gstrfuncs.c: the #define for g_strescape interfered with the
5353         compilation of the function, so just remove the function and
5354         note that it's deprecated in the header
5355
5356 1999-08-01  Tor Lillqvist  <tml@iki.fi>
5357
5358         * gstrfuncs.c (g_strccpy, g_strecpy): New functions.
5359
5360         * glib.h: Declare and document them. Define the deprecated
5361         g_strescape as a macro that calls g_strecpy.
5362
5363         * tests/strfunc-test.c (main): Test them.
5364
5365         * makefile.{cygwin,msc}.in
5366         * tests/makefile.{cygwin,msc}.in: Remove gstack and its test
5367         program.
5368
5369         * glib.def: Additions and removals.
5370
5371         * README.win32: Improve gcc build instructions.
5372
5373         * build-dll: Also build import library for MSVC.
5374
5375 Sat Jul 24 20:11:35 1999  Tim Janik  <timj@gtk.org>
5376
5377         * merged GLib 1.3.0 with glib-1.2.3 from Fri Jul 16 22:18:36.
5378         * incorporated proposed cleanups from gtk-devel-list.
5379
5380         * bumped version number to GLib-1.3.1
5381
5382         * glib.h:
5383         * gqueue.c:
5384         * gstring.c:
5385         * glist.c:
5386         removed string tokenisation (we got g_strsplit() and g_strjoin()
5387         already) and readline functions.
5388         s/g_list_delete/g_list_delete_link.
5389         implemented g_slist_delete_link.
5390         removed notion of g_ATEXIT() macro in glib.h, this is an *internal*
5391         macro, g_atexit() is provided for public consumption.
5392         added GTrashStack inline utility functions.
5393         reimplement double eneded queues.
5394         removed GStack implementation, people can use a queue or a (singly)
5395         linked list for this task.
5396         deprecated g_strescape(), we need the SunOS variants here.
5397
5398         * gdate.c: added DEBUG_MSG() macro to wrap old messages.
5399
5400         * *.*: CVS merges.
5401
5402         * upgrade to libtool 1.3.3.
5403
5404 1999-07-21  Tor Lillqvist  <tml@iki.fi>
5405
5406         Win32: With the latest gcc (2.95, pre-release), we can have binary
5407         compatibility with MSVC by using the switch -fnative-struct. No
5408         longer build DLLs with .gcc in the name when using gcc.
5409
5410         * README.win32: Renew gcc build instructions.
5411
5412         * build-dll: Comments change, handle also .a files.
5413
5414         * makefile.cygwin.in
5415         * tests/makefile.cygwin.in: Remove .gcc from DLL name.
5416
5417 1999-07-13  Tor Lillqvist  <tml@iki.fi>
5418
5419         * README.win32: Correct URL for mingw runtime sources.
5420
5421         * build-dll: Combine commands with &&.
5422
5423         * glib.h: Map also rmdir() and hypot() for MSVCRT library.
5424
5425         * makefile.cygwin.in
5426         * tests/makefile.cygwin.in: New DLL naming style. GCC-compiled DLLs are
5427         now called *.gcc.dll, to avoid binary incompatibilities with
5428         MSVC-compiled versions.
5429
5430         * makefile.msc.in: Cosmetics.
5431
5432 1999-07-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5433
5434         * configure.in: Test for pthread_join rather than for
5435         pthread_create to determine the right thread-lib. Makes it work on
5436         mips-sgi-irix6.5. Hitn from to Jari Vuoksenranta
5437         <javu@piano.ux.phys.jyu.fi>.
5438
5439 1999-07-02  Tor Lillqvist  <tml@iki.fi>
5440
5441         * README.win32: Note about need to fix another bug in the mingw32
5442         headers.
5443
5444         * makefile.msc.in: Debugging turned on via an nmake variable,
5445         no need to edit the makefile.
5446
5447 1999-07-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5448
5449         * configure.in, acconfig.h, gutils.c: Added a g_memmove
5450         replacement for platforms without memmove, where bcopy can't
5451         handle overlapping copies and the corresponding checks, which is
5452         taken form the PERL Configure routine.
5453
5454         * glib.h: Updated the commentary about g_memmove to be right and
5455         more GLib-like.
5456
5457         * configure.in: Removed test for rand_r, as it isn't used anymore.
5458
5459 1999-06-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5460
5461         * glib.h, grand.c: Finally removed the g_random_normal and
5462         g_rand_normal functions.
5463
5464 1999-06-28  Tor Lillqvist  <tml@iki.fi>
5465
5466         * glib.def: Add missing export of g_strncasecmp.
5467
5468 1999-06-21  Jose Mercado  <jmercado@mit.edu>
5469
5470         * glib.spec.in: Changed version number (1.1->1.3) in files section
5471         to allow rpm to build packages again.
5472
5473 1999-06-21  Tor Lillqvist  <tml@iki.fi>
5474
5475         * README.win32: Update the pthreads snapshot version we want.
5476         Advice how to hand-expand the makefile.*.in files.
5477
5478         * config.h.win32.in: Define values needed by Sebastian Wilhelmi's
5479         new thread stuff.
5480
5481         * glib.def: Add new functions.
5482
5483         * glibconfig.h.win32.in: Update the pthreads snapshot version.
5484         Fix typo.
5485
5486         * gthread.c: Include config.h, guard inclusion of unistd.h.  When
5487         using gcc on Win32, g_thread_functions_for_glib_use must be marked
5488         for export here, too.
5489
5490         * gtimer.c: Implement g_usleep on native Win32 using Sleep (which
5491         only has millisecond granularity, though).
5492
5493         * makefile.cygwin.in
5494         * makefile.msc.in: Update pthreads snapshot version. File
5495         name changes. Remove testgthread.
5496
5497         * tests/makefile.cygwin.in
5498         * tests/makefile.msc.in: Add thread-test. Link with gthread lib.
5499
5500 1999-06-18  Jeff Garzik  <jgarzik@pobox.com>
5501
5502         * tests/Makefile.am:  Re-order tests in alpha order.
5503
5504 1999-06-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5505
5506         * configure.in: Changed test for pthread_attr_setstacksize from
5507         AC_TRY_COMPILE to AC_TRY_LINK.
5508
5509 1999-06-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5510
5511         * configure.in, acglib.m4, acconfig.h, glib.h, gthread.c:
5512         Completed the thread support in GLib. Thread creation,
5513         prioritizing threads, yielding, joining threads as well as
5514         reader/writer locks and recursive mutexes are now in place. Please
5515         test heavily on your platform. It is so far tested on
5516         Linux/i386/pthreads, Solaris/Sparc/pthreads and
5517         Solaris/Sparc/solaristhreads.
5518
5519         * gtimer.c, glib.h: Implement g_usleep (gulong microseconds) for
5520         thread safe sleeping. (sleep() is not MT-safe at all!)
5521
5522         * gutils.c: Avoid compiler warning.
5523
5524         * tests/Makefile.am, tests/thread-test.c: New program to test some
5525         aspects of the thread implementation.
5526
5527         * gthread.c, Makefile.am: Renamed from gmutex.c to reflect the
5528         change of content.
5529
5530         * configure.in: Purged all appearances of nspr. 
5531
5532 Wed Jun  2 11:42:46 PDT 1999 Manish Singh <yosh@gimp.org>
5533
5534         * acinclude.m4
5535         * config.guess
5536         * config.status
5537         * ltconfig
5538         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
5539
5540 1999-05-29  Tor Lillqvist  <tml@iki.fi>
5541
5542         * gstrfuncs.c (g_strescape): Backslashify also '"' characters.
5543
5544         * glib.h: Document g_strescape.
5545
5546 1999-05-12  Tor Lillqvist  <tml@iki.fi>
5547
5548         * glib.h (Win32): Map fileno to _fileno for mingw32. Map fstat to
5549         _fstat.
5550
5551         * README.win32: Advice also to remove -lmoldname in the
5552         patch to the egcs-1.1.2 spec file.
5553
5554 Wed May 12 00:23:55 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
5555
5556         * gmodule/Makefile.am: Another small fix.
5557
5558 1999-05-08  Tor Lillqvist  <tml@iki.fi>
5559
5560         * Makefile.am tests/Makefile.am: Correct rules for making the
5561         win32-related files that are made from corresponding .in files.
5562         Is there a cleaner way than explicitly writing rules that invoke
5563         config.status?
5564
5565 Fri Jul 16 22:18:36 PDT 1999 Manish Singh <yosh@gimp.org>
5566
5567         * ltconfig
5568         * ltmain.sh: upgrade to libtool 1.3.3
5569
5570 1999-06-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5571
5572         * gdate.c, gstrfuncs.c, gstring.c: Fixed the use of the
5573         is..... and to..... macros, which take unsigned chars, not chars!
5574         Thanks to Morten Welinder <terra@diku.dk> for pointing this out.
5575
5576 Thu Jun  3 16:30:31 PDT 1999 Manish Singh <yosh@gimp.org>
5577
5578         * gerror.c (g_on_error_query): check isatty() before querying so
5579         we don't loop endlessly
5580
5581 Sat May 29 11:16:29 PDT 1999 Manish Singh <yosh@gimp.org>
5582
5583         * acinclude.m4
5584         * config.guess
5585         * config.status
5586         * ltconfig
5587         * ltmain.sh: upgrade to libtool 1.3.2
5588
5589 1999-05-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5590
5591         * gmain.c: provide a poll prototype for SunOS, as they do not do
5592         it self. Hint from Christian Parg <cparg@fs-design.de>.
5593
5594 Tue May 25 12:23:07 1999  Owen Taylor  <otaylor@redhat.com>
5595
5596         * gstrfuncs.c (g_strchug): Use g_memmove() not memmove().
5597         (Reported by Charles Levert <charles@comm.polymtl.ca>)
5598
5599 Mon May 10 22:03:52 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
5600
5601         * Released GLib 1.2.3
5602
5603 1999-05-08  Tor Lillqvist  <tml@iki.fi>
5604
5605         * Makefile.am tests/Makefile.am: Correct rules for making the
5606         win32-related files that are made from corresponding .in files.
5607         Is there a cleaner way than explicitly writing rules that invoke
5608         config.status?
5609
5610 Sat May  1 10:18:01 PDT 1999 Manish Singh <yosh@gimp.org>
5611
5612         * acinclude.m4
5613         * config.guess
5614         * config.status
5615         * ltconfig
5616         * ltmain.sh: upgrade to libtool 1.3
5617
5618 1999-04-30  Tor Lillqvist  <tml@iki.fi>
5619
5620         * Makefile.am: Don't distribute glibconfig.h.win32.in, but
5621         glibconfig.h.win32. Generate it when making a dist. Also generate
5622         makefile.msc and config.h.win32 from corresponding .in files when
5623         making dist.
5624
5625         * configure.in: Also substitute @GLIB_INTERFACE_AGE@ and
5626         @GLIB_BINARY_AGE@ (needed in config.h.win32).
5627
5628         * glibconfig.h.win32.in: Use static mutex structure and initial
5629         value corresponding to the 1999-04-07 snapshot of pthreads-win32.
5630
5631         * tests/Makefile.am: Distribute makefile.msc. Generate it when
5632         making dist.
5633
5634         * tests/makefile.msc.in: New file.
5635
5636         * tests/node-test.c: Include <stdlib.h> for exit().
5637
5638 Thu Apr 29 02:16:36 1999  Tim Janik  <timj@gtk.org>
5639
5640         * gstrfuncs.c: minor code cleanups.
5641
5642 Tue Apr 27 13:11:29 1999  Owen Taylor  <otaylor@redhat.com>
5643
5644         * gmain.c (g_main_poll): Mask out ERR HUP and NVAL from
5645         the events field so we don't give IRIX fits.
5646
5647 Tue Apr 20 08:42:22 1999  Tim Janik  <timj@gtk.org>
5648
5649         * gscanner.c (g_scanner_unexp_token): behave conservative with
5650         G_TOKEN_IDENTIFIER_NULL and always assume scanner->value.v_string
5651         to be "null" in that case.
5652
5653 1999-04-20  Havoc Pennington  <hp@pobox.com>
5654
5655         * gutils.c (g_vsnprintf):  When using the vsnprintf()
5656         implementation, '\0'-terminate the resulting string
5657         and return its length rather than -1.
5658
5659 Mon Apr 19 13:42:21 1999  Owen Taylor  <otaylor@redhat.com>
5660
5661         * gmain.c (g_main_iterate): Added missing
5662         #ifdef G_THREADS_ENABLED. (I never liked G_THREADS_ENABLED in
5663         the first place!)
5664
5665 1999-04-18  Havoc Pennington  <hp@pobox.com>
5666
5667         * gutils.c (g_snprintf): When using the vsnprintf()
5668         implementation, '\0'-terminate the resulting string
5669         and return its length rather than -1.
5670
5671 Fri Apr 16 06:52:07 1999  Tim Janik  <timj@gtk.org>
5672
5673         * gscanner.c (g_scanner_unexp_token): feature G_TOKEN_EOF as a valid
5674         expected token as well, so we get "- expected end of file" instead of
5675         "- expected (unknown) token <0>".
5676
5677 Tue Apr 13 16:16:14 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
5678
5679         * Released GLib 1.2.2
5680
5681 1999-04-12  Elliot Lee  <sopwith@mh69.mh.cuc.edu>
5682
5683         * g_strchug(): s/strcpy/memmove/
5684
5685 1999-04-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5686
5687         * configure.in: Adjusted the test for an unimplemented
5688         getpwuid_r. Info from Michael Pruett <mikep@ugcs.caltech.edu>.
5689
5690 Sun Apr 11 15:07:34 1999  Tim Janik  <timj@gtk.org>
5691
5692         * configure.in: bumped versin number to GLib 1.2.2, interface 2,
5693         binary 2.
5694
5695         * NEWS: updates.
5696
5697 Sun Apr 11 14:37:06 1999  Tim Janik  <timj@gtk.org>
5698
5699         * gstrfuncs.c (g_strcasecmp): always check for s1, s2 != NULL.
5700
5701 Sat Apr 10 19:30:50 1999  Tim Janik  <timj@gtk.org>
5702
5703         * glib.h: removed braces around inline strings for the G_GNUC_FUNCTION
5704         and G_GNUC_PRETTY_FUNCTION macros, so the macros can be used for
5705         compile time string concatenation.
5706
5707 Thu Apr  8 19:53:19 1999  Owen Taylor  <otaylor@redhat.com>
5708
5709         * gmain.c (g_main_iterate): Check for two threads
5710         calling g_main_iterate at once.
5711
5712         * gmain.c: If the set of poll file descriptors changes
5713         during a call to poll(), abort that call, and start
5714         a new poll. My test program still segfaults
5715         obscurely on glibc 2.0 (in read()!!!), but now it works on
5716         glibc 2.1, so I'll blame something else for the other segfault.
5717
5718 1999-03-31  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5719
5720         * configure.in: Fixed slight bug, that made configure hang on some
5721         systems. Please do not merge this into 1.3 branch. It's taken care
5722         of differently there. Info from J. Rhett Aultman
5723         <cuplan@alley.gator.net>
5724
5725 Wed Mar 24 21:23:47 CST 1999 Shawn T. Amundson <amundson@gtk.org>
5726
5727         * Released GLib 1.2.1
5728
5729         * README:
5730           INSTALL: 
5731           NEWS: 
5732           sanity_check: updated
5733
5734         * glibconfig.h.win32.in:
5735           Makefile.am:
5736           docs/glib-config.1.in:
5737           docs/Makefile.am: Added files used to generate new files.
5738
5739         * glibconfig.h.win32:
5740           docs/glib-config.1: Removed, now generated.
5741
5742         * configure.in: Added to output now-generated files.
5743
5744 Tue Mar 23 13:43:39 PST 1999 Manish Singh <yosh@gimp.org>
5745
5746         * giounix.c: add user_data param to check and prepare functions
5747
5748 Mon Mar 22 03:54:43 1999  Tim Janik  <timj@gtk.org>
5749
5750         * glib.h:
5751         * gmain.c: add user_data to the GSource ->check and ->prepare
5752         functions, so it can be used to e.g. pass a GPollFd.
5753         (g_main_poll): only add poll records with an events mask != 0 to the
5754         fd_array. don't even bother calling poll_func() if fds=timeout=0.
5755         added debugging printouts around poll_func() invokation that can be
5756         enabled with #define G_MAIN_POLL_DEBUG.
5757
5758 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
5759
5760         * acinclude.m4
5761         * config.guess
5762         * config.sub
5763         * ltconfig
5764         * ltmain.sh: upgrade to libtool 1.2f
5765
5766         * autogen.sh: libtool is not required to autogen glib
5767
5768         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
5769         needed)
5770
5771 1999-03-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5772
5773         * gmem.c: Fixed another stupid fault of mine: Did
5774         s/g_static_/g_private_/g
5775
5776 Wed Mar 17 03:17:42 1999  Tim Janik  <timj@gtk.org>
5777
5778         * configure.in bumped versin number to GLib 1.2.1, interface 1,
5779         binary 1.
5780
5781         * NEWS: updates.
5782
5783         * glib.h: added GLIB_CHECK_VERSION() macro similar to
5784         GTK_CHECK_VERSION().
5785
5786 Sun Mar 14 17:50:35 1999  Tim Janik  <timj@gtk.org>
5787
5788         * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
5789         to g_return_if_fail().
5790         (g_mem_profile): 
5791         (g_mem_chunk_print): 
5792         (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
5793         messages.
5794
5795         * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
5796         to g_return_if_fail().
5797         * grel.c (g_*): changed a bunch of g_assert() statements to
5798         g_return_if_fail() and added some extra ones to check relation != NULL.
5799
5800 1999-03-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5801
5802         * configure.in: Also accept _Pctime_r instead of ctime_r, while
5803         seraching for the right `_REENTRANT' flag. This is for Digital
5804         UNIX 4.0d. Thanks to Sascha Brawer <sb@adasys.ch>.
5805
5806 Tue Mar  9 23:25:50 1999  Tim Janik  <timj@gtk.org>
5807
5808         * configure.in: check for working realloc (NULL,).
5809         * gmem.c (g_realloc): use malloc() for initial allocation on systems
5810         where realloc(NULL,) will not work (this is the case on SunOS, reported
5811         by Tom Geiger).
5812
5813 Mon Mar  8 07:42:08 1999  Tim Janik  <timj@gtk.org>
5814
5815         * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
5816         flag around the call to g_hook_free() to avoid spurious
5817         warnings (happens during destruction phase).
5818
5819 1999-03-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5820
5821         * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
5822         from config.h.win32 to glibconfig.h.win32
5823
5824         * acconfig.h, configure.in, config.h.win32: Added test for DCE
5825         versions of mutex_trylock and cond_timedwait. The win32 versions
5826         are posix, aren't they?
5827
5828 1999-03-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5829
5830         * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
5831         Friedrich Dominicus <Friedrich.Dominicus@inka.de>
5832
5833 1999-03-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5834
5835         * gutils.c (g_get_any_init): Fixed yet another bloody
5836         implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
5837         <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
5838         test better than that, but have no idea, how to do that easily.
5839
5840 Sun Feb 21 22:11:51 CST 1999  Shawn T. Amundson <amundson@gtk.org>
5841
5842         * Released GLib 1.2.0
5843
5844         * AUTHORS: updated
5845
5846 Wed Feb 24 00:08:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>
5847
5848         * *.[ch]: inserted additional note to look for ChangeLog and
5849           AUTHORS file for a log of modifications.
5850
5851 Sun Feb 21 14:01:00 1999  Dr Mike <drmike@redhat.com>
5852
5853         * Made specfile generated, tweaked slightly
5854
5855 Sat May  8 06:00:17 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
5856
5857         * configure.in
5858           gmodule/Makefile.am
5859           gthread/Makefile.am: Better testing reveals better
5860           methods.  Fixes for BeOS.
5861
5862 Sat May  8 01:52:29 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
5863
5864         * configure.in
5865           gerror.c
5866           gmain.c
5867           gstrfuncs.c
5868           gutils.c
5869           ltconfig
5870           ltmain.sh
5871           gmodule/Makefile.am
5872           gmodule/gmodule.c
5873           gmodule/gmoduleconf.h.in
5874           gmodule/gmodule-beos.c
5875           gthread/Makefile.am: Port to BeOS by myself and Richard Offer.
5876
5877 1999-05-06  Tor Lillqvist  <tml@iki.fi>
5878
5879         * makefile.msc.in makefile.cygwin.in glibconfig.h.win32.in
5880         config.h.win32.in tests/makefile.msc.in tests/makefile.cygwin.in:
5881         New files, used to generate corresponding non-.in files when
5882         making a dist. This is just so the version numbers will be kept in
5883         synch automatically.
5884
5885         * configure.in: Also substitute @GLIB_MAJOR_VERSION@,
5886         @GLIB_MINOR_VERSION@, and @GLIB_INTERFACE_AGE@.
5887
5888         * Makefile.am tests/Makefile.am: Also distribute makefile.cygwin.
5889
5890         * gerror.c (g_on_error_query): On Win32, put up a MessageBox and
5891         then exit.
5892
5893         * glib.def: Add a couple of functions.
5894
5895 Sat May  1 10:26:20 PDT 1999 Manish Singh <yosh@gimp.org>
5896
5897         * acinclude.m4
5898         * config.guess
5899         * config.status
5900         * ltconfig
5901         * ltmain.sh: upgrade to libtool 1.3
5902
5903 1999-04-25  Tor Lillqvist  <tml@iki.fi>
5904
5905         * README.win32: More editing.
5906         * build-dll: Use gcc, not ld to link.
5907         * glib.h: On native Win32 use _unlink().
5908         * gscanner.c: Use corrent NATIVE_WIN32 feature test macro,
5909         not _MSC_VER.
5910         * gstring.c: Include <io.h> on Win32 for _read prototype.
5911         * gutils.c: Remove old IO channel code (was in #if 0).
5912         * makefile.cygwin: Don't need to link with kernel32 and msvcrt
5913         explicitly, they are included anyway.
5914
5915 1999-04-24  Tor Lillqvist  <tml@iki.fi>
5916
5917         Support added for building using a GNU toolchain on Win32,
5918         i.e. gcc -mno-cygwin on cygwin (a.k.a. mingw32, using egcs-1.1.2).
5919
5920         * README.win32: Updated.
5921         * build-dll makefile.cygwin tests/makefile.cygwin: New files.
5922         * glib.h glib.def glibconfig.h.win32: Slight updates. 
5923         * gmain.c: No need to include <fcntl.h> and <io.h> on Win32.
5924         * gmain.c gutils.c testglib.c tests/string-test.c: Test for
5925         NATIVE_WIN32, not _MSC_VER.
5926         * gmutex.c: Must declare g_thread_functions_for_glib_use as
5927         exported (using the GUTILS_C_VAR macro).
5928         * gutils.c gmodule/libgplugin_[ab].c: LibMain not needed.
5929         * gmodule/gmoduleconf.h.win32: Need underscore with gcc.
5930         * gthread/gthread.c: With gcc on Win32, must use memcpy to assign
5931         value of g_thread_functions_for_glib_use (?).
5932         * makefile.msc tests/makefile.msc: Cosmetics.
5933
5934 Fri Apr 23 14:29:25 BST 1999  Tony Gale <gale@gtk.org>
5935
5936         * glib.h: Fix typo in g_string_ncasecmp macro (by me).
5937           Add b_string_strncasecmp macro.
5938
5939 1999-04-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5940
5941         * gutils.c (g_get_any_init): use sysconf (_SC_GETPW_R_SIZE_MAX) as
5942         the new initinal bufsize for getpwuid_r on systems, that support
5943         this. Hint from Holger Duerer <H.Duerer@zait.uni-bremen.de>.
5944
5945 Sat Apr 17 20:55:13 BST 1999  Tony Gale <gale@gtk.org>
5946
5947         * glib.h, gstring.c: Add new g_string functions for reading
5948           from file/socket descriptors, and tokenising strings.
5949
5950           Added various g_string macros.
5951
5952 Tue Apr 13 23:28:32 1999  Tor Lillqvist  <tml@iki.fi>
5953
5954         * README.win32: Mention the tests directory.
5955
5956         * glib.def: Add the functions from grand.c.
5957
5958         * glibconfig.h.win32: Add unsigned max values, and the format
5959         strings.
5960
5961         * makefile.msc: Add grand.
5962
5963         * tests/{date-test,node-test}.c: Include <stdlib.h> for exit().
5964
5965         * tests/makefile.msc: New file.
5966
5967 1999-04-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5968
5969         * glib.h: Moved struct declaration up. Style fixes.
5970
5971         * grand.c: Style fixes. Only try to open /dev/random once.
5972
5973         * tests/rand-test.c (main): New tests; Slight bug fix. 
5974
5975 1999-04-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5976
5977         * grand.c, tests/rand-test.c: New files to implement the Mersenne
5978         Twister Pseudo Random Number Generator.
5979
5980         * glib.h, AUTHORS, Makefile.am, tests/Makefile.am: Changed
5981         accordingly.
5982
5983 Thu Apr  8 21:12:30 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
5984
5985         * Released GLib 1.3.0
5986
5987 1999-03-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5988
5989         * configure.in: Added a check for the right format to printf and
5990         scanf long longs. It is %qi instead of %lli on FreeBSD for
5991         whatever reason.
5992
5993 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
5994
5995         * Makefile.am (glibconfig.h): Make sure `glibconfig.h' exists
5996         after the rule is fired.
5997         (install-exec-local): Install glibconfig.h only if the contents
5998         are different from the currently installed glibconfig.h.
5999
6000 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
6001
6002         * Makefile.am (configexecincludedir): Rename from 
6003         configincludedir so that glibconfig.h will be installed 
6004         as part of `make install-exec'. 
6005
6006 Thu Mar 25 22:45:47 1999  Tor Lillqvist  <tml@iki.fi>
6007
6008         * config.h.win32: Update version numbers.
6009
6010         * glibconfig.h.win32: Update version numbers and pthreads-win32-
6011         related magic values.
6012
6013         * README.win32: Some improvements.
6014
6015         * makefile.msc: Add gqueue and gstack. Correct version number.
6016
6017 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
6018
6019         * acinclude.m4
6020         * config.guess
6021         * config.sub
6022         * ltconfig
6023         * ltmain.sh: upgrade to libtool 1.2f
6024
6025         * autogen.sh: libtool is not required to autogen glib
6026
6027         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
6028         needed)
6029
6030 1999-03-18  Jeff Garzik  <jgarzik@pobox.com>
6031
6032         * glib.def: Add new g_list, g_stack, g_queue functions.
6033
6034 1999-03-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6035
6036         * configure.in: added new AC_SUBST(GTHREAD_COMPILE_IMPL_DEFINES)
6037         to hold various defines to get the right thread implementation on
6038         different platforms. Also look in -ldce for pthread_create. Should
6039         make it work on HP-UX 10.x. Information from "D. Emilio Grimaldo
6040         Tunon" <emilio_tunon@nl.compuware.com>.
6041
6042 1999-03-17  Jeff Garzik  <jgarzik@pobox.com>
6043
6044         * gstack.c, gqueue.c:
6045         Add copyright, clean up code a bit.
6046
6047 1999-03-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6048
6049         * configure.in: Added missing values for G_MAXU(SHORT|INT|LONG) on
6050         platforms with only /usr/include/values.h.
6051
6052         * acconfig.h: Removed unnecessary macros.
6053
6054         * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
6055         from config.h.win32 to glibconfig.h.win32. Taken from glib 1.2
6056         branch.
6057
6058         * configure.in: Also accept _Pctime_r instead of ctime_r, while
6059         seraching for the right `_REENTRANT' flag. This is for Digital
6060         UNIX 4.0d. Taken from glib 1.2 branch.
6061
6062 Wed Mar 17 03:14:56 1999  Tim Janik  <timj@gtk.org>
6063
6064         * glib.h: added GLIB_CHECK_VERSION() macro similar to
6065         GTK_CHECK_VERSION().
6066
6067 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
6068
6069         * merges from glib-1-2:
6070
6071 Sun Mar 14 17:50:35 1999  Tim Janik  <timj@gtk.org>
6072
6073         * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
6074         to g_return_if_fail().
6075         (g_mem_profile):
6076         (g_mem_chunk_print):
6077         (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
6078         messages.
6079
6080         * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
6081         to g_return_if_fail().
6082         * grel.c (g_*): changed a bunch of g_assert() statements to
6083         g_return_if_fail() and added some extra ones to check relation != NULL.
6084
6085 Tue Mar  9 23:25:50 1999  Tim Janik  <timj@gtk.org>
6086
6087         * configure.in: check for working realloc (NULL,).
6088         * gmem.c (g_realloc): use malloc() for initial allocation on systems
6089         where realloc(NULL,) will not work (this is the case on SunOS, reported
6090         by Tom Geiger).
6091
6092 Mon Mar  8 07:42:08 1999  Tim Janik  <timj@gtk.org>
6093
6094         * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
6095         flag around the call to g_hook_free() to avoid spurious
6096         warnings (happens during destruction phase).
6097
6098 1999-03-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6099
6100         * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
6101         Friedrich Dominicus <Friedrich.Dominicus@inka.de>
6102
6103 1999-03-16  Timur Bakeyev  <mc@bat.ru>
6104
6105         * configure.in: Fix problem with pthread_create in libc, as running
6106         "gcc test.c -l " is not legal.
6107
6108 1999-03-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6109
6110         * tests/type-test.c: Added a test for the
6111         G_(U)?INT(16|32|64)_FORMAT and G_(MIN|MAX|MAXU)(SHORT|INT|LONG)
6112         macros.
6113
6114         * configure.in: Removed G_(U)?INT8_FORMAT again, as it can't be
6115         used for scanf.
6116
6117         * configure.in: Added the macros G_MAXU(SHORT|INT|LONG). I do not
6118         know how to handle these on platforms with /usr/include/values.h,
6119         but without /usr/include/limits.h. Please someone add this.
6120
6121
6122 1999-03-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6123
6124         * configure.in: Added the macros G_(U)?INT(8|16|32|64)_FORMAT to
6125         use for printf and (much more important) scanf format strings for
6126         the corresponding GLib types. 
6127
6128         * glib.h Added G_(U)?(SHORT|INT|LONG)_FORMAT for consistency. It
6129         however makes no sense to also provide G_(FLOAT|DOUBLE)_FORMAT, as
6130         they are different for printf (f for both) and scanf (f for float,
6131         lf for double). Defining G_INT_FORMAT makes sense however, as we
6132         might want to define gint to something different than int someday
6133         in the future. Idea from Sascha Brawer <sb@adasys.ch>.
6134
6135 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
6136
6137         * gdate.c:
6138         Commented out debugging output.
6139
6140         * tests/Makefile.am, tests/date-test.c:
6141         Added test of the GDate module, based closely on testgdate.c.
6142
6143         * tests/Makefile.am:
6144         Bugfix - compile tests with @GLIB_DEBUG_FLAGS@.
6145
6146 1999-03-14  Raja R Harinath  <harinath@cs.umn.edu>
6147
6148         * configure.in (glibconfig.h): Remove widechar tests and defines.
6149         (fd_set): Change the grep for `fd_mask' to search for `fd_set'.
6150         * gerror.c (fd_mask): Remove conditional typedef.  It is not used
6151         elsewhere in the file.
6152         * gmain.c (fd_mask): Likewise.
6153
6154 1999-03-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6155
6156         * configure.in: Test for posix threads first, then for dce threads.
6157
6158 1999-03-11  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6159
6160         * configure.in: Revamped the thread configure stuff. Now dce
6161         threads (old posix draft) are recogniced. This is necessary,
6162         because dce threads are in fact working quite differently from
6163         posix threads. Also changed the conditions for checking for MT
6164         safe functions a bit, because G_THREADS_IMPL_NONE still have to
6165         compile thread safe. NOTE: Please do not commit my change to
6166         glib-1-2/{acconfig.h,configure.in,config.h.win32} from 1999-03-03,
6167         as the current change will take care of that too.
6168
6169 Tue Mar  9 14:37:32 1999  Jeff Garzik  <jgarzik@pobox.com>
6170
6171         * Makefile.am, glib.h, gstack.c, gqueue.c,
6172           tests/Makefile.am, tests/queue-test.c, tests/stack-test.c:
6173         Added stack, queue ADTs and related tests.
6174
6175         * glib.h, glist.c:
6176         New g_list_delete() function.
6177
6178 Sat Mar  6 11:03:08 1999  Asbjorn Pettersen  <ape@lrdpf.spacetec.no>
6179
6180         * gutils.c (g_get_any_init): add OS/2 changes.
6181         change '\\' in HOME to '/'.
6182
6183 1999-03-03  Josh MacDonald  <jmacd@spin.dsl.pacbell.net>
6184
6185         * glib.def: g_spaced_primes_closest was omitted here, so I
6186         couldn't build Xdelta on Windows.
6187
6188 1999-03-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6189
6190         * gutils.c (g_get_any_init): Fixed yet another bloody
6191         implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
6192         <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
6193         test better than that, but have no idea, how to do that easily.
6194
6195 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
6196
6197         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
6198         new one.
6199
6200         * configure.in: set glib version to 1.3.0.