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