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