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