G_BREAKPOINT for alpha from Robert Wilhelm <robert@physiol.med.tu-muenchen.de>
[platform/upstream/glib.git] / ChangeLog.pre-2-2
1 Wed Oct 28 00:49:32 PST 1998 Manish Singh <yosh@gimp.org>
2
3         * glib.h: G_BREAKPOINT for alpha from Robert Wilhelm
4         <robert@physiol.med.tu-muenchen.de>
5
6 Tue Oct 27 07:25:53 1998  Tim Janik  <timj@gtk.org>
7
8         * glib.h:
9         * gscanner.c:
10         (g_scanner_sync_file_offset): new function for file input.
11         rewind the filedescriptor to the current buffer position and blow
12         the file read ahead buffer. usefull for third party uses of our
13         filedescriptor, which hooks onto the current scanning position.
14         (this became neccessary with the implementation of buffered
15         reads).
16         (g_scanner_input_file): 
17         (g_scanner_input_text): automatically blow the read ahead buffer.
18         (g_scanner_get_char): blow the read ahead buffer when the end of
19         input is reached, i.e. a '\000' char is read.
20
21 Tue Oct 27 00:27:31 PST 1998 Manish Singh <yosh@gimp.org>
22
23         * glib.h: get rid of duplicate #g_htonl and friends in the
24         NATIVE_WIN32 part
25
26 Mon Oct 26 22:42:01 PST 1998 Manish Singh <yosh@gimp.org>
27
28         * glibconfig.h.win32
29         * gutils.c
30         * makefile.msc: win32 patch from Tor Lillqvist (glib-tml-981027-0),
31         fixes some minor win32 buglets
32
33 Mon Oct 26 22:12:03 PST 1998 Manish Singh <yosh@gimp.org>
34
35         * glib.h: reimplemented the endian stuff, using inline asm
36         for x86. #define g_htonl and friends.
37
38         * testglib.c: new tests for the endian stuff
39
40         * configure.in: care for AIX in gmodule linker flags test (from
41         Joel Becker <jlbec@raleigh.ibm.com>). Check $host_os for linux
42         instead of existance of /usr/include/linux
43
44         * gutils.c: buh-bye evil warning. Thou hast been #ifdef'd out
45         of thine existance!
46
47 Tue Oct 27 03:00:50 1998  Tim Janik  <timj@gtk.org>
48
49         * glib.h: removed dummy structure definitions for struct _GCache,
50         _GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk.
51
52         * gutils.c: implement glib's inline functions _after_ all include
53         statements have been processed.
54         removed Tor's MAXPATHLEN check since there already was one supplied
55         further down in this file.
56         (LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32,
57         since lcc maybe used on other platforms as well. why in hell is this
58         stuff required?
59         (g_get_any_init): for windows, if the user name is supplied, use it as
60         realname also.
61         in general, if there is no homedir specified, use the tmpdir that
62         we already figured.
63
64         * gtimer.c (g_timer_elapsed): changed a g_assert() statement to
65         g_return_if_fail().
66
67         * applied glib-tml-981020-0.patch for WIN32 portability, added some
68         comments and g_return_if_fail() statements, minor indentation fixes.
69         ChangeLog entry from Tor Lillqvist is appended.
70
71         * glib.h (struct dirent): use lower case structure members.
72
73         * glib.h: 
74         * makefile.lcc:
75         * makefile.msc:
76         s/COMPILING_GLIB/GLIB_COMPILATION/
77
78 1998-10-20: Tor Lillqvist <tml@iki.fi>
79
80         * README.win32 glib.def gmodule.def
81         * glibconfig.h.win32 gmodule/gmoduleconf.h.win32:
82         New files for the Windows port. The .def files list exported
83         symbols for the Microsoft linker and compatibles.
84
85         * configure.in:
86         Added checks for some platform-dependent headers: pwd.h sys/param.h
87         sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat.
88
89         * gerror.c:
90         Conditionalized inclusion of system-dependent headers. Changes
91         for Windows: no gdb to do a stack trace. Just call abort().
92
93         * glib.h:
94         Changes for Windows:
95
96         Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for
97         platform-dependent file name syntax elements. Added macros
98         G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for
99         platform-dependent search path syntax conventions.
100
101         Added pragmas for Microsoft C to make it more pedantic.
102
103         Marked GLib's global variables for export from DLL.
104
105         Added the function g_strescape that escapes backslashes.
106
107         Added functions g_path_is_absolute and g_path_skip_root to
108         handle platform-dependent file name syntax.
109
110         Added the function g_getenv that expands environment variables
111         that contain references to other environment variables, as is
112         typical on Windows NT.
113
114         Added the GIOChannel structure which is used to encapsulate the
115         IPC mechanism used by the GIMP's plug-ins, and possibly other
116         things later. On Unix a GIOChannel encapsulates just a file
117         descriptor. On Windows it contains a file handle from _pipe() and a
118         few other things related to the implementation of gdk_input_add
119         and GIMP plug-in communication. Subject to change.
120
121         Removed duplicate declarations of the version variables.
122
123         For the Microsoft compiler, declare own implementation of
124         ftruncate and the <dirent.h> functions.
125
126         * gmem.c:
127         Define a symbolic name  for the profiling table size.
128
129         * gmessages.c:
130         Conditionalized inclusion of unistd.h. On Windows, output using
131         stdio to stdout.
132
133         * gscanner.c:
134         Conditionalized inclusion of unistd.h. Added changes for
135         Microsoft C. Added CR to the skipped character set. Added small
136         workaround for MSC compiler bug in g_scanner_cur_value.
137         
138         * gstrfuncs.c:
139         Added the function g_strescape, which escapes the backslash
140         character. Needed especially when printing Windows filenames.
141
142         * gtimer.c:
143         Conditionalized inclusion of unistd.h and sys/time.h. Added
144         implementations for Windows.
145
146         * gutils.c:
147         Conditionalized inclusion of platform-dependent headers. Use
148         the platform-independent file name syntax macros.
149         Conditionalize code on platform-dependent features. Added the
150         functions g_path_is_absolute g_path_skip_root and g_getenv.
151         Added the GIOChannel-related functions. Added
152         compiler-dependent Unix compatibility functions for Windows.
153
154         * makefile.lcc makefile.msc:
155         New files. Compiler-specific makefiles for LCC-Win32 and
156         Microsoft C. Only Microsoft C is actually supported currently.
157         
158         * testglib.c:
159         Added pathname check cases for Windows. Added workaround for
160         bug in the Microsoft runtime library. Improved some tests a bit.
161         
162 Sun Oct 25 01:24:01 CST 1998 Shawn T. Amundson <amundson@gtk.org>
163
164         * Released GLib 1.1.4
165
166         * docs/Makefile.am:
167         * docs/.cvsignore
168         * docs/glib-config.1: 
169         * docs/glib.texi: Moved docs from gtk and created glib-config.1 
170         from gtk-config.1 in gtk
171
172         * configure.in:
173         * Makefile.am:
174         * sanity_check: added in docs directory, change rule 'release'
175         to 'snapshot' and created a new 'release' rule for doing the
176         distribution.  Added in a 'sanity' rule.
177
178         * NEWS:
179         * README: 
180         * INSTALL: Updated for the release
181
182 Sun Oct 25 07:30:10 1998  Tim Janik  <timj@gtk.org>
183
184         * gscanner.c:
185         (g_scanner_peek_next_char): 
186         (g_scanner_get_char): no more characters are available if read() returns
187         anything less than 1, not only on 0 return.
188
189         * glib.h: 
190         * gstrfuncs.c: final API cleanup of string arrays to suit sopwith's
191         argument order requirements.
192         (g_strsplit): renamed from g_str_array_split().
193         (g_strjoinv): renamed from g_str_array_joinv(), string array is
194         now passed as last parameter. removed `const' qualifier from string
195         array pointer (again).
196         (g_strjoin): new function from sopwith to concatenate strings with
197         an additional seperator.
198         (g_strfreev): renamed from g_str_array_free.
199
200 Sat Oct 24 22:23:04 PDT 1998 Manish Singh <yosh@gimp.org>
201
202         * gnode.c: small fix to g_node_children_foreach to make it work right.
203         From Paco Moya <paco@cadnotebk17.eecs.berkeley.edu>
204
205 Wed Oct 21 19:22:58 1998  Tim Janik  <timj@gtk.org>
206
207         * configure.in (G_MODULE_HAVE_DLERROR): reverted part of the changes
208         from Sebastian Wilhelmi (1998-10-20). don't specify a specific loading
209         behaviour (i.e. RTLD_NOW) when we are not sure whether it is supplied.
210         changed the return value from (!f2 && f1) to (!f2 || f1) so we default
211         to not needing an underscore. reverted the extra plugin.c building,
212         because .lo files are not ELF libraries, this can't work. This needs
213         further investigation on Solaris...
214
215 Wed Oct 21 17:03:05 1998  Tim Janik  <timj@gtk.org>
216
217         * glib.h: 
218         * gstrfuncs.c: API cleanups of the new g_str* functions for consistency
219         with the existing naming scheme for g_str* functions. grouped the g_str*
220         functions that will return a newly allocated string seperatedly. all of
221         the in_place arguments were skipped, the caller is supposed to pass a
222         g_strdup()ed string if he wants to retrive a new copy. indentation and
223         coding style fixups. added some g_return_if_fail() statements.
224         string array functions are prefixed with g_str_array_.
225         (g_strdelimit): return the modified string like all other g_str*
226         functions, that operate in place.
227         (g_strchug): renamed from g_str_chug(), removed in_place argument.
228         (g_strchomp): renamed from g_str_chomp(), removed in_place argument.
229         (g_strstrip): renamed from g_str_strip(), removed in_place argument.
230         (g_str_array_join): renamed from g_strconcatv(), since it actually
231         operates on a string array and has totaly different semantics from
232         g_strconcat(). check for separator != NULL, don't segfault if the first
233         string is NULL. removed the `const' from the string array that's passed,
234         so users can operate on gchar** string arrays.
235         (g_str_array_split): renamed from g_str_split() because we actually
236         produce a string array. reimplemented this function for efficiency.
237         removed macro aliases g_str_joinv and g_str_join.
238
239 1998-10-20  Elliot Lee  <sopwith@redhat.com>
240
241         * glib.h, gstrfuncs.c: Move string join/split/free routines from
242         libgnome/gnome-string, rename, and add g_str_chug.
243
244 1998-10-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
245
246         * configure.in: made the check for needed _ in module's func-names
247         work on solaris. (G_MODULE_NEED_USCORE must be set outside
248         AC_CACHE_VAL, dlopen(0,0) refused to work on solaris).
249
250 Tue Oct 20 03:32:58 PDT 1998 Manish Singh <yosh@gimp.org>
251
252         * configure.in
253         * acconfig.h: added test for endianness
254
255         * glib.h: #define endian macros for system and some conversions
256         between byte order
257
258 Thu Oct  8 06:47:27 1998  Tim Janik  <timj@gtk.org>
259
260         * glib.h:
261         * gdataset.c: removed functions g_dataset_id_set_destroy and
262         g_datalist_id_set_destroy and macros g_dataset_set_destroy and
263         g_datalist_set_destroy.
264         added new functions g_dataset_id_remove_no_notify and
265         g_datalist_id_remove_no_notify plus associated macros
266         g_dataset_remove_no_notify and g_datalist_remove_no_notify, which
267         will remove a certain data portion without invokation of its destroy
268         notifier, this should only be used in very controled circumstances.
269
270 Wed Oct  7 05:31:24 1998  Tim Janik  <timj@gtk.org>
271
272         * glib.h:
273         removed the #pragma } statement after extern "C" {. use
274         (c-set-offset 'inextern-lang 0) to fixup emacs cc-mode indentation.
275
276         * glib.h:
277         * ghook.c: API and code cleanups. changed the G_HOOK_ACTIVE and
278         G_HOOK_IN_CALL enum vals to G_HOOK_FLAG_ACTIVE and G_HOOK_FLAG_IN_CALL.
279         changed the G_HOOK_IS_ACTIVE() and G_HOOK_IS_IN_CALL() macros to
280         G_HOOK_ACTIVE() and G_HOOK_IN_CALL().
281         fixed the g_hook_find* functions, so they iterate over non-active
282         hooks as well.
283         (g_hook_first_valid):
284         (g_hook_next_valid): added an extra argument gboolean may_be_in_call,
285         which indicates whether G_HOOK_IN_CALL() hooks are considered valid
286         or not. these two functions are meant as iterators for the hook list
287         invocation, so they need to a) provide functionality to implement
288         may_recurse bahaviour and b) only walk active hooks.
289
290 Tue Oct  6 14:29:47 1998  Tim Janik  <timj@gtk.org>
291
292         * gmem.c (g_malloc0): fixed memory offsett when ENABLE_MEM_CHECK is
293         defined and ENABLE_MEM_PROFILE is not (patch from Martin Pool
294         <mbp@wistful.humbug.org.au>).
295
296 Sat Oct  3 01:18:10 1998  Tim Janik  <timj@gtk.org>
297
298         * glib.h:
299         * ghook.c:
300         (g_hook_list_invoke):
301         (g_hook_list_invoke):
302         (g_hook_list_marshal): properly handle the first valid hook to call,
303         it maybe IN_CALL already.
304         (g_hook_list_marshal): minor name change.
305
306 Fri Oct  2 23:21:21 1998  Tim Janik  <timj@gtk.org>
307
308         * glib.h:
309         * ghook.c: renamed GHook.id to GHook.hook_id so we don't get troubles
310         with ObjC which reserves "id" as a keyword (Raja R Harinath
311         <harinath@cs.umn.edu>).
312
313 Wed Sep 30 10:53:03 1998  Tim Janik  <timj@gtk.org>
314
315         * Makefile.am: added ghook.c.
316
317         * glib.h:
318         * ghook.c: generic callback maintenance functions.
319
320         * glib.h: define G_GNUC_UNUSED.
321
322 Fri Sep 25 00:04:37 1998  Tim Janik  <timj@gtk.org>
323
324         * configure.in: version bump to 1.1.4, binary age 0, interface age 0.
325
326         * glib.h (struct _GScanner): dumped peeked_char and text_len in favour
327         of *text_end and *buffer for buffered read()s.
328
329         * gscanner.c: changed peeking and retrival of next character so we
330         have buffered reads. fixed minor bug with number parsing error
331         reporting. made some static!!! variables local ones (why did we use
332         static temporary variables in the lowlevel tokenization code anyways?).
333
334 Mon Sep 21 23:23:10 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
335
336         * Released GLib 1.1.3
337
338 Mon Sep 21 07:43:13 1998  Tim Janik  <timj@gtk.org>
339
340         * glib.h: added g_renew() which works as g_new() for g_realloc().
341
342 Mon Sep 21 02:22:12 1998  Tim Janik  <timj@gtk.org>
343
344         * NEWS file update for upcoming release of GLib + GModule
345         version 1.1.3, binary age 0, interface age 0. (GModule uses
346         the same version numbers as GLib.)
347
348         * glib.h: swap the inclusion of of float.h and limits.h to work
349         around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by
350         Per Abrahamsen  <abraham@dina.kvl.dk>).
351
352         * glib.h:
353         * gscanner.c: renamed the GValue union to GTokenValue, this should
354         not affect source compatibility in most cases.
355
356         * ghash.c: added some g_return_if_fail() statements. make
357         g_hash_table_lookup_node() an inline function so we save an extra
358         function invokation on lookups.
359
360 Sun Sep 20 18:21:46 1998  Owen Taylor  <otaylor@redhat.com>
361
362         * ltconfig.sh: Patch to libtool-1.2b to make --disable-static
363         work.
364
365 Sun Sep 20 02:09:44 1998  Josh MacDonald  <jmacd@axis.hip.berkeley.edu>
366
367         * glib.h: New function g_hash_table_foreach_remove is similar to
368         g_hash_table_foreach, but the callback's return value indicates
369         whether to remove the element (if TRUE) or not (if FALSE).  
370         Returns the number of elements deleted.
371
372 Fri Sep 18 11:31:50 PDT 1998 Manish Singh <yosh@gimp.org>
373
374         * glib.h
375         * gstrfuncs.c: added g_memdup implementation
376
377 Fri Sep 18 18:46:14 1998  Tim Janik  <timj@gtk.org>
378
379         * glib.h:
380         * gdataset.c: make the datalists a safe type (not using a generic
381         gpointer) by expecting a GData* argument in the g_datalist functions.
382         provide g_dataset_foreach() and g_datalist_foreach() functions that
383         allow a GDataForeachFunc function to walk the data lists.
384         (g_dataset_destroy_internal): made this function truely reentrant (i.e.
385         can be called from within destroy notifiers as well).
386         the *_foreach functions are _not_ reentrant (unless all the other
387         dataset and datalist functions).
388
389 Fri Sep 18 03:41:20 1998  Tim Janik  <timj@gtk.org>
390
391         * gtree.c (g_tree_new): check for key_compare_func != NULL (reported
392         by Michal Kara).
393
394 Thu Sep 17 18:55:46 PDT 1998 Manish Singh <yosh@gimp.org>
395
396         * config.h.in: removed from repository
397
398         * install-sh
399         * missing
400         * mkinstalldirs: updated to latest automake version
401
402 Thu Sep 17 06:36:25 1998  Tim Janik  <timj@gtk.org>
403
404         * glib.h:
405         * gdataset.c: implemented g_datalist_* along the lines of g_dataset,
406         but operates on an opaque gpointer *datalist; pointer, e.g. for the
407         implementation of GtkObject named data.
408         we cache a certain portion of the already freed data entries now, to
409         gain a slight performance improve with data reallocation.
410
411 Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>
412
413         * Makefile.am glib-config.in l*: Update to libtool-1.2b,
414         change library versioning scheme to drop LT_RELEASE
415         from the -l line, while keeping it in the soname.
416
417 Fri Sep 11 02:11:46 1998  Tim Janik  <timj@gtk.org>
418
419         * glib.h: explicitely include the prototypes for inline functions
420         to cure gcc warnings for -Wmissing-prototypes.
421
422 Wed Sep  9 02:52:04 PDT 1998 Manish Singh <yosh@gimp.org>
423
424         * configure.in: added -posix check for NeXTStep
425
426 Tue Sep  8 05:04:06 1998  Tim Janik  <timj@gtk.org>
427
428         * glib.h: abandon the use of ATEXIT(), we keep the fallback
429         macros for backwards compatibility. people ought to use g_atexit().
430
431         * gutils.c (g_atexit): new function to take over the implementation
432         of ATEXIT. this function is guarranteed to succeed, similar to
433         g_malloc().
434
435 Mon Sep  7 20:07:38 PDT 1998 Manish Singh <yosh@gimp.org>
436
437         * configure.in: comment the -std1 check and save LIBS properly
438
439 Mon Sep  7 07:53:21 1998  Tim Janik  <timj@gtk.org>
440
441         * configure.in: check for all three inline keywords individually.
442
443         * glib.h: inlining hassle. for compilers that don't allow the `inline'
444         keyword, mostly because of strict ANSI C compliance or dumbness, we try
445         to fall back to either `__inline__' or `__inline'. 
446         we define G_CAN_INLINE, if the compiler seems to be actually *capable*
447         to do function inlining, in which case inline function bodys do make
448         sense. we also define G_INLINE_FUNC to properly export the function
449         prototypes if no inlinig can be performed. we special case most of the
450         stuff, so inline functions can have a normal implementation by defining
451         G_INLINE_FUNC to extern and G_CAN_INLINE to 1.
452
453         * ltconfig: (compiler PIC flag test): special case linux for non
454         aout systems to honour lcc's position independant code (cases
455         "linux*aout)" and "linux*)" got added). (this needs to go into
456         libtool which does an advanced test, checking for __LCC__).
457
458         * autogen.sh: take $CC=lcc into account by invoking automake with
459         --include-deps so lcc isn't scared by gcc's auto-dependancy
460         generation code. care about $ACLOCAL_FLAGS. optionally feature
461         autoheader.
462
463         * minor fixups in other places to cure some of lcc's warnings.
464
465 Sun Sep  6 19:08:53 PDT 1998 Manish Singh <yosh@gimp.org>
466
467         * configure.in: added -std1 check for ANSI compliance (from gtk)
468
469 Sun Sep  6 12:31:50 PDT 1998 Manish Singh <yosh@gimp.org>
470
471         * glib.h: provide proper ATEXIT behavior on NeXTStep by !atexit
472
473 Sat Sep  5 18:03:36 1998  Tom Tromey  <tromey@cygnus.com>
474
475         * gutils.c (GLIB_INLINE): Define.
476         * glib.h (GLIB_INLINE): New define.
477         (g_bit_nth_msf): Use it.  Also, add prototype.
478         (g_bit_storage): Likewise.
479         (g_bit_storage): Likewise.
480
481 Sat Sep  5 04:40:02 1998  Tim Janik  <timj@gtk.org>
482
483         * glib.h: 
484         (g_chunk_new0): use g_mem_chunk_alloc0() to allocate the memchunk,
485         so the correct size of the memchunk is allocated with 0's and not
486         a memory portion of the size of the desired type.
487
488         * gmem.c: new function g_mem_chunk_alloc0() which will initialize
489         a memory area allocated with g_mem_chunk_alloc() with 0's.
490
491 Wed Sep  2 19:13:28 1998  Owen Taylor  <otaylor@redhat.com>
492
493         * garray.c glib.h (g_array_[ap/pre]pend_vals): make
494         data argument const.
495
496 Wed Aug 26 06:32:40 1998  Tim Janik  <timj@gtk.org>
497
498         * glib.h:
499         * gstrfuncs.c: new function g_strnfill() to return a new string
500         of specified length, filled with a specific character.
501
502 Tue Sep  1 23:46:31 1998  Josh MacDonald  <jmacd@axis.hip.berkeley.edu>
503
504         * testglib.c (main): Update the array tests.  Reduce the number of
505         iterations for the prepend test from 10000 to 100 since it is
506         O(n^2) and was taking longer than I would like to wait.
507
508         * garray.c: I've worked on the GArray interface, mostly.  It was
509         seriously broken before and I hate to do it, but this is going to
510         break some code.  It is important to do this now, because more and
511         more people are starting to use glib and the interface was both
512         broken and inconsistent.  First, rename the _truncate functions of
513         both the GArray and GPtrArray classes to _set_size, since this
514         function can also be used to extend the arrays.  GArray now
515         accepts two more initialization arguments: clear and element_size.
516         Instead of providing the type to each access function, the array
517         now stores the element size.  Clear, if set, causes the library to
518         zero element's memory as the array expands.  The major broken-ness
519         here was that array->len was in bytes, not elements.  Now, since
520         the array knows its element size, array->len is correct and I have
521         removed the g_array_length macro.  The only macro which now
522         accepts the type as an argument is g_array_index, which casts the
523         element to the right type--this interface does not change.  The
524         append and prepend functions simply need the types removed.
525         g_ptr_array_remove_index now returns the removed element.
526
527         * gprimes.c (g_spaced_primes_closest): Move this function out of
528         ghash.c and rename it from g_hash_closest_prime.  Fix the primes
529         so that they are actually prime (they weren't all -- isn't that
530         nice?).
531
532 Mon Aug 24 02:08:56 1998  Tim Janik  <timj@gtk.org>
533
534         * glib.h:
535         * gstring.c:
536         * gstrfuncs.c:
537         (g_vsprintf): removed this function which was not publically
538         exported in glib.h. to export it, it should have been named
539         differently in the first place, since its semantics differ from
540         vsprintf(). apart from that, it was a possible cause for
541         problems since it worked on a previously allocated memory area and
542         was used in a lot places of glib. exporting it would have been a
543         guararant for problems with threaded programs.
544         (g_printf_string_upper_bound): exported this function to return
545         a string size, guarranteed to be big enough to hold the fully
546         expanded format+args string. added 'q', 'L' and 'll' flag handling.
547         in fact, the newly allocated area is in most cases much bigger than
548         required.
549         (g_strdup_vprintf()): new function returning a newly allocated string
550         containing the contents of *format and associated args (size is
551         calculated with g_printf_string_upper_bound()).
552         (g_strdup_printf): new function which wraps g_strdup_vprintf().
553
554         * configure.in: check for va_copy() or __va_copy() alternatively.
555         check whether va_lists can be copyied by value.
556
557         * glib.h: provide a definition for G_VA_COPY.
558
559         * glib.h:
560         * gmessages.c:
561         (g_logv):
562         (g_vsnprintf):
563         pass va_lists by value, not by reference, since this causes problems
564         on platforms that implement va_list as as arrays. internaly, use
565         G_VA_COPY (new_arg, org_arg); va_end (new_arg); to produce a second
566         va_list variable, if multiple passes are required. changed all
567         callers.
568
569         * glib.h:
570         * gerror.h:
571         renamed g_debug() to g_on_error_query(), cleaned up a bit.
572         renamed g_stack_trace() to g_on_error_stack_trace() since both
573         functions cluttered different namespaces.
574         there is an appropriate comment in glib.h now that explains the
575         unix and gdb specific dependencies of both functions.
576         removed g_attach_process().
577         g_on_error_stack_trace() should probably be handled with caution,
578         i've seem several different linux versions (2.0.x) become unstable
579         after invokation of this function.
580
581 1998-08-18: Elliot Lee <sopwith@redhat.com>
582
583         * In gmem.c, add the ability to exclude memory chunks from the
584           memory profiling information.
585
586 Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org>
587
588         * glib.h
589         * gstrfuncs.c: added g_strndup
590
591 Tue Aug 18 04:40:17 1998  Tim Janik  <timj@gtk.org>
592
593         * glib.h:
594         * gmessages.c: new function g_log_set_always_fatal() to set an
595         additional fatal_mask for log levels that are considered to be fatal
596         globally (required by gtk). since this mask is not domain-associated,
597         it is restricted to the log levels, introduced by glib itself.
598
599         * gmem.c:
600         * grel.c:
601         * gtree.c (g_tree_node_check):
602         don't use g_print() calls for informational/debugging output,
603         but log all this stuff through g_log() with G_LOG_LEVEL_INFO.
604         libraries shouldn't use printf(), g_print() or g_printerr() at all.
605
606 Tue Aug 18 02:46:44 1998  Tim Janik  <timj@gtk.org>
607
608
609         * glib.h (__STRICT_ANSI__): if __STRICT_ANSI__ is defined, make
610         `inline' a noop, since strict ANSI rules don't permit `inline'.
611
612 Mon Aug 17 15:21:42 1998  Tim Janik  <timj@gtk.org>
613
614         * grel.c: made private functions static.
615
616 Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
617
618         * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to
619           EXTRA_DIST
620         * glib.spec: version = 1.1.3
621
622 Mon Aug 17 01:46:14 1998  Tim Janik  <timj@gtk.org>
623
624         * glib.m4: feature an extra MODULES parameter, so glib-config can
625         be invoked with the "gmodule" argument.
626
627         * glib.h: changed the log level to G_LOG_LEVEL_CRITICAL for all
628         g_return*_if_fail statements, and made them issue a message
629         like "assertion `%s' failed".
630
631         * gmessages.c (g_logv): ugh, don't pass log_domain as NULL to
632         g_log_find_domain.
633
634 Sun Aug 16 20:28:27 1998  Tim Janik  <timj@gtk.org>
635
636         * version bump to 1.1.3, binary age 0, interface age 0.
637
638         * glib.h: be nice to platforms that don't have gint64 and don't
639         issue #warning on every compilation. since glib doesn't require
640         gint64 itself, packages that need gint64 should test for this
641         themselves.
642
643         * glib.h:
644         * gutils.c: added a new function g_vsnprintf().
645
646 Sun Aug 16 Elliot Lee
647
648         glib.h: #error out if we don't recognize the SIZEOF_VOID_P
649                 #warning if no gint64
650
651 Fri Aug 14 16:41:53 1998  Tim Janik  <timj@gtk.org>
652
653         * glib.h: added static inline functions for bit mask tests:
654         g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage.
655
656 Fri Aug 13 14:23:37 1998  Tim Janik  <timj@gtk.org>
657
658         * glib.h:
659         * gmessages.c:
660         revised the message handling system, which is now based on a new
661         mechanism g_log*. most of the assertment macros got adapted to
662         feature the new g_log() call with an additional specification of
663         the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN
664         is undefined upon the includion of glib.h, it'll be defined with a
665         value of (NULL) and thus preserves the original bahaviour for
666         warning and error messages. the message handler setting functions
667         for g_warning, g_error and g_message are only provided for backwards
668         compatibility and might get removed somewhen.
669
670         * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain
671         to "GLib" upon compilation. we currently have to add this definition
672         to the DEFS variable.
673         * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start
674         of this file currently, since automake doesn't support per target
675         _CFLAGS yet.
676
677         * glib.h: changed some gints to gbooleans, made a few const corrections,
678         removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some
679         in other required places.
680
681         * gnode.c:
682         (g_node_prepend):
683         (g_node_insert_before):
684         (g_node_insert):
685         (g_node_append_data):
686         (g_node_prepend_data):
687         (g_node_insert_data_before):
688         (g_node_insert_data):
689         (g_node_append):
690         return (node), so these macros/functions can be usefully chained with
691         g_node_new().
692
693 Mon Aug 10 17:56:11 PDT 1998 Manish Singh <yosh@gimp.org>
694
695         * glib.h: it's GTime now, and it's back!
696
697 Mon Aug 10 02:17:19 1998  Tim Janik  <timj@gtk.org>
698
699         * Makefile.am: minor hack to cause SUBDIRS (gmodule) to be build
700         last. we do this by making all-recursive-am depend on all-am.
701
702 Sun Aug  9 15:56:11 1998  Tim Janik  <timj@gtk.org>
703
704         * configure.in: added GModule checks. generate files in gmodule/.
705         * glib-config.in: support library specifications `glib' and `gmodule'.
706         * Makefile.am: feature the gmodule/ subdir.
707
708 Wed Aug  5 10:04:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
709
710         * Released GLib 1.1.2
711
712 Wed Aug 05 01:15:36 1998  George Lebl  <jirka@5z.com>
713
714         * testglib.c: fix 64-bitness in g_prints, sizeof doesn't
715           seem to return int so I cast it for printing, probably
716           just cosmetic
717
718 Tue Aug  4 19:54:06 PDT 1998 Shawn T. Amundson <amundson@gkt.org>
719
720         * Released GLib 1.1.1
721
722 Tue Aug  4 15:17:54 1998  Tim Janik  <timj@gtk.org>
723
724         * configure.in: version bump to 1.1.1, binary age 1, interface age 0.
725         * NEWS: updates.
726         * README: updates.
727         * INSTALL: updates and fixes.
728         * COPYING: include the GNU LGPL, rather than shipping an empty file.
729         * AUTHORS: listed original authors here, and added people who made
730         significant improvements to glib.
731
732         * glib.h:
733         * gutils.c: implement g_get_current_dir() which returns a newly
734         allocated string, instead of a g_getcwd() variant that operates
735         on a static buffer.
736         export glib_interface_age and glib_binary_age.
737         as a convenience, macro definitions have been added for
738         g_node_insert_data, g_node_insert_data_before, g_node_append_data and
739         g_node_prepend_data.
740
741         * testglib.c: minor cleanups, print current dir.
742
743 Mon Aug  3 16:02:26 1998  Tim Janik  <timj@gtk.org>
744
745         * glib.h:
746         * gnode.c: change order of gpointer data; field in struct _GNode to
747         be partly binary compatible with GList and GSList.
748
749 1998-08-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
750
751         * garray.c (g_ptr_array_remove_index): bugfix: index check for
752         array has been wrong.
753
754 Fri Jul 31 22:17:05 1998  Tim Janik  <timj@gtk.org>
755
756         * testglib.c (g_node_test): added a GNode test.
757
758 Fri Jul 31 09:08:16 1998  Tim Janik  <timj@gtk.org>
759
760         * Makefile.am: compile gnode.c.
761
762         * glib.h:
763         * gnode.c: added implementation of n-way trees.
764
765         * gtree.c (g_tree_traverse): added a warning to the switch() statement
766         which says that G_LEVEL_ORDER is not implemented.
767
768 Mon Jul 27 00:17:30 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
769
770         * Released GLib 1.1.0
771
772 Mon Jul 27 01:02:27 1998  Tim Janik  <timj@gtk.org>
773
774         * glib.h: #if 0'ed out the GTime definition, until it is definitively
775         needed. #if 0'ed out the g_getcwd() version, because it is the wrong
776         implementation.
777
778 Sat Jul 25 16:09:00 1998  Mark Crichton <crichton@expert.cc.purdue.edu>
779
780         * glib.h: gtime changed to g_time.  gtime is used in
781         /usr/include/time.h in NetBSD, causing multiple headaches.
782         If this isn't the right way of fixing it.... ;)
783
784 Thu Jul 23 00:29:14 1998  Tim Janik  <timj@gtk.org>
785
786         * glib.h:
787         * gscanner.c: new functions to make a scanner scope sensitive wrt
788         symbol lookups.
789         g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
790         g_scanner_scope_remove_symbol, g_scanner_scope_add_symbol and
791         g_scanner_set_scope.
792         g_scanner_add_symbol, g_scanner_remove_symbol and
793         g_scanner_foreach_symbol are now aliases for scope 0.
794
795 Mon Jul 20 23:05:34 1998  George Lebl  <jirka@5z.com>
796
797         * glib.h: typo fixed for alphas for gint64
798
799 Tue Jul 14 09:05:18 1998  Tim Janik  <timj@gtk.org>
800
801         * glib.h:
802         * gutils.c: new fuction g_dirname() which returns a newlly
803         allocated string.
804
805 Fri Jul 10 06:33:43 1998  Tim Janik  <timj@gtk.org>
806
807         * glib.h:
808         * gutils.h: added a bunch of utility/wrapper functions:
809         g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
810         g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
811
812         * gutils.c: removed all g_str* functions.
813         * gstrfuncs.c: moved the bunch g_str* functions from gutils.c in this
814         place. this file shall never include <unistd.h> to avoid clashes for
815         some of the g_str* functions on some OSes.
816
817 Fri Jul 10 00:29:03 EEST 1998 Lauri Alanko <nether@gimp.org>
818
819         * glib.h:
820         * ghash.c: Renamed g_hash_table_lookup_full to
821         g_hash_table_lookup_extended to conform with naming conventions.
822
823 Tue Jul  7 03:18:58 EEST 1998 Lauri Alanko <nether@gimp.org>
824
825         * glib.h:
826         * ghash.c: Generic cleanup, added a function:
827         (g_hash_table_lookup_full): Return whether the lookup succeeded,
828         and also retrieve the key and value. This allows one to
829         distinguish between failed lookup and finding a NULL, and also
830         allows one to free a key in the hash.
831
832 Mon Jul  6 10:12:05 PDT 1998 Manish Singh <yosh@gimp.org>
833
834         * ltconfig: fix for properly detecting shared lib support on
835         SunPro cc (taken from libtool 1.2.a)
836
837 Sat Jul  4 13:38:52 PDT 1998 Manish Singh <yosh@gimp.org>
838
839         * glib.h: added g_array_length
840
841 Tue Jun 30 11:58:25 1998  Tim Janik  <timj@gtk.org>
842
843         * gscanner.c (g_scanner_unexp_token): take symbol_2_token into
844         account. react on valid/invalid string pairs.
845
846 Sat Jun 27 21:55:46 PDT 1998 Manish Singh <yosh@gimp.org>
847
848         * glib.m4: ftp.glib.org -> ftp.gtk.org, since glib.org isn't
849         ours. ;)
850
851 Fri Jun 19 03:11:02 1998  Tim Janik  <timj@gtk.org>
852
853         * gdataset.c: removed g_dataset_try_key, g_dataset_force_id and
854         g_dataset_retrive_key in favour of GQuarks.
855         a GQuark is an numeric id wich is associated with a certain string.
856         (g_quark_try_string): try to get the quark associated with this string,
857         if the lookup failed return 0.
858         (g_quark_from_string): get the associated quark for a string, if there
859         isn't currently a GQuark associated with this string, then allocate a
860         new quark and return that.
861         (g_quark_from_static_string): like the above function, but the string
862         isn't strdup()ed to save memory.
863         (g_quark_to_string): get the string that is associated with a certain
864         GQuark.
865
866         * gdataset.c (g_dataset_id_set_data_full): invoke the destroy function
867         _after_ the new data has been setup.
868
869 Thu Jun 18 02:35:21 1998  Owen Taylor  <otaylor@gtk.org>
870
871         * glib.h: Changed messages for g_return_[val]_if_fail to
872         be somewhat more clear: assertion "blah" failed.
873
874 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
875
876         * testglib.c (main): Use GINT_TO_POINTER casts to remove compiler
877         warnings.
878
879         * grel.c: #include <string.h>
880
881 Fri Jun 12 15:39:06 1998  Tim Janik  <timj@gtk.org>
882
883         * glib.h (GScanner): cleanups of the structure fields (binary
884         incompatible).
885
886 Fri Jun 12 00:39:28 1998  Josh MacDonald  <jmacd@icw.EECS.Berkeley.EDU>
887
888         * glib.h: add new hash and equal functions g_int_*.  complement
889         g_direct_hash with g_direct_equal.
890
891         * grel.c: new file, GRelations implement tuples of N-N mappings.
892         A comment in glib.h briefly describes the interface.
893
894         * ghash.c: new function, g_hash_table_size
895
896         * glib.h: new typedefs, gsize, gssize, gtime.
897
898         * garray.c: new functions implementing a simplified GArray.  This
899         GPtrArray is an array of gpointers and has functions to add and
900         remove elements, much like java.lang.Vector.
901
902         * garray.c: new functions for the single-byte special case of
903         GArray.  The functions g_byte_array* operate on arrays of bytes.
904         Internally, a GArray is used.
905
906         * testglib.c: tests for g_ptr_array, g_byte_array, and g_relation...
907
908 1998-06-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
909
910         * gdataset.c: #include <string.h>
911
912 Thu Jun 11 04:15:31 1998  Tim Janik  <timj@gtk.org>
913
914         * glib.h:
915         * gdataset.c: new function g_dataset_retrive_key. adjusted prealloc
916         sizes, to take up less space on initial allocation.
917
918 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
919
920         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
921         the version from which glib's libtool forked.  Needed for people
922         who use post-1.2 alphas of libtool.
923         * configure.in (enable_mem_check, enable_mem_profile): Replace
924         `echo -n' with AC_MSG_CHECKING.
925         (fd_set): Explain test for `fd_set' better.
926
927 Wed Jun 10 19:29:51 1998  Owen Taylor  <otaylor@gtk.org>
928
929         * Makefile.am glib.m4 configure.in:
930
931         Moved out from GTK+; added AM_PATH_GLIB macro.
932
933 Wed Jun 10 12:56:07 1998  Owen Taylor  <otaylor@gtk.org>
934
935         * glib.h: renamed g_const_pointer => gconstpointer
936
937 Tue Jun  9 17:47:33 1998  Owen Taylor  <otaylor@gtk.org>
938
939         * glib.h: Remove #error - HP/UX.
940
941 Sat May 23 19:00:01 1998  Owen Taylor  <otaylor@gtk.org>
942   [ Combination of:
943      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
944      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
945
946         * glib.h ghash.c gstring.c gdataset.c gutils.c:
947         - Added new typedef g_const_pointer; expunged all incorrect
948           uses of 'const gpointer'.
949         - Fixed up warnings that that created,
950         - Changed GHashFunc and GCompareFunc to take g_const_pointer
951           arguments. (Necessary, but will cause warnings in existing
952           code until fixed)
953         - Added other new const in harmless positions.
954
955 Mon Jun  8 01:06:47 1998  Tim Janik  <timj@gtk.org>
956
957         * glib.h: added enum-helper macros for code generation.
958         added G_BREAKPOINT().
959
960 Sat Jun  6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org>
961
962         * gmem.c: commented out MEM_PROFILE and MEM_CHECK, causing weird
963         problems
964
965 Wed Jun  3 06:19:42 1998  Tim Janik  <timj@gtk.org>
966
967         * glib.h (g_chunk_new0): convenience macro, for allocating small chunks
968         like g_chunk_new() with additional 0 initialization.
969
970 Mon Jun  1 04:43:27 1998  Tim Janik  <timj@gtk.org>
971
972         * ghash.c (g_hash_table_insert): wrote a comment describing why
973         a hash node's key should not also get replaced when overriding
974         previous entries.
975
976 Tue May 26 18:30:06 1998  Tim Janik  <timj@gtk.org>
977
978         * glib.h (g_string_sized_new): new function to controll the preallocated
979         size of a GString.
980
981         * glib.h (g_strreversed): new function to reverse a string.
982
983 Mon May 18 22:14:39 1998  Owen Taylor  <otaylor@gtk.org>
984 (Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
985
986         * gutils.c: Restored a missing prototype for g_vsprintf.
987
988 Wed May 20 05:02:26 1998  Tim Janik  <timj@gtk.org>
989
990         * glib.h: conditionally define NULL, FALSE and TRUE.
991         (g_mem_chunk_create): new convenience macro as a short hand for
992         g_mem_chunk_new().
993         (g_chunk_free): new convenience macro to be consistent with g_chunk_new.
994
995 Tue, 19 May 1998 09:00:02 +0200  Paolo Molaro <lupus@debian.org>
996
997         * gcompletion.c: generic functions for com<TAB>pletion...
998
999 Sun May 17 10:48:27 1998  Tim Janik  <timj@gtk.org>
1000
1001         * gscanner.c (g_scanner_unexp_token): provide usefull default
1002         specifications for identifier_spec and symbol_spec.
1003
1004         * glib.h: new functions g_slist_nth_data and g_list_nth_data to return
1005         the data of the nth element in the list.
1006
1007 Fri May 15 22:31:49 1998  Tim Janik  <timj@gtk.org>
1008
1009         * gscanner.c (g_scanner_unexp_token): removed spurious va_end(args)
1010         that for some reason didn't produce a compiler warning on my machine
1011         (is va_end defined to nothing for i386?).
1012
1013 Fri May 15 12:32:08 1998  rodo  <doulik@karlin.mff.cuni.cz>
1014
1015         * gscanner.c: replaced some snprintf with g_snprintf
1016
1017 Fri May 15 00:56:59 1998  Tim Janik  <timj@gtk.org>
1018
1019         * glib.h: further support for gcc function attributes: G_GNUC_FORMAT,
1020         G_GNUC_NORETURN and G_GNUC_CONST.
1021
1022         * gscanner.c (g_scanner_stat_mode): changed stat() to lstat().
1023         (g_scanner_msg_handler): "\n" at end of line!
1024         (g_scanner_foreach_symbol): new function to iterate over the symbol
1025         table (GScanner does value-wrapping).
1026
1027 Thu May 14 04:14:12 1998  Tim Janik  <timj@gtk.org>
1028
1029         * glib.h: typedef gint gboolean;
1030         this is needed to provide portability with big-endian platforms (e.g.
1031         try sizeof(bool) for c++ on big-endians - it's 4).
1032         this is also needed to maintain some_union.d_gint==some_union.d_gboolean.
1033         plus, gint to gboolean casts and vice versa need to be possible without
1034         loss.
1035
1036 Tue May 12 19:22:58 1998  Owen Taylor  <otaylor@gtk.org>
1037
1038         * glib/glib.h: Added macros G[U]INT_TO_POINTER() and
1039         GPOINTER_TO_[U]INT for storing small integers integers
1040         inside pointers.
1041
1042         * glib/testglib.c: Print sizeof() results
1043         as g_print("%ld", (glong)sizeof(foo)), to deal with
1044         size_t being long on Alpha's.
1045
1046 Tue May 12 16:54:15 1998  Owen Taylor  <otaylor@gtk.org>
1047         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
1048
1049         * glib.h gstring.c gmessages.c: Added some missing
1050         const to arguments.
1051
1052         * gutils.c (g_strsignal.c): Added missing return statements.
1053
1054 Mon May 11 21:11:54 1998  Owen Taylor  <otaylor@gtk.org>
1055
1056         * gutils.c gmessages.c: Moved g_error, g_warning, g_message and
1057         g_print from gutils.c to new file gmessages.c, to avoid having to
1058         include <unistd.h> in gutils.c which was causing problems for the
1059         g_strsignal implementation on FreeBSD boxes.
1060
1061 Mon May 11 09:53:43 1998  Tim Janik  <timj@gtk.org>
1062
1063         * configure.in: preserve automake CFLAGS.
1064
1065         * Makefile.am: fully rename the created library to libglib-1.1.la.
1066         this means we need to change certain portions of the Makefile.am on
1067         major/minor version bumps.
1068
1069         * ltmain.sh: the -release option is not required anymore.
1070
1071         * glib.h: provide G_GNUC_FUNCTION and G_GNUC_PRETTY_FUNCTION to
1072         avoid conditionals. unconditionally define NULL, TRUE, FALSE, MAX,
1073         MIN, ABS and CLAMP, these macros might be screwed from other headers.
1074
1075 Mon May 11 01:44:10 1998  Tim Janik  <timj@gtk.org>
1076
1077         * gdataset.c: new file, gdatasets implement the object data
1078         mechanism from GtkObject. a generic data pointer is associated with
1079         a certain location and a key id.
1080
1081 Sat May  9 20:08:12 1998  Owen Taylor  <otaylor@gtk.org>
1082
1083         * glib/gmem.c: Experimentally restore GMemChunk
1084         to its primeval state - where mem areas are
1085         freed incrementally instead of searching the tree
1086         every time a mem area is completely empty. Also,
1087         always keep one mem chunk around. (Reduced calls
1088         to malloc() a lot, but doesn't really improve
1089         performance significiantly)
1090
1091 Thu May  7 08:17:28 1998  Tim Janik  <timj@gtk.org>
1092
1093         * glib.h (G_GNUC_PRINTF):
1094         (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument
1095         checking of gcc.
1096
1097         * gstring.c: const corrections, string!=NULL checks at function entry.
1098         (g_string_down): new function for tolower(3) conversion.
1099         (g_string_up): new function for toupper(3) conversion.
1100
1101         * gutils.c: const corrections.
1102         (g_strdown): g_string_down() counterpart.
1103         (g_strup): g_string_up() counterpart.
1104
1105         * gscanner.c (g_scanner_unexp_token):
1106         (g_scanner_error):
1107         (g_scanner_warn): new functions to let a scanner put out warnings
1108         or errors, especially to react on unexpected tokens.
1109
1110         * gslist.c:
1111         (g_slist_index): find out about about the position of a
1112         certain data pointer.
1113         (g_slist_position): find out about about the position of a
1114         certain node.
1115
1116         * glist.c:
1117         (g_list_index): find out about about the position of a
1118         certain data pointer.
1119
1120 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
1121
1122         * ltmain.sh: added a new commandline flag -postfix similar to -release,
1123         but will immediately change the library name.
1124
1125         * Makefile.am: specify -postfix and -version-info
1126
1127         * configure.in: version bump to 1.1.0. added GLIB_INTERFACE_AGE and
1128         GLIB_BINARY_AGE. calculate LT_* variables for libtool.
1129
1130 Fri May  1 16:36:08 1998  Owen Taylor  <otaylor@gtk.org>
1131
1132         * gutils.c: (g_strcasecmp). Check for isupper before
1133         taking tolower, and account for macroized tolower.
1134
1135         * gutils.c (g_error): Check for recursion.
1136
1137 1998-04-27  Elliot Lee  <sopwith@cuc.ml.org>
1138
1139         * glist.c (g_list_position): New function to find the position of
1140         a link in a list - should be the inverse of g_list_nth(), but
1141         haven't tested it so poof.
1142
1143 Thu Apr 30 21:41:30 1998  Owen Taylor  <otaylor@gtk.org>
1144
1145         * gstring.c : Check arguments more carefully,
1146         (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
1147
1148 Tue Apr  7 19:36:48 1998  Owen Taylor  <owt1@cornell.edu>
1149
1150         * gutils.c (g_direct_compare): Removed, because that's what
1151         a NULL comparison function means. And it wasn't 64 bit safe.
1152
1153 Mon Apr  6 18:43:25 1998  Tim Janik  <timj@gtk.org>
1154
1155         * gscanner.c (g_scanner_get_token_ll): fixed a bug that caused floats
1156         of the format ".xxx" to be parsed as "xxx".
1157
1158 Fri Apr  3 20:36:35 1998  Owen Taylor  <owt1@cornell.edu>
1159
1160         * gutils.c (g_parse_debug_string): Make debug string
1161         parsine case-insensitive
1162
1163 Fri Apr  3 17:03:18 PST 1998 Manish Singh <yosh@gimp.org>
1164
1165         * gstring.c: corrected possible overrun when inserting into
1166         GStrings (thanks Elrond)
1167
1168 Fri Apr  3 18:05:45 1998  Owen Taylor  <owt1@cornell.edu>
1169
1170         * testglib.c: Removed literal german from strings
1171         to appease SGI compiler.
1172
1173 Thu Mar 26 20:47:21 1998  Owen Taylor  <owt1@cornell.edu>
1174
1175         * configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
1176         use on_exit if atexit not found in definition of ATEXIT.
1177
1178 Wed Mar 25 15:23:37 1998  Owen Taylor  <owt1@cornell.edu>
1179
1180         * Makefile.am: Switched glibconfig.h rule from HEADERS
1181         to DATA, so that it is not added to DISTFILES
1182
1183 Wed Mar 18 22:27:08 PST 1998 Manish Singh <yosh@gimp.org>
1184
1185         * garray.c: g_rarray_truncate length done correctly
1186
1187 Sun Mar 15 07:13:34 1998  Tim Janik  <timj@gimp.org>
1188
1189         * gutils.c: changed *_handler variables to be named glib_*_handler,
1190         so you can easily access them from gdb.
1191
1192 Sat Mar 14 17:47:43 1998  Owen Taylor  <owt1@cornell.edu>
1193
1194         * Makefile.am: Don't refer to current directory as $(top_builddir)
1195         to avoid confusing non-gmakes
1196
1197 Sat Mar 14 01:37:35 1998  Owen Taylor  <owt1@cornell.edu>
1198
1199         * Makefile.am (configincludedir): Moved glibconfig.h to
1200           $(pkglibdir)/include
1201
1202 Tue Mar 10 02:03:12 1998  Tim Janik  <timj@gimp.org>
1203
1204         * gscanner.c (g_scanner_destroy_symbol_table_entry): new function to
1205         free symbol table entries upon destruction
1206         (gtk-gronlund-980309-0.patch.gz).
1207
1208 Mon Mar  9 15:02:21 1998  Tim Janik  <timj@gimp.org>
1209
1210         * glib.h: changed *_length functions to return guint.
1211         changed *_nth functions to take guint as argument.
1212
1213         * glist.c: adapted g_list_length and g_list_length.
1214
1215         * gslist.c: adapted g_slist_length and g_slist_length.
1216
1217 Mon Mar  2 17:51:18 1998  Owen Taylor  <owt1@cornell.edu>
1218
1219         * glib.h gutils.c : changed g_strcasecmp
1220           to take gchar* not guchar*
1221
1222         * testglib.c: Remove trailing ; after functions
1223
1224 Sun Mar  1 19:04:40 1998  Owen Taylor  <owt1@cornell.edu>
1225
1226         * glib.h gstring.c: Added g_string_insert[_c]()
1227           and g_string_erase().
1228
1229           From: Stefan Wille  <1wille@vsys1.informatik.uni-hamburg.de>
1230
1231 Mon Feb 16 23:05:06 1998  Owen Taylor  <owt1@cornell.edu>
1232
1233         * glist.c (g_list_insert_sorted): Changed function
1234           so elements are always inserted, even if they compare
1235           equal with another.
1236
1237 Thu Feb 12 22:48:11 1998  Owen Taylor  <owt1@cornell.edu>
1238
1239         * gstring.c glib.h: removed deprecated g_string_equal
1240           and g_string_hash.
1241
1242 Tue Feb 10 13:04:36 1998  Owen Taylor  <owt1@cornell.edu>
1243
1244         * configure.in: Add check to see if the C library's
1245           iswalnum can actually be used. (Not true for
1246           Linux libc-5.4.38)
1247
1248 Sat Feb  7 11:48:09 1998  Owen Taylor  <owt1@cornell.edu>
1249
1250         * gstring.c gutils.c: added some additional consts in
1251           appropriate places to remove a warning
1252
1253 Sat Feb  7 11:15:54 1998  Owen Taylor  <owt1@cornell.edu>
1254
1255         * gutils.c: include <ctype.h> for tolower()
1256
1257 Fri Jan 30 23:57:17 PST 1998 Manish Singh <yosh@gimp.org>
1258
1259         * added and autoconfigured in a new utility function
1260         g_strcasecmp
1261
1262 Wed Jan 28 23:53:27 PST 1998 Manish Singh <yosh@gimp.org>
1263
1264         * glist.c
1265         * gslist.c
1266         * testglib.c: the sort functions compared backwards. Fixed
1267         * glib.h: list iterator macros now check for NULL pointers
1268
1269 Tue Jan 27 09:46:57 PST 1998 Manish Singh <yosh@gimp.org>
1270
1271         * gstring.c: g_string_prepend and g_string_prepend_c had
1272         interchanged src and dest parameters for g_memmove. Fixed.
1273
1274 Tue Jan 27 01:38:52 PST 1998 Manish Singh <yosh@gimp.org>
1275
1276         * gslist.c: fixed a really, really lame error. g_slist_insert
1277         didn't hook the data in! Reworked the routine to reflect the
1278         functionality of g_list
1279
1280 Wed Jan 21 01:13:25 1998  Tim Janik  <timj@psynet.net>
1281
1282         * Applied patch from (Raja R Harinath <harinath@cs.umn.edu>)
1283           to add function g_snprintf.
1284         * configure.in (AC_CHECK_FUNCS): Check for vsnprintf.
1285         * glib.h: Add prototype for g_snprintf.
1286         * glibconfig.h.in: Add HAVE_VSNPRINTF.
1287         * gutils.c (g_snprintf): new function.
1288
1289 Sat Jan 17 23:52:40 1998  Owen Taylor  <owt1@cornell.edu>
1290
1291         * gstring.{c,h} gscanner.c:
1292            renamed g_string_equal => g_str_equal
1293            renamed g_string_hash => g_str_hash
1294           And const corrected. Old functions left in for now.
1295
1296 Fri Jan  9 20:03:46 1998  Tim Janik  <timj@psynet.net>
1297
1298         * gutils.c (g_strerror): changed message for EAGAIN from
1299         "no more processes" to "try again" since EAGAIN is used with
1300         functions else than fork().
1301
1302         * gscanner.c (g_scanner_get_token_ll): use strtol() instead of
1303         strtoul() to avoid conflicts with solaris.
1304
1305         * merged the glib portions from Jan 2 to Jan 7 out of gtk+/ChangeLog
1306         into this file.
1307
1308 Wed Jan  7 02:14:30 PST 1998 Manish Singh <yosh@gimp.org>
1309
1310         * glib.h:
1311         * glist.c:
1312         * gslist.c:
1313         * testglib.c: Added g_[s]list_insert_sorted function
1314         and appropriate tests in testglib
1315
1316 Sat Jan  3 20:23:25 1998  Owen Taylor  <owt1@cornell.edu>
1317
1318         * glib.h: Changed guint32 -> guint for bitfields.
1319         (Bitfields must be int or unsigned int?)
1320
1321 Fri Jan  2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
1322
1323         * glib_pre1.h:
1324         * glib_pre2.h:
1325         * glib.h: reverted glibconfig.h and glib.h files back to the
1326         way they were before my ugly hack.
1327
1328         * gscanner.c: removed inlines from clist and gscanner
1329
1330 Tue Dec 23 02:49:51 1997  Tim Janik  <timj@psynet.net>
1331
1332         * gscanner.c: new file for GScanner: Flexible lexical scanner for
1333         general purpose.
1334         * glib_pre2.h: added GScanner includes. added g_strconcat and g_strtod.
1335         gutils.c (g_strconcat): new function for string concatenation of NULL
1336         terminated parameter list.
1337         (g_strtod): new function to perform best string to double conversion
1338         with or without consideration of the current locale.
1339
1340 Mon Dec 15 19:33:58 1997  Tim Janik  <timj@psynet.net>
1341
1342         * glist.c: minor optimizations:
1343         (g_list_append): `if' optimized for common code path, commented out
1344         unneccessary `assert', saved one variable assignment.
1345         (g_list_prepend): saved two (conditioned) variable assignment.
1346         (g_list_insert): saved one  (conditioned) variable assignment,
1347         saved one variable assignment.
1348         (g_list_remove): `if' optimized for common code path, saved two
1349         variable assignments by using `g_list_free_1' (which is even
1350         faster) instead of `g_list_free'.
1351         (g_list_reverse): saved allocation of one variable, saved one
1352         variable assignment.
1353
1354 Wed Dec 10 23:27:20 1997  Tim Janik  <timj@psynet.net>
1355
1356         * glib_pre1.h:
1357         * glib_pre2.h:
1358         * glib.h: this file now gets concatenated by makeglib_h from
1359         glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
1360         created by configure (done by Jay Painter).
1361
1362         * glib_pre2.h: the g_assert*() and g_return_*_fail() macros
1363         are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
1364         when used within if (...) g_macro(); else ... conditionals.
1365
1366 Tue Dec 17 13:14:07 1996  Peter Mattis  <pmattis@charnley.HIP.Berkeley.EDU>
1367
1368         * glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
1369         not call 'g_string' but to simply stringify the
1370         expression. Calling 'g_string' causes the expression to be
1371         expanded which is undesired.
1372
1373 Sun Dec  1 01:30:48 1996  Peter Mattis  <pmattis@charnley.HIP.Berkeley.EDU>
1374
1375         * Started ChangeLog