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