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