mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-08-09 18:54:04 +02:00
Mostly changes to GArray code. See ChangeLog.
This commit is contained in:
90
ChangeLog
90
ChangeLog
@@ -1,3 +1,33 @@
|
|||||||
|
Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu>
|
||||||
|
|
||||||
|
* testglib.c (main): Update the array tests. Reduce the number of
|
||||||
|
iterations for the prepend test from 10000 to 100 since it is
|
||||||
|
O(n^2) and was taking longer than I would like to wait.
|
||||||
|
|
||||||
|
* garray.c: I've worked on the GArray interface, mostly. It was
|
||||||
|
seriously broken before and I hate to do it, but this is going to
|
||||||
|
break some code. It is important to do this now, because more and
|
||||||
|
more people are starting to use glib and the interface was both
|
||||||
|
broken and inconsistent. First, rename the _truncate functions of
|
||||||
|
both the GArray and GPtrArray classes to _set_size, since this
|
||||||
|
function can also be used to extend the arrays. GArray now
|
||||||
|
accepts two more initialization arguments: clear and element_size.
|
||||||
|
Instead of providing the type to each access function, the array
|
||||||
|
now stores the element size. Clear, if set, causes the library to
|
||||||
|
zero element's memory as the array expands. The major broken-ness
|
||||||
|
here was that array->len was in bytes, not elements. Now, since
|
||||||
|
the array knows its element size, array->len is correct and I have
|
||||||
|
removed the g_array_length macro. The only macro which now
|
||||||
|
accepts the type as an argument is g_array_index, which casts the
|
||||||
|
element to the right type--this interface does not change. The
|
||||||
|
append and prepend functions simply need the types removed.
|
||||||
|
g_ptr_array_remove_index now returns the removed element.
|
||||||
|
|
||||||
|
* gprimes.c (g_spaced_primes_closest): Move this function out of
|
||||||
|
ghash.c and rename it from g_hash_closest_prime. Fix the primes
|
||||||
|
so that they are actually prime (they weren't all -- isn't that
|
||||||
|
nice?).
|
||||||
|
|
||||||
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
@@ -26,8 +56,8 @@ Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
|||||||
* glib.h: provide a definition for G_VA_COPY.
|
* glib.h: provide a definition for G_VA_COPY.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gmessages.c:
|
* gmessages.c:
|
||||||
(g_logv):
|
(g_logv):
|
||||||
(g_vsnprintf):
|
(g_vsnprintf):
|
||||||
pass va_lists by value, not by reference, since this causes problems
|
pass va_lists by value, not by reference, since this causes problems
|
||||||
on platforms that implement va_list as as arrays. internaly, use
|
on platforms that implement va_list as as arrays. internaly, use
|
||||||
@@ -109,7 +139,7 @@ Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
gint64 itself, packages that need gint64 should test for this
|
gint64 itself, packages that need gint64 should test for this
|
||||||
themselves.
|
themselves.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.c: added a new function g_vsnprintf().
|
* gutils.c: added a new function g_vsnprintf().
|
||||||
|
|
||||||
Sun Aug 16 Elliot Lee
|
Sun Aug 16 Elliot Lee
|
||||||
@@ -148,13 +178,13 @@ Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org>
|
|||||||
in other required places.
|
in other required places.
|
||||||
|
|
||||||
* gnode.c:
|
* gnode.c:
|
||||||
(g_node_prepend):
|
(g_node_prepend):
|
||||||
(g_node_insert_before):
|
(g_node_insert_before):
|
||||||
(g_node_insert):
|
(g_node_insert):
|
||||||
(g_node_append_data):
|
(g_node_append_data):
|
||||||
(g_node_prepend_data):
|
(g_node_prepend_data):
|
||||||
(g_node_insert_data_before):
|
(g_node_insert_data_before):
|
||||||
(g_node_insert_data):
|
(g_node_insert_data):
|
||||||
(g_node_append):
|
(g_node_append):
|
||||||
return (node), so these macros/functions can be usefully chained with
|
return (node), so these macros/functions can be usefully chained with
|
||||||
g_node_new().
|
g_node_new().
|
||||||
@@ -211,7 +241,7 @@ Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: change order of gpointer data; field in struct _GNode to
|
* gnode.c: change order of gpointer data; field in struct _GNode to
|
||||||
be partly binary compatible with GList and GSList.
|
be partly binary compatible with GList and GSList.
|
||||||
|
|
||||||
@@ -228,7 +258,7 @@ Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
* Makefile.am: compile gnode.c.
|
* Makefile.am: compile gnode.c.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: added implementation of n-way trees.
|
* gnode.c: added implementation of n-way trees.
|
||||||
|
|
||||||
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
||||||
@@ -245,14 +275,14 @@ Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
implementation.
|
implementation.
|
||||||
|
|
||||||
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
||||||
|
|
||||||
* glib.h: gtime changed to g_time. gtime is used in
|
* glib.h: gtime changed to g_time. gtime is used in
|
||||||
/usr/include/time.h in NetBSD, causing multiple headaches.
|
/usr/include/time.h in NetBSD, causing multiple headaches.
|
||||||
If this isn't the right way of fixing it.... ;)
|
If this isn't the right way of fixing it.... ;)
|
||||||
|
|
||||||
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
||||||
symbol lookups.
|
symbol lookups.
|
||||||
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
||||||
@@ -273,7 +303,7 @@ Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.h: added a bunch of utility/wrapper functions:
|
* gutils.h: added a bunch of utility/wrapper functions:
|
||||||
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
||||||
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
||||||
@@ -396,7 +426,7 @@ Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org>
|
|||||||
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* Makefile.am glib.m4 configure.in:
|
* Makefile.am glib.m4 configure.in:
|
||||||
|
|
||||||
Moved out from GTK+; added AM_PATH_GLIB macro.
|
Moved out from GTK+; added AM_PATH_GLIB macro.
|
||||||
|
|
||||||
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
@@ -411,7 +441,7 @@ Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
[ Combination of:
|
[ Combination of:
|
||||||
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
||||||
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
||||||
|
|
||||||
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
||||||
- Added new typedef g_const_pointer; expunged all incorrect
|
- Added new typedef g_const_pointer; expunged all incorrect
|
||||||
uses of 'const gpointer'.
|
uses of 'const gpointer'.
|
||||||
@@ -433,7 +463,7 @@ Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org>
|
|||||||
|
|
||||||
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
||||||
like g_chunk_new() with additional 0 initialization.
|
like g_chunk_new() with additional 0 initialization.
|
||||||
|
|
||||||
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -451,7 +481,7 @@ Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
||||||
|
|
||||||
* gutils.c: Restored a missing prototype for g_vsprintf.
|
* gutils.c: Restored a missing prototype for g_vsprintf.
|
||||||
|
|
||||||
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -506,15 +536,15 @@ Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
||||||
GPOINTER_TO_[U]INT for storing small integers integers
|
GPOINTER_TO_[U]INT for storing small integers integers
|
||||||
inside pointers.
|
inside pointers.
|
||||||
|
|
||||||
* glib/testglib.c: Print sizeof() results
|
* glib/testglib.c: Print sizeof() results
|
||||||
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
||||||
size_t being long on Alpha's.
|
size_t being long on Alpha's.
|
||||||
|
|
||||||
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
||||||
|
|
||||||
* glib.h gstring.c gmessages.c: Added some missing
|
* glib.h gstring.c gmessages.c: Added some missing
|
||||||
const to arguments.
|
const to arguments.
|
||||||
|
|
||||||
@@ -611,8 +641,8 @@ Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* gstring.c : Check arguments more carefully,
|
* gstring.c : Check arguments more carefully,
|
||||||
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
||||||
|
|
||||||
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
@@ -638,7 +668,7 @@ Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
* testglib.c: Removed literal german from strings
|
* testglib.c: Removed literal german from strings
|
||||||
to appease SGI compiler.
|
to appease SGI compiler.
|
||||||
|
|
||||||
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
||||||
@@ -689,7 +719,7 @@ Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
to take gchar* not guchar*
|
to take gchar* not guchar*
|
||||||
|
|
||||||
* testglib.c: Remove trailing ; after functions
|
* testglib.c: Remove trailing ; after functions
|
||||||
|
|
||||||
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* glib.h gstring.c: Added g_string_insert[_c]()
|
* glib.h gstring.c: Added g_string_insert[_c]()
|
||||||
@@ -761,7 +791,7 @@ Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
renamed g_string_equal => g_str_equal
|
renamed g_string_equal => g_str_equal
|
||||||
renamed g_string_hash => g_str_hash
|
renamed g_string_hash => g_str_hash
|
||||||
And const corrected. Old functions left in for now.
|
And const corrected. Old functions left in for now.
|
||||||
|
|
||||||
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* gutils.c (g_strerror): changed message for EAGAIN from
|
* gutils.c (g_strerror): changed message for EAGAIN from
|
||||||
@@ -789,8 +819,8 @@ Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: reverted glibconfig.h and glib.h files back to the
|
* glib.h: reverted glibconfig.h and glib.h files back to the
|
||||||
way they were before my ugly hack.
|
way they were before my ugly hack.
|
||||||
|
|
||||||
@@ -822,8 +852,8 @@ Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net>
|
|||||||
|
|
||||||
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: this file now gets concatenated by makeglib_h from
|
* glib.h: this file now gets concatenated by makeglib_h from
|
||||||
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
||||||
created by configure (done by Jay Painter).
|
created by configure (done by Jay Painter).
|
||||||
@@ -831,7 +861,7 @@ Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
|||||||
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
||||||
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
||||||
when used within if (...) g_macro(); else ... conditionals.
|
when used within if (...) g_macro(); else ... conditionals.
|
||||||
|
|
||||||
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
||||||
|
|
||||||
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
||||||
|
@@ -1,3 +1,33 @@
|
|||||||
|
Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu>
|
||||||
|
|
||||||
|
* testglib.c (main): Update the array tests. Reduce the number of
|
||||||
|
iterations for the prepend test from 10000 to 100 since it is
|
||||||
|
O(n^2) and was taking longer than I would like to wait.
|
||||||
|
|
||||||
|
* garray.c: I've worked on the GArray interface, mostly. It was
|
||||||
|
seriously broken before and I hate to do it, but this is going to
|
||||||
|
break some code. It is important to do this now, because more and
|
||||||
|
more people are starting to use glib and the interface was both
|
||||||
|
broken and inconsistent. First, rename the _truncate functions of
|
||||||
|
both the GArray and GPtrArray classes to _set_size, since this
|
||||||
|
function can also be used to extend the arrays. GArray now
|
||||||
|
accepts two more initialization arguments: clear and element_size.
|
||||||
|
Instead of providing the type to each access function, the array
|
||||||
|
now stores the element size. Clear, if set, causes the library to
|
||||||
|
zero element's memory as the array expands. The major broken-ness
|
||||||
|
here was that array->len was in bytes, not elements. Now, since
|
||||||
|
the array knows its element size, array->len is correct and I have
|
||||||
|
removed the g_array_length macro. The only macro which now
|
||||||
|
accepts the type as an argument is g_array_index, which casts the
|
||||||
|
element to the right type--this interface does not change. The
|
||||||
|
append and prepend functions simply need the types removed.
|
||||||
|
g_ptr_array_remove_index now returns the removed element.
|
||||||
|
|
||||||
|
* gprimes.c (g_spaced_primes_closest): Move this function out of
|
||||||
|
ghash.c and rename it from g_hash_closest_prime. Fix the primes
|
||||||
|
so that they are actually prime (they weren't all -- isn't that
|
||||||
|
nice?).
|
||||||
|
|
||||||
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
@@ -26,8 +56,8 @@ Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
|||||||
* glib.h: provide a definition for G_VA_COPY.
|
* glib.h: provide a definition for G_VA_COPY.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gmessages.c:
|
* gmessages.c:
|
||||||
(g_logv):
|
(g_logv):
|
||||||
(g_vsnprintf):
|
(g_vsnprintf):
|
||||||
pass va_lists by value, not by reference, since this causes problems
|
pass va_lists by value, not by reference, since this causes problems
|
||||||
on platforms that implement va_list as as arrays. internaly, use
|
on platforms that implement va_list as as arrays. internaly, use
|
||||||
@@ -109,7 +139,7 @@ Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
gint64 itself, packages that need gint64 should test for this
|
gint64 itself, packages that need gint64 should test for this
|
||||||
themselves.
|
themselves.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.c: added a new function g_vsnprintf().
|
* gutils.c: added a new function g_vsnprintf().
|
||||||
|
|
||||||
Sun Aug 16 Elliot Lee
|
Sun Aug 16 Elliot Lee
|
||||||
@@ -148,13 +178,13 @@ Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org>
|
|||||||
in other required places.
|
in other required places.
|
||||||
|
|
||||||
* gnode.c:
|
* gnode.c:
|
||||||
(g_node_prepend):
|
(g_node_prepend):
|
||||||
(g_node_insert_before):
|
(g_node_insert_before):
|
||||||
(g_node_insert):
|
(g_node_insert):
|
||||||
(g_node_append_data):
|
(g_node_append_data):
|
||||||
(g_node_prepend_data):
|
(g_node_prepend_data):
|
||||||
(g_node_insert_data_before):
|
(g_node_insert_data_before):
|
||||||
(g_node_insert_data):
|
(g_node_insert_data):
|
||||||
(g_node_append):
|
(g_node_append):
|
||||||
return (node), so these macros/functions can be usefully chained with
|
return (node), so these macros/functions can be usefully chained with
|
||||||
g_node_new().
|
g_node_new().
|
||||||
@@ -211,7 +241,7 @@ Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: change order of gpointer data; field in struct _GNode to
|
* gnode.c: change order of gpointer data; field in struct _GNode to
|
||||||
be partly binary compatible with GList and GSList.
|
be partly binary compatible with GList and GSList.
|
||||||
|
|
||||||
@@ -228,7 +258,7 @@ Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
* Makefile.am: compile gnode.c.
|
* Makefile.am: compile gnode.c.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: added implementation of n-way trees.
|
* gnode.c: added implementation of n-way trees.
|
||||||
|
|
||||||
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
||||||
@@ -245,14 +275,14 @@ Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
implementation.
|
implementation.
|
||||||
|
|
||||||
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
||||||
|
|
||||||
* glib.h: gtime changed to g_time. gtime is used in
|
* glib.h: gtime changed to g_time. gtime is used in
|
||||||
/usr/include/time.h in NetBSD, causing multiple headaches.
|
/usr/include/time.h in NetBSD, causing multiple headaches.
|
||||||
If this isn't the right way of fixing it.... ;)
|
If this isn't the right way of fixing it.... ;)
|
||||||
|
|
||||||
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
||||||
symbol lookups.
|
symbol lookups.
|
||||||
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
||||||
@@ -273,7 +303,7 @@ Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.h: added a bunch of utility/wrapper functions:
|
* gutils.h: added a bunch of utility/wrapper functions:
|
||||||
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
||||||
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
||||||
@@ -396,7 +426,7 @@ Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org>
|
|||||||
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* Makefile.am glib.m4 configure.in:
|
* Makefile.am glib.m4 configure.in:
|
||||||
|
|
||||||
Moved out from GTK+; added AM_PATH_GLIB macro.
|
Moved out from GTK+; added AM_PATH_GLIB macro.
|
||||||
|
|
||||||
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
@@ -411,7 +441,7 @@ Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
[ Combination of:
|
[ Combination of:
|
||||||
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
||||||
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
||||||
|
|
||||||
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
||||||
- Added new typedef g_const_pointer; expunged all incorrect
|
- Added new typedef g_const_pointer; expunged all incorrect
|
||||||
uses of 'const gpointer'.
|
uses of 'const gpointer'.
|
||||||
@@ -433,7 +463,7 @@ Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org>
|
|||||||
|
|
||||||
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
||||||
like g_chunk_new() with additional 0 initialization.
|
like g_chunk_new() with additional 0 initialization.
|
||||||
|
|
||||||
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -451,7 +481,7 @@ Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
||||||
|
|
||||||
* gutils.c: Restored a missing prototype for g_vsprintf.
|
* gutils.c: Restored a missing prototype for g_vsprintf.
|
||||||
|
|
||||||
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -506,15 +536,15 @@ Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
||||||
GPOINTER_TO_[U]INT for storing small integers integers
|
GPOINTER_TO_[U]INT for storing small integers integers
|
||||||
inside pointers.
|
inside pointers.
|
||||||
|
|
||||||
* glib/testglib.c: Print sizeof() results
|
* glib/testglib.c: Print sizeof() results
|
||||||
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
||||||
size_t being long on Alpha's.
|
size_t being long on Alpha's.
|
||||||
|
|
||||||
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
||||||
|
|
||||||
* glib.h gstring.c gmessages.c: Added some missing
|
* glib.h gstring.c gmessages.c: Added some missing
|
||||||
const to arguments.
|
const to arguments.
|
||||||
|
|
||||||
@@ -611,8 +641,8 @@ Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* gstring.c : Check arguments more carefully,
|
* gstring.c : Check arguments more carefully,
|
||||||
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
||||||
|
|
||||||
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
@@ -638,7 +668,7 @@ Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
* testglib.c: Removed literal german from strings
|
* testglib.c: Removed literal german from strings
|
||||||
to appease SGI compiler.
|
to appease SGI compiler.
|
||||||
|
|
||||||
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
||||||
@@ -689,7 +719,7 @@ Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
to take gchar* not guchar*
|
to take gchar* not guchar*
|
||||||
|
|
||||||
* testglib.c: Remove trailing ; after functions
|
* testglib.c: Remove trailing ; after functions
|
||||||
|
|
||||||
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* glib.h gstring.c: Added g_string_insert[_c]()
|
* glib.h gstring.c: Added g_string_insert[_c]()
|
||||||
@@ -761,7 +791,7 @@ Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
renamed g_string_equal => g_str_equal
|
renamed g_string_equal => g_str_equal
|
||||||
renamed g_string_hash => g_str_hash
|
renamed g_string_hash => g_str_hash
|
||||||
And const corrected. Old functions left in for now.
|
And const corrected. Old functions left in for now.
|
||||||
|
|
||||||
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* gutils.c (g_strerror): changed message for EAGAIN from
|
* gutils.c (g_strerror): changed message for EAGAIN from
|
||||||
@@ -789,8 +819,8 @@ Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: reverted glibconfig.h and glib.h files back to the
|
* glib.h: reverted glibconfig.h and glib.h files back to the
|
||||||
way they were before my ugly hack.
|
way they were before my ugly hack.
|
||||||
|
|
||||||
@@ -822,8 +852,8 @@ Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net>
|
|||||||
|
|
||||||
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: this file now gets concatenated by makeglib_h from
|
* glib.h: this file now gets concatenated by makeglib_h from
|
||||||
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
||||||
created by configure (done by Jay Painter).
|
created by configure (done by Jay Painter).
|
||||||
@@ -831,7 +861,7 @@ Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
|||||||
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
||||||
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
||||||
when used within if (...) g_macro(); else ... conditionals.
|
when used within if (...) g_macro(); else ... conditionals.
|
||||||
|
|
||||||
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
||||||
|
|
||||||
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
||||||
|
@@ -1,3 +1,33 @@
|
|||||||
|
Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu>
|
||||||
|
|
||||||
|
* testglib.c (main): Update the array tests. Reduce the number of
|
||||||
|
iterations for the prepend test from 10000 to 100 since it is
|
||||||
|
O(n^2) and was taking longer than I would like to wait.
|
||||||
|
|
||||||
|
* garray.c: I've worked on the GArray interface, mostly. It was
|
||||||
|
seriously broken before and I hate to do it, but this is going to
|
||||||
|
break some code. It is important to do this now, because more and
|
||||||
|
more people are starting to use glib and the interface was both
|
||||||
|
broken and inconsistent. First, rename the _truncate functions of
|
||||||
|
both the GArray and GPtrArray classes to _set_size, since this
|
||||||
|
function can also be used to extend the arrays. GArray now
|
||||||
|
accepts two more initialization arguments: clear and element_size.
|
||||||
|
Instead of providing the type to each access function, the array
|
||||||
|
now stores the element size. Clear, if set, causes the library to
|
||||||
|
zero element's memory as the array expands. The major broken-ness
|
||||||
|
here was that array->len was in bytes, not elements. Now, since
|
||||||
|
the array knows its element size, array->len is correct and I have
|
||||||
|
removed the g_array_length macro. The only macro which now
|
||||||
|
accepts the type as an argument is g_array_index, which casts the
|
||||||
|
element to the right type--this interface does not change. The
|
||||||
|
append and prepend functions simply need the types removed.
|
||||||
|
g_ptr_array_remove_index now returns the removed element.
|
||||||
|
|
||||||
|
* gprimes.c (g_spaced_primes_closest): Move this function out of
|
||||||
|
ghash.c and rename it from g_hash_closest_prime. Fix the primes
|
||||||
|
so that they are actually prime (they weren't all -- isn't that
|
||||||
|
nice?).
|
||||||
|
|
||||||
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
@@ -26,8 +56,8 @@ Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
|||||||
* glib.h: provide a definition for G_VA_COPY.
|
* glib.h: provide a definition for G_VA_COPY.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gmessages.c:
|
* gmessages.c:
|
||||||
(g_logv):
|
(g_logv):
|
||||||
(g_vsnprintf):
|
(g_vsnprintf):
|
||||||
pass va_lists by value, not by reference, since this causes problems
|
pass va_lists by value, not by reference, since this causes problems
|
||||||
on platforms that implement va_list as as arrays. internaly, use
|
on platforms that implement va_list as as arrays. internaly, use
|
||||||
@@ -109,7 +139,7 @@ Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
gint64 itself, packages that need gint64 should test for this
|
gint64 itself, packages that need gint64 should test for this
|
||||||
themselves.
|
themselves.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.c: added a new function g_vsnprintf().
|
* gutils.c: added a new function g_vsnprintf().
|
||||||
|
|
||||||
Sun Aug 16 Elliot Lee
|
Sun Aug 16 Elliot Lee
|
||||||
@@ -148,13 +178,13 @@ Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org>
|
|||||||
in other required places.
|
in other required places.
|
||||||
|
|
||||||
* gnode.c:
|
* gnode.c:
|
||||||
(g_node_prepend):
|
(g_node_prepend):
|
||||||
(g_node_insert_before):
|
(g_node_insert_before):
|
||||||
(g_node_insert):
|
(g_node_insert):
|
||||||
(g_node_append_data):
|
(g_node_append_data):
|
||||||
(g_node_prepend_data):
|
(g_node_prepend_data):
|
||||||
(g_node_insert_data_before):
|
(g_node_insert_data_before):
|
||||||
(g_node_insert_data):
|
(g_node_insert_data):
|
||||||
(g_node_append):
|
(g_node_append):
|
||||||
return (node), so these macros/functions can be usefully chained with
|
return (node), so these macros/functions can be usefully chained with
|
||||||
g_node_new().
|
g_node_new().
|
||||||
@@ -211,7 +241,7 @@ Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: change order of gpointer data; field in struct _GNode to
|
* gnode.c: change order of gpointer data; field in struct _GNode to
|
||||||
be partly binary compatible with GList and GSList.
|
be partly binary compatible with GList and GSList.
|
||||||
|
|
||||||
@@ -228,7 +258,7 @@ Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
* Makefile.am: compile gnode.c.
|
* Makefile.am: compile gnode.c.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: added implementation of n-way trees.
|
* gnode.c: added implementation of n-way trees.
|
||||||
|
|
||||||
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
||||||
@@ -245,14 +275,14 @@ Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
implementation.
|
implementation.
|
||||||
|
|
||||||
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
||||||
|
|
||||||
* glib.h: gtime changed to g_time. gtime is used in
|
* glib.h: gtime changed to g_time. gtime is used in
|
||||||
/usr/include/time.h in NetBSD, causing multiple headaches.
|
/usr/include/time.h in NetBSD, causing multiple headaches.
|
||||||
If this isn't the right way of fixing it.... ;)
|
If this isn't the right way of fixing it.... ;)
|
||||||
|
|
||||||
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
||||||
symbol lookups.
|
symbol lookups.
|
||||||
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
||||||
@@ -273,7 +303,7 @@ Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.h: added a bunch of utility/wrapper functions:
|
* gutils.h: added a bunch of utility/wrapper functions:
|
||||||
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
||||||
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
||||||
@@ -396,7 +426,7 @@ Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org>
|
|||||||
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* Makefile.am glib.m4 configure.in:
|
* Makefile.am glib.m4 configure.in:
|
||||||
|
|
||||||
Moved out from GTK+; added AM_PATH_GLIB macro.
|
Moved out from GTK+; added AM_PATH_GLIB macro.
|
||||||
|
|
||||||
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
@@ -411,7 +441,7 @@ Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
[ Combination of:
|
[ Combination of:
|
||||||
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
||||||
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
||||||
|
|
||||||
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
||||||
- Added new typedef g_const_pointer; expunged all incorrect
|
- Added new typedef g_const_pointer; expunged all incorrect
|
||||||
uses of 'const gpointer'.
|
uses of 'const gpointer'.
|
||||||
@@ -433,7 +463,7 @@ Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org>
|
|||||||
|
|
||||||
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
||||||
like g_chunk_new() with additional 0 initialization.
|
like g_chunk_new() with additional 0 initialization.
|
||||||
|
|
||||||
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -451,7 +481,7 @@ Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
||||||
|
|
||||||
* gutils.c: Restored a missing prototype for g_vsprintf.
|
* gutils.c: Restored a missing prototype for g_vsprintf.
|
||||||
|
|
||||||
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -506,15 +536,15 @@ Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
||||||
GPOINTER_TO_[U]INT for storing small integers integers
|
GPOINTER_TO_[U]INT for storing small integers integers
|
||||||
inside pointers.
|
inside pointers.
|
||||||
|
|
||||||
* glib/testglib.c: Print sizeof() results
|
* glib/testglib.c: Print sizeof() results
|
||||||
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
||||||
size_t being long on Alpha's.
|
size_t being long on Alpha's.
|
||||||
|
|
||||||
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
||||||
|
|
||||||
* glib.h gstring.c gmessages.c: Added some missing
|
* glib.h gstring.c gmessages.c: Added some missing
|
||||||
const to arguments.
|
const to arguments.
|
||||||
|
|
||||||
@@ -611,8 +641,8 @@ Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* gstring.c : Check arguments more carefully,
|
* gstring.c : Check arguments more carefully,
|
||||||
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
||||||
|
|
||||||
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
@@ -638,7 +668,7 @@ Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
* testglib.c: Removed literal german from strings
|
* testglib.c: Removed literal german from strings
|
||||||
to appease SGI compiler.
|
to appease SGI compiler.
|
||||||
|
|
||||||
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
||||||
@@ -689,7 +719,7 @@ Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
to take gchar* not guchar*
|
to take gchar* not guchar*
|
||||||
|
|
||||||
* testglib.c: Remove trailing ; after functions
|
* testglib.c: Remove trailing ; after functions
|
||||||
|
|
||||||
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* glib.h gstring.c: Added g_string_insert[_c]()
|
* glib.h gstring.c: Added g_string_insert[_c]()
|
||||||
@@ -761,7 +791,7 @@ Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
renamed g_string_equal => g_str_equal
|
renamed g_string_equal => g_str_equal
|
||||||
renamed g_string_hash => g_str_hash
|
renamed g_string_hash => g_str_hash
|
||||||
And const corrected. Old functions left in for now.
|
And const corrected. Old functions left in for now.
|
||||||
|
|
||||||
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* gutils.c (g_strerror): changed message for EAGAIN from
|
* gutils.c (g_strerror): changed message for EAGAIN from
|
||||||
@@ -789,8 +819,8 @@ Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: reverted glibconfig.h and glib.h files back to the
|
* glib.h: reverted glibconfig.h and glib.h files back to the
|
||||||
way they were before my ugly hack.
|
way they were before my ugly hack.
|
||||||
|
|
||||||
@@ -822,8 +852,8 @@ Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net>
|
|||||||
|
|
||||||
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: this file now gets concatenated by makeglib_h from
|
* glib.h: this file now gets concatenated by makeglib_h from
|
||||||
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
||||||
created by configure (done by Jay Painter).
|
created by configure (done by Jay Painter).
|
||||||
@@ -831,7 +861,7 @@ Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
|||||||
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
||||||
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
||||||
when used within if (...) g_macro(); else ... conditionals.
|
when used within if (...) g_macro(); else ... conditionals.
|
||||||
|
|
||||||
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
||||||
|
|
||||||
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
||||||
|
@@ -1,3 +1,33 @@
|
|||||||
|
Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu>
|
||||||
|
|
||||||
|
* testglib.c (main): Update the array tests. Reduce the number of
|
||||||
|
iterations for the prepend test from 10000 to 100 since it is
|
||||||
|
O(n^2) and was taking longer than I would like to wait.
|
||||||
|
|
||||||
|
* garray.c: I've worked on the GArray interface, mostly. It was
|
||||||
|
seriously broken before and I hate to do it, but this is going to
|
||||||
|
break some code. It is important to do this now, because more and
|
||||||
|
more people are starting to use glib and the interface was both
|
||||||
|
broken and inconsistent. First, rename the _truncate functions of
|
||||||
|
both the GArray and GPtrArray classes to _set_size, since this
|
||||||
|
function can also be used to extend the arrays. GArray now
|
||||||
|
accepts two more initialization arguments: clear and element_size.
|
||||||
|
Instead of providing the type to each access function, the array
|
||||||
|
now stores the element size. Clear, if set, causes the library to
|
||||||
|
zero element's memory as the array expands. The major broken-ness
|
||||||
|
here was that array->len was in bytes, not elements. Now, since
|
||||||
|
the array knows its element size, array->len is correct and I have
|
||||||
|
removed the g_array_length macro. The only macro which now
|
||||||
|
accepts the type as an argument is g_array_index, which casts the
|
||||||
|
element to the right type--this interface does not change. The
|
||||||
|
append and prepend functions simply need the types removed.
|
||||||
|
g_ptr_array_remove_index now returns the removed element.
|
||||||
|
|
||||||
|
* gprimes.c (g_spaced_primes_closest): Move this function out of
|
||||||
|
ghash.c and rename it from g_hash_closest_prime. Fix the primes
|
||||||
|
so that they are actually prime (they weren't all -- isn't that
|
||||||
|
nice?).
|
||||||
|
|
||||||
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
@@ -26,8 +56,8 @@ Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
|||||||
* glib.h: provide a definition for G_VA_COPY.
|
* glib.h: provide a definition for G_VA_COPY.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gmessages.c:
|
* gmessages.c:
|
||||||
(g_logv):
|
(g_logv):
|
||||||
(g_vsnprintf):
|
(g_vsnprintf):
|
||||||
pass va_lists by value, not by reference, since this causes problems
|
pass va_lists by value, not by reference, since this causes problems
|
||||||
on platforms that implement va_list as as arrays. internaly, use
|
on platforms that implement va_list as as arrays. internaly, use
|
||||||
@@ -109,7 +139,7 @@ Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
gint64 itself, packages that need gint64 should test for this
|
gint64 itself, packages that need gint64 should test for this
|
||||||
themselves.
|
themselves.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.c: added a new function g_vsnprintf().
|
* gutils.c: added a new function g_vsnprintf().
|
||||||
|
|
||||||
Sun Aug 16 Elliot Lee
|
Sun Aug 16 Elliot Lee
|
||||||
@@ -148,13 +178,13 @@ Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org>
|
|||||||
in other required places.
|
in other required places.
|
||||||
|
|
||||||
* gnode.c:
|
* gnode.c:
|
||||||
(g_node_prepend):
|
(g_node_prepend):
|
||||||
(g_node_insert_before):
|
(g_node_insert_before):
|
||||||
(g_node_insert):
|
(g_node_insert):
|
||||||
(g_node_append_data):
|
(g_node_append_data):
|
||||||
(g_node_prepend_data):
|
(g_node_prepend_data):
|
||||||
(g_node_insert_data_before):
|
(g_node_insert_data_before):
|
||||||
(g_node_insert_data):
|
(g_node_insert_data):
|
||||||
(g_node_append):
|
(g_node_append):
|
||||||
return (node), so these macros/functions can be usefully chained with
|
return (node), so these macros/functions can be usefully chained with
|
||||||
g_node_new().
|
g_node_new().
|
||||||
@@ -211,7 +241,7 @@ Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: change order of gpointer data; field in struct _GNode to
|
* gnode.c: change order of gpointer data; field in struct _GNode to
|
||||||
be partly binary compatible with GList and GSList.
|
be partly binary compatible with GList and GSList.
|
||||||
|
|
||||||
@@ -228,7 +258,7 @@ Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
* Makefile.am: compile gnode.c.
|
* Makefile.am: compile gnode.c.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: added implementation of n-way trees.
|
* gnode.c: added implementation of n-way trees.
|
||||||
|
|
||||||
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
||||||
@@ -245,14 +275,14 @@ Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
implementation.
|
implementation.
|
||||||
|
|
||||||
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
||||||
|
|
||||||
* glib.h: gtime changed to g_time. gtime is used in
|
* glib.h: gtime changed to g_time. gtime is used in
|
||||||
/usr/include/time.h in NetBSD, causing multiple headaches.
|
/usr/include/time.h in NetBSD, causing multiple headaches.
|
||||||
If this isn't the right way of fixing it.... ;)
|
If this isn't the right way of fixing it.... ;)
|
||||||
|
|
||||||
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
||||||
symbol lookups.
|
symbol lookups.
|
||||||
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
||||||
@@ -273,7 +303,7 @@ Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.h: added a bunch of utility/wrapper functions:
|
* gutils.h: added a bunch of utility/wrapper functions:
|
||||||
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
||||||
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
||||||
@@ -396,7 +426,7 @@ Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org>
|
|||||||
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* Makefile.am glib.m4 configure.in:
|
* Makefile.am glib.m4 configure.in:
|
||||||
|
|
||||||
Moved out from GTK+; added AM_PATH_GLIB macro.
|
Moved out from GTK+; added AM_PATH_GLIB macro.
|
||||||
|
|
||||||
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
@@ -411,7 +441,7 @@ Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
[ Combination of:
|
[ Combination of:
|
||||||
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
||||||
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
||||||
|
|
||||||
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
||||||
- Added new typedef g_const_pointer; expunged all incorrect
|
- Added new typedef g_const_pointer; expunged all incorrect
|
||||||
uses of 'const gpointer'.
|
uses of 'const gpointer'.
|
||||||
@@ -433,7 +463,7 @@ Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org>
|
|||||||
|
|
||||||
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
||||||
like g_chunk_new() with additional 0 initialization.
|
like g_chunk_new() with additional 0 initialization.
|
||||||
|
|
||||||
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -451,7 +481,7 @@ Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
||||||
|
|
||||||
* gutils.c: Restored a missing prototype for g_vsprintf.
|
* gutils.c: Restored a missing prototype for g_vsprintf.
|
||||||
|
|
||||||
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -506,15 +536,15 @@ Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
||||||
GPOINTER_TO_[U]INT for storing small integers integers
|
GPOINTER_TO_[U]INT for storing small integers integers
|
||||||
inside pointers.
|
inside pointers.
|
||||||
|
|
||||||
* glib/testglib.c: Print sizeof() results
|
* glib/testglib.c: Print sizeof() results
|
||||||
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
||||||
size_t being long on Alpha's.
|
size_t being long on Alpha's.
|
||||||
|
|
||||||
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
||||||
|
|
||||||
* glib.h gstring.c gmessages.c: Added some missing
|
* glib.h gstring.c gmessages.c: Added some missing
|
||||||
const to arguments.
|
const to arguments.
|
||||||
|
|
||||||
@@ -611,8 +641,8 @@ Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* gstring.c : Check arguments more carefully,
|
* gstring.c : Check arguments more carefully,
|
||||||
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
||||||
|
|
||||||
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
@@ -638,7 +668,7 @@ Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
* testglib.c: Removed literal german from strings
|
* testglib.c: Removed literal german from strings
|
||||||
to appease SGI compiler.
|
to appease SGI compiler.
|
||||||
|
|
||||||
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
||||||
@@ -689,7 +719,7 @@ Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
to take gchar* not guchar*
|
to take gchar* not guchar*
|
||||||
|
|
||||||
* testglib.c: Remove trailing ; after functions
|
* testglib.c: Remove trailing ; after functions
|
||||||
|
|
||||||
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* glib.h gstring.c: Added g_string_insert[_c]()
|
* glib.h gstring.c: Added g_string_insert[_c]()
|
||||||
@@ -761,7 +791,7 @@ Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
renamed g_string_equal => g_str_equal
|
renamed g_string_equal => g_str_equal
|
||||||
renamed g_string_hash => g_str_hash
|
renamed g_string_hash => g_str_hash
|
||||||
And const corrected. Old functions left in for now.
|
And const corrected. Old functions left in for now.
|
||||||
|
|
||||||
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* gutils.c (g_strerror): changed message for EAGAIN from
|
* gutils.c (g_strerror): changed message for EAGAIN from
|
||||||
@@ -789,8 +819,8 @@ Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: reverted glibconfig.h and glib.h files back to the
|
* glib.h: reverted glibconfig.h and glib.h files back to the
|
||||||
way they were before my ugly hack.
|
way they were before my ugly hack.
|
||||||
|
|
||||||
@@ -822,8 +852,8 @@ Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net>
|
|||||||
|
|
||||||
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: this file now gets concatenated by makeglib_h from
|
* glib.h: this file now gets concatenated by makeglib_h from
|
||||||
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
||||||
created by configure (done by Jay Painter).
|
created by configure (done by Jay Painter).
|
||||||
@@ -831,7 +861,7 @@ Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
|||||||
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
||||||
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
||||||
when used within if (...) g_macro(); else ... conditionals.
|
when used within if (...) g_macro(); else ... conditionals.
|
||||||
|
|
||||||
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
||||||
|
|
||||||
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
||||||
|
@@ -1,3 +1,33 @@
|
|||||||
|
Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu>
|
||||||
|
|
||||||
|
* testglib.c (main): Update the array tests. Reduce the number of
|
||||||
|
iterations for the prepend test from 10000 to 100 since it is
|
||||||
|
O(n^2) and was taking longer than I would like to wait.
|
||||||
|
|
||||||
|
* garray.c: I've worked on the GArray interface, mostly. It was
|
||||||
|
seriously broken before and I hate to do it, but this is going to
|
||||||
|
break some code. It is important to do this now, because more and
|
||||||
|
more people are starting to use glib and the interface was both
|
||||||
|
broken and inconsistent. First, rename the _truncate functions of
|
||||||
|
both the GArray and GPtrArray classes to _set_size, since this
|
||||||
|
function can also be used to extend the arrays. GArray now
|
||||||
|
accepts two more initialization arguments: clear and element_size.
|
||||||
|
Instead of providing the type to each access function, the array
|
||||||
|
now stores the element size. Clear, if set, causes the library to
|
||||||
|
zero element's memory as the array expands. The major broken-ness
|
||||||
|
here was that array->len was in bytes, not elements. Now, since
|
||||||
|
the array knows its element size, array->len is correct and I have
|
||||||
|
removed the g_array_length macro. The only macro which now
|
||||||
|
accepts the type as an argument is g_array_index, which casts the
|
||||||
|
element to the right type--this interface does not change. The
|
||||||
|
append and prepend functions simply need the types removed.
|
||||||
|
g_ptr_array_remove_index now returns the removed element.
|
||||||
|
|
||||||
|
* gprimes.c (g_spaced_primes_closest): Move this function out of
|
||||||
|
ghash.c and rename it from g_hash_closest_prime. Fix the primes
|
||||||
|
so that they are actually prime (they weren't all -- isn't that
|
||||||
|
nice?).
|
||||||
|
|
||||||
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
@@ -26,8 +56,8 @@ Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
|||||||
* glib.h: provide a definition for G_VA_COPY.
|
* glib.h: provide a definition for G_VA_COPY.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gmessages.c:
|
* gmessages.c:
|
||||||
(g_logv):
|
(g_logv):
|
||||||
(g_vsnprintf):
|
(g_vsnprintf):
|
||||||
pass va_lists by value, not by reference, since this causes problems
|
pass va_lists by value, not by reference, since this causes problems
|
||||||
on platforms that implement va_list as as arrays. internaly, use
|
on platforms that implement va_list as as arrays. internaly, use
|
||||||
@@ -109,7 +139,7 @@ Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
gint64 itself, packages that need gint64 should test for this
|
gint64 itself, packages that need gint64 should test for this
|
||||||
themselves.
|
themselves.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.c: added a new function g_vsnprintf().
|
* gutils.c: added a new function g_vsnprintf().
|
||||||
|
|
||||||
Sun Aug 16 Elliot Lee
|
Sun Aug 16 Elliot Lee
|
||||||
@@ -148,13 +178,13 @@ Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org>
|
|||||||
in other required places.
|
in other required places.
|
||||||
|
|
||||||
* gnode.c:
|
* gnode.c:
|
||||||
(g_node_prepend):
|
(g_node_prepend):
|
||||||
(g_node_insert_before):
|
(g_node_insert_before):
|
||||||
(g_node_insert):
|
(g_node_insert):
|
||||||
(g_node_append_data):
|
(g_node_append_data):
|
||||||
(g_node_prepend_data):
|
(g_node_prepend_data):
|
||||||
(g_node_insert_data_before):
|
(g_node_insert_data_before):
|
||||||
(g_node_insert_data):
|
(g_node_insert_data):
|
||||||
(g_node_append):
|
(g_node_append):
|
||||||
return (node), so these macros/functions can be usefully chained with
|
return (node), so these macros/functions can be usefully chained with
|
||||||
g_node_new().
|
g_node_new().
|
||||||
@@ -211,7 +241,7 @@ Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: change order of gpointer data; field in struct _GNode to
|
* gnode.c: change order of gpointer data; field in struct _GNode to
|
||||||
be partly binary compatible with GList and GSList.
|
be partly binary compatible with GList and GSList.
|
||||||
|
|
||||||
@@ -228,7 +258,7 @@ Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
* Makefile.am: compile gnode.c.
|
* Makefile.am: compile gnode.c.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: added implementation of n-way trees.
|
* gnode.c: added implementation of n-way trees.
|
||||||
|
|
||||||
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
||||||
@@ -245,14 +275,14 @@ Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
implementation.
|
implementation.
|
||||||
|
|
||||||
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
||||||
|
|
||||||
* glib.h: gtime changed to g_time. gtime is used in
|
* glib.h: gtime changed to g_time. gtime is used in
|
||||||
/usr/include/time.h in NetBSD, causing multiple headaches.
|
/usr/include/time.h in NetBSD, causing multiple headaches.
|
||||||
If this isn't the right way of fixing it.... ;)
|
If this isn't the right way of fixing it.... ;)
|
||||||
|
|
||||||
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
||||||
symbol lookups.
|
symbol lookups.
|
||||||
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
||||||
@@ -273,7 +303,7 @@ Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.h: added a bunch of utility/wrapper functions:
|
* gutils.h: added a bunch of utility/wrapper functions:
|
||||||
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
||||||
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
||||||
@@ -396,7 +426,7 @@ Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org>
|
|||||||
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* Makefile.am glib.m4 configure.in:
|
* Makefile.am glib.m4 configure.in:
|
||||||
|
|
||||||
Moved out from GTK+; added AM_PATH_GLIB macro.
|
Moved out from GTK+; added AM_PATH_GLIB macro.
|
||||||
|
|
||||||
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
@@ -411,7 +441,7 @@ Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
[ Combination of:
|
[ Combination of:
|
||||||
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
||||||
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
||||||
|
|
||||||
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
||||||
- Added new typedef g_const_pointer; expunged all incorrect
|
- Added new typedef g_const_pointer; expunged all incorrect
|
||||||
uses of 'const gpointer'.
|
uses of 'const gpointer'.
|
||||||
@@ -433,7 +463,7 @@ Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org>
|
|||||||
|
|
||||||
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
||||||
like g_chunk_new() with additional 0 initialization.
|
like g_chunk_new() with additional 0 initialization.
|
||||||
|
|
||||||
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -451,7 +481,7 @@ Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
||||||
|
|
||||||
* gutils.c: Restored a missing prototype for g_vsprintf.
|
* gutils.c: Restored a missing prototype for g_vsprintf.
|
||||||
|
|
||||||
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -506,15 +536,15 @@ Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
||||||
GPOINTER_TO_[U]INT for storing small integers integers
|
GPOINTER_TO_[U]INT for storing small integers integers
|
||||||
inside pointers.
|
inside pointers.
|
||||||
|
|
||||||
* glib/testglib.c: Print sizeof() results
|
* glib/testglib.c: Print sizeof() results
|
||||||
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
||||||
size_t being long on Alpha's.
|
size_t being long on Alpha's.
|
||||||
|
|
||||||
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
||||||
|
|
||||||
* glib.h gstring.c gmessages.c: Added some missing
|
* glib.h gstring.c gmessages.c: Added some missing
|
||||||
const to arguments.
|
const to arguments.
|
||||||
|
|
||||||
@@ -611,8 +641,8 @@ Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* gstring.c : Check arguments more carefully,
|
* gstring.c : Check arguments more carefully,
|
||||||
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
||||||
|
|
||||||
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
@@ -638,7 +668,7 @@ Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
* testglib.c: Removed literal german from strings
|
* testglib.c: Removed literal german from strings
|
||||||
to appease SGI compiler.
|
to appease SGI compiler.
|
||||||
|
|
||||||
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
||||||
@@ -689,7 +719,7 @@ Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
to take gchar* not guchar*
|
to take gchar* not guchar*
|
||||||
|
|
||||||
* testglib.c: Remove trailing ; after functions
|
* testglib.c: Remove trailing ; after functions
|
||||||
|
|
||||||
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* glib.h gstring.c: Added g_string_insert[_c]()
|
* glib.h gstring.c: Added g_string_insert[_c]()
|
||||||
@@ -761,7 +791,7 @@ Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
renamed g_string_equal => g_str_equal
|
renamed g_string_equal => g_str_equal
|
||||||
renamed g_string_hash => g_str_hash
|
renamed g_string_hash => g_str_hash
|
||||||
And const corrected. Old functions left in for now.
|
And const corrected. Old functions left in for now.
|
||||||
|
|
||||||
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* gutils.c (g_strerror): changed message for EAGAIN from
|
* gutils.c (g_strerror): changed message for EAGAIN from
|
||||||
@@ -789,8 +819,8 @@ Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: reverted glibconfig.h and glib.h files back to the
|
* glib.h: reverted glibconfig.h and glib.h files back to the
|
||||||
way they were before my ugly hack.
|
way they were before my ugly hack.
|
||||||
|
|
||||||
@@ -822,8 +852,8 @@ Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net>
|
|||||||
|
|
||||||
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: this file now gets concatenated by makeglib_h from
|
* glib.h: this file now gets concatenated by makeglib_h from
|
||||||
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
||||||
created by configure (done by Jay Painter).
|
created by configure (done by Jay Painter).
|
||||||
@@ -831,7 +861,7 @@ Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
|||||||
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
||||||
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
||||||
when used within if (...) g_macro(); else ... conditionals.
|
when used within if (...) g_macro(); else ... conditionals.
|
||||||
|
|
||||||
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
||||||
|
|
||||||
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
||||||
|
@@ -1,3 +1,33 @@
|
|||||||
|
Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu>
|
||||||
|
|
||||||
|
* testglib.c (main): Update the array tests. Reduce the number of
|
||||||
|
iterations for the prepend test from 10000 to 100 since it is
|
||||||
|
O(n^2) and was taking longer than I would like to wait.
|
||||||
|
|
||||||
|
* garray.c: I've worked on the GArray interface, mostly. It was
|
||||||
|
seriously broken before and I hate to do it, but this is going to
|
||||||
|
break some code. It is important to do this now, because more and
|
||||||
|
more people are starting to use glib and the interface was both
|
||||||
|
broken and inconsistent. First, rename the _truncate functions of
|
||||||
|
both the GArray and GPtrArray classes to _set_size, since this
|
||||||
|
function can also be used to extend the arrays. GArray now
|
||||||
|
accepts two more initialization arguments: clear and element_size.
|
||||||
|
Instead of providing the type to each access function, the array
|
||||||
|
now stores the element size. Clear, if set, causes the library to
|
||||||
|
zero element's memory as the array expands. The major broken-ness
|
||||||
|
here was that array->len was in bytes, not elements. Now, since
|
||||||
|
the array knows its element size, array->len is correct and I have
|
||||||
|
removed the g_array_length macro. The only macro which now
|
||||||
|
accepts the type as an argument is g_array_index, which casts the
|
||||||
|
element to the right type--this interface does not change. The
|
||||||
|
append and prepend functions simply need the types removed.
|
||||||
|
g_ptr_array_remove_index now returns the removed element.
|
||||||
|
|
||||||
|
* gprimes.c (g_spaced_primes_closest): Move this function out of
|
||||||
|
ghash.c and rename it from g_hash_closest_prime. Fix the primes
|
||||||
|
so that they are actually prime (they weren't all -- isn't that
|
||||||
|
nice?).
|
||||||
|
|
||||||
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
@@ -26,8 +56,8 @@ Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
|||||||
* glib.h: provide a definition for G_VA_COPY.
|
* glib.h: provide a definition for G_VA_COPY.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gmessages.c:
|
* gmessages.c:
|
||||||
(g_logv):
|
(g_logv):
|
||||||
(g_vsnprintf):
|
(g_vsnprintf):
|
||||||
pass va_lists by value, not by reference, since this causes problems
|
pass va_lists by value, not by reference, since this causes problems
|
||||||
on platforms that implement va_list as as arrays. internaly, use
|
on platforms that implement va_list as as arrays. internaly, use
|
||||||
@@ -109,7 +139,7 @@ Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
gint64 itself, packages that need gint64 should test for this
|
gint64 itself, packages that need gint64 should test for this
|
||||||
themselves.
|
themselves.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.c: added a new function g_vsnprintf().
|
* gutils.c: added a new function g_vsnprintf().
|
||||||
|
|
||||||
Sun Aug 16 Elliot Lee
|
Sun Aug 16 Elliot Lee
|
||||||
@@ -148,13 +178,13 @@ Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org>
|
|||||||
in other required places.
|
in other required places.
|
||||||
|
|
||||||
* gnode.c:
|
* gnode.c:
|
||||||
(g_node_prepend):
|
(g_node_prepend):
|
||||||
(g_node_insert_before):
|
(g_node_insert_before):
|
||||||
(g_node_insert):
|
(g_node_insert):
|
||||||
(g_node_append_data):
|
(g_node_append_data):
|
||||||
(g_node_prepend_data):
|
(g_node_prepend_data):
|
||||||
(g_node_insert_data_before):
|
(g_node_insert_data_before):
|
||||||
(g_node_insert_data):
|
(g_node_insert_data):
|
||||||
(g_node_append):
|
(g_node_append):
|
||||||
return (node), so these macros/functions can be usefully chained with
|
return (node), so these macros/functions can be usefully chained with
|
||||||
g_node_new().
|
g_node_new().
|
||||||
@@ -211,7 +241,7 @@ Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: change order of gpointer data; field in struct _GNode to
|
* gnode.c: change order of gpointer data; field in struct _GNode to
|
||||||
be partly binary compatible with GList and GSList.
|
be partly binary compatible with GList and GSList.
|
||||||
|
|
||||||
@@ -228,7 +258,7 @@ Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
* Makefile.am: compile gnode.c.
|
* Makefile.am: compile gnode.c.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: added implementation of n-way trees.
|
* gnode.c: added implementation of n-way trees.
|
||||||
|
|
||||||
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
||||||
@@ -245,14 +275,14 @@ Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
implementation.
|
implementation.
|
||||||
|
|
||||||
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
||||||
|
|
||||||
* glib.h: gtime changed to g_time. gtime is used in
|
* glib.h: gtime changed to g_time. gtime is used in
|
||||||
/usr/include/time.h in NetBSD, causing multiple headaches.
|
/usr/include/time.h in NetBSD, causing multiple headaches.
|
||||||
If this isn't the right way of fixing it.... ;)
|
If this isn't the right way of fixing it.... ;)
|
||||||
|
|
||||||
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
||||||
symbol lookups.
|
symbol lookups.
|
||||||
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
||||||
@@ -273,7 +303,7 @@ Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.h: added a bunch of utility/wrapper functions:
|
* gutils.h: added a bunch of utility/wrapper functions:
|
||||||
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
||||||
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
||||||
@@ -396,7 +426,7 @@ Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org>
|
|||||||
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* Makefile.am glib.m4 configure.in:
|
* Makefile.am glib.m4 configure.in:
|
||||||
|
|
||||||
Moved out from GTK+; added AM_PATH_GLIB macro.
|
Moved out from GTK+; added AM_PATH_GLIB macro.
|
||||||
|
|
||||||
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
@@ -411,7 +441,7 @@ Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
[ Combination of:
|
[ Combination of:
|
||||||
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
||||||
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
||||||
|
|
||||||
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
||||||
- Added new typedef g_const_pointer; expunged all incorrect
|
- Added new typedef g_const_pointer; expunged all incorrect
|
||||||
uses of 'const gpointer'.
|
uses of 'const gpointer'.
|
||||||
@@ -433,7 +463,7 @@ Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org>
|
|||||||
|
|
||||||
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
||||||
like g_chunk_new() with additional 0 initialization.
|
like g_chunk_new() with additional 0 initialization.
|
||||||
|
|
||||||
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -451,7 +481,7 @@ Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
||||||
|
|
||||||
* gutils.c: Restored a missing prototype for g_vsprintf.
|
* gutils.c: Restored a missing prototype for g_vsprintf.
|
||||||
|
|
||||||
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -506,15 +536,15 @@ Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
||||||
GPOINTER_TO_[U]INT for storing small integers integers
|
GPOINTER_TO_[U]INT for storing small integers integers
|
||||||
inside pointers.
|
inside pointers.
|
||||||
|
|
||||||
* glib/testglib.c: Print sizeof() results
|
* glib/testglib.c: Print sizeof() results
|
||||||
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
||||||
size_t being long on Alpha's.
|
size_t being long on Alpha's.
|
||||||
|
|
||||||
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
||||||
|
|
||||||
* glib.h gstring.c gmessages.c: Added some missing
|
* glib.h gstring.c gmessages.c: Added some missing
|
||||||
const to arguments.
|
const to arguments.
|
||||||
|
|
||||||
@@ -611,8 +641,8 @@ Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* gstring.c : Check arguments more carefully,
|
* gstring.c : Check arguments more carefully,
|
||||||
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
||||||
|
|
||||||
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
@@ -638,7 +668,7 @@ Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
* testglib.c: Removed literal german from strings
|
* testglib.c: Removed literal german from strings
|
||||||
to appease SGI compiler.
|
to appease SGI compiler.
|
||||||
|
|
||||||
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
||||||
@@ -689,7 +719,7 @@ Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
to take gchar* not guchar*
|
to take gchar* not guchar*
|
||||||
|
|
||||||
* testglib.c: Remove trailing ; after functions
|
* testglib.c: Remove trailing ; after functions
|
||||||
|
|
||||||
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* glib.h gstring.c: Added g_string_insert[_c]()
|
* glib.h gstring.c: Added g_string_insert[_c]()
|
||||||
@@ -761,7 +791,7 @@ Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
renamed g_string_equal => g_str_equal
|
renamed g_string_equal => g_str_equal
|
||||||
renamed g_string_hash => g_str_hash
|
renamed g_string_hash => g_str_hash
|
||||||
And const corrected. Old functions left in for now.
|
And const corrected. Old functions left in for now.
|
||||||
|
|
||||||
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* gutils.c (g_strerror): changed message for EAGAIN from
|
* gutils.c (g_strerror): changed message for EAGAIN from
|
||||||
@@ -789,8 +819,8 @@ Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: reverted glibconfig.h and glib.h files back to the
|
* glib.h: reverted glibconfig.h and glib.h files back to the
|
||||||
way they were before my ugly hack.
|
way they were before my ugly hack.
|
||||||
|
|
||||||
@@ -822,8 +852,8 @@ Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net>
|
|||||||
|
|
||||||
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: this file now gets concatenated by makeglib_h from
|
* glib.h: this file now gets concatenated by makeglib_h from
|
||||||
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
||||||
created by configure (done by Jay Painter).
|
created by configure (done by Jay Painter).
|
||||||
@@ -831,7 +861,7 @@ Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
|||||||
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
||||||
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
||||||
when used within if (...) g_macro(); else ... conditionals.
|
when used within if (...) g_macro(); else ... conditionals.
|
||||||
|
|
||||||
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
||||||
|
|
||||||
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
||||||
|
@@ -1,3 +1,33 @@
|
|||||||
|
Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu>
|
||||||
|
|
||||||
|
* testglib.c (main): Update the array tests. Reduce the number of
|
||||||
|
iterations for the prepend test from 10000 to 100 since it is
|
||||||
|
O(n^2) and was taking longer than I would like to wait.
|
||||||
|
|
||||||
|
* garray.c: I've worked on the GArray interface, mostly. It was
|
||||||
|
seriously broken before and I hate to do it, but this is going to
|
||||||
|
break some code. It is important to do this now, because more and
|
||||||
|
more people are starting to use glib and the interface was both
|
||||||
|
broken and inconsistent. First, rename the _truncate functions of
|
||||||
|
both the GArray and GPtrArray classes to _set_size, since this
|
||||||
|
function can also be used to extend the arrays. GArray now
|
||||||
|
accepts two more initialization arguments: clear and element_size.
|
||||||
|
Instead of providing the type to each access function, the array
|
||||||
|
now stores the element size. Clear, if set, causes the library to
|
||||||
|
zero element's memory as the array expands. The major broken-ness
|
||||||
|
here was that array->len was in bytes, not elements. Now, since
|
||||||
|
the array knows its element size, array->len is correct and I have
|
||||||
|
removed the g_array_length macro. The only macro which now
|
||||||
|
accepts the type as an argument is g_array_index, which casts the
|
||||||
|
element to the right type--this interface does not change. The
|
||||||
|
append and prepend functions simply need the types removed.
|
||||||
|
g_ptr_array_remove_index now returns the removed element.
|
||||||
|
|
||||||
|
* gprimes.c (g_spaced_primes_closest): Move this function out of
|
||||||
|
ghash.c and rename it from g_hash_closest_prime. Fix the primes
|
||||||
|
so that they are actually prime (they weren't all -- isn't that
|
||||||
|
nice?).
|
||||||
|
|
||||||
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
@@ -26,8 +56,8 @@ Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
|||||||
* glib.h: provide a definition for G_VA_COPY.
|
* glib.h: provide a definition for G_VA_COPY.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gmessages.c:
|
* gmessages.c:
|
||||||
(g_logv):
|
(g_logv):
|
||||||
(g_vsnprintf):
|
(g_vsnprintf):
|
||||||
pass va_lists by value, not by reference, since this causes problems
|
pass va_lists by value, not by reference, since this causes problems
|
||||||
on platforms that implement va_list as as arrays. internaly, use
|
on platforms that implement va_list as as arrays. internaly, use
|
||||||
@@ -109,7 +139,7 @@ Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
gint64 itself, packages that need gint64 should test for this
|
gint64 itself, packages that need gint64 should test for this
|
||||||
themselves.
|
themselves.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.c: added a new function g_vsnprintf().
|
* gutils.c: added a new function g_vsnprintf().
|
||||||
|
|
||||||
Sun Aug 16 Elliot Lee
|
Sun Aug 16 Elliot Lee
|
||||||
@@ -148,13 +178,13 @@ Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org>
|
|||||||
in other required places.
|
in other required places.
|
||||||
|
|
||||||
* gnode.c:
|
* gnode.c:
|
||||||
(g_node_prepend):
|
(g_node_prepend):
|
||||||
(g_node_insert_before):
|
(g_node_insert_before):
|
||||||
(g_node_insert):
|
(g_node_insert):
|
||||||
(g_node_append_data):
|
(g_node_append_data):
|
||||||
(g_node_prepend_data):
|
(g_node_prepend_data):
|
||||||
(g_node_insert_data_before):
|
(g_node_insert_data_before):
|
||||||
(g_node_insert_data):
|
(g_node_insert_data):
|
||||||
(g_node_append):
|
(g_node_append):
|
||||||
return (node), so these macros/functions can be usefully chained with
|
return (node), so these macros/functions can be usefully chained with
|
||||||
g_node_new().
|
g_node_new().
|
||||||
@@ -211,7 +241,7 @@ Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: change order of gpointer data; field in struct _GNode to
|
* gnode.c: change order of gpointer data; field in struct _GNode to
|
||||||
be partly binary compatible with GList and GSList.
|
be partly binary compatible with GList and GSList.
|
||||||
|
|
||||||
@@ -228,7 +258,7 @@ Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
* Makefile.am: compile gnode.c.
|
* Makefile.am: compile gnode.c.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: added implementation of n-way trees.
|
* gnode.c: added implementation of n-way trees.
|
||||||
|
|
||||||
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
||||||
@@ -245,14 +275,14 @@ Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
implementation.
|
implementation.
|
||||||
|
|
||||||
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
||||||
|
|
||||||
* glib.h: gtime changed to g_time. gtime is used in
|
* glib.h: gtime changed to g_time. gtime is used in
|
||||||
/usr/include/time.h in NetBSD, causing multiple headaches.
|
/usr/include/time.h in NetBSD, causing multiple headaches.
|
||||||
If this isn't the right way of fixing it.... ;)
|
If this isn't the right way of fixing it.... ;)
|
||||||
|
|
||||||
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
||||||
symbol lookups.
|
symbol lookups.
|
||||||
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
||||||
@@ -273,7 +303,7 @@ Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.h: added a bunch of utility/wrapper functions:
|
* gutils.h: added a bunch of utility/wrapper functions:
|
||||||
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
||||||
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
||||||
@@ -396,7 +426,7 @@ Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org>
|
|||||||
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* Makefile.am glib.m4 configure.in:
|
* Makefile.am glib.m4 configure.in:
|
||||||
|
|
||||||
Moved out from GTK+; added AM_PATH_GLIB macro.
|
Moved out from GTK+; added AM_PATH_GLIB macro.
|
||||||
|
|
||||||
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
@@ -411,7 +441,7 @@ Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
[ Combination of:
|
[ Combination of:
|
||||||
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
||||||
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
||||||
|
|
||||||
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
||||||
- Added new typedef g_const_pointer; expunged all incorrect
|
- Added new typedef g_const_pointer; expunged all incorrect
|
||||||
uses of 'const gpointer'.
|
uses of 'const gpointer'.
|
||||||
@@ -433,7 +463,7 @@ Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org>
|
|||||||
|
|
||||||
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
||||||
like g_chunk_new() with additional 0 initialization.
|
like g_chunk_new() with additional 0 initialization.
|
||||||
|
|
||||||
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -451,7 +481,7 @@ Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
||||||
|
|
||||||
* gutils.c: Restored a missing prototype for g_vsprintf.
|
* gutils.c: Restored a missing prototype for g_vsprintf.
|
||||||
|
|
||||||
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -506,15 +536,15 @@ Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
||||||
GPOINTER_TO_[U]INT for storing small integers integers
|
GPOINTER_TO_[U]INT for storing small integers integers
|
||||||
inside pointers.
|
inside pointers.
|
||||||
|
|
||||||
* glib/testglib.c: Print sizeof() results
|
* glib/testglib.c: Print sizeof() results
|
||||||
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
||||||
size_t being long on Alpha's.
|
size_t being long on Alpha's.
|
||||||
|
|
||||||
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
||||||
|
|
||||||
* glib.h gstring.c gmessages.c: Added some missing
|
* glib.h gstring.c gmessages.c: Added some missing
|
||||||
const to arguments.
|
const to arguments.
|
||||||
|
|
||||||
@@ -611,8 +641,8 @@ Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* gstring.c : Check arguments more carefully,
|
* gstring.c : Check arguments more carefully,
|
||||||
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
||||||
|
|
||||||
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
@@ -638,7 +668,7 @@ Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
* testglib.c: Removed literal german from strings
|
* testglib.c: Removed literal german from strings
|
||||||
to appease SGI compiler.
|
to appease SGI compiler.
|
||||||
|
|
||||||
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
||||||
@@ -689,7 +719,7 @@ Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
to take gchar* not guchar*
|
to take gchar* not guchar*
|
||||||
|
|
||||||
* testglib.c: Remove trailing ; after functions
|
* testglib.c: Remove trailing ; after functions
|
||||||
|
|
||||||
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* glib.h gstring.c: Added g_string_insert[_c]()
|
* glib.h gstring.c: Added g_string_insert[_c]()
|
||||||
@@ -761,7 +791,7 @@ Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
renamed g_string_equal => g_str_equal
|
renamed g_string_equal => g_str_equal
|
||||||
renamed g_string_hash => g_str_hash
|
renamed g_string_hash => g_str_hash
|
||||||
And const corrected. Old functions left in for now.
|
And const corrected. Old functions left in for now.
|
||||||
|
|
||||||
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* gutils.c (g_strerror): changed message for EAGAIN from
|
* gutils.c (g_strerror): changed message for EAGAIN from
|
||||||
@@ -789,8 +819,8 @@ Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: reverted glibconfig.h and glib.h files back to the
|
* glib.h: reverted glibconfig.h and glib.h files back to the
|
||||||
way they were before my ugly hack.
|
way they were before my ugly hack.
|
||||||
|
|
||||||
@@ -822,8 +852,8 @@ Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net>
|
|||||||
|
|
||||||
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: this file now gets concatenated by makeglib_h from
|
* glib.h: this file now gets concatenated by makeglib_h from
|
||||||
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
||||||
created by configure (done by Jay Painter).
|
created by configure (done by Jay Painter).
|
||||||
@@ -831,7 +861,7 @@ Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
|||||||
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
||||||
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
||||||
when used within if (...) g_macro(); else ... conditionals.
|
when used within if (...) g_macro(); else ... conditionals.
|
||||||
|
|
||||||
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
||||||
|
|
||||||
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
||||||
|
@@ -1,3 +1,33 @@
|
|||||||
|
Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu>
|
||||||
|
|
||||||
|
* testglib.c (main): Update the array tests. Reduce the number of
|
||||||
|
iterations for the prepend test from 10000 to 100 since it is
|
||||||
|
O(n^2) and was taking longer than I would like to wait.
|
||||||
|
|
||||||
|
* garray.c: I've worked on the GArray interface, mostly. It was
|
||||||
|
seriously broken before and I hate to do it, but this is going to
|
||||||
|
break some code. It is important to do this now, because more and
|
||||||
|
more people are starting to use glib and the interface was both
|
||||||
|
broken and inconsistent. First, rename the _truncate functions of
|
||||||
|
both the GArray and GPtrArray classes to _set_size, since this
|
||||||
|
function can also be used to extend the arrays. GArray now
|
||||||
|
accepts two more initialization arguments: clear and element_size.
|
||||||
|
Instead of providing the type to each access function, the array
|
||||||
|
now stores the element size. Clear, if set, causes the library to
|
||||||
|
zero element's memory as the array expands. The major broken-ness
|
||||||
|
here was that array->len was in bytes, not elements. Now, since
|
||||||
|
the array knows its element size, array->len is correct and I have
|
||||||
|
removed the g_array_length macro. The only macro which now
|
||||||
|
accepts the type as an argument is g_array_index, which casts the
|
||||||
|
element to the right type--this interface does not change. The
|
||||||
|
append and prepend functions simply need the types removed.
|
||||||
|
g_ptr_array_remove_index now returns the removed element.
|
||||||
|
|
||||||
|
* gprimes.c (g_spaced_primes_closest): Move this function out of
|
||||||
|
ghash.c and rename it from g_hash_closest_prime. Fix the primes
|
||||||
|
so that they are actually prime (they weren't all -- isn't that
|
||||||
|
nice?).
|
||||||
|
|
||||||
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
@@ -26,8 +56,8 @@ Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org>
|
|||||||
* glib.h: provide a definition for G_VA_COPY.
|
* glib.h: provide a definition for G_VA_COPY.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gmessages.c:
|
* gmessages.c:
|
||||||
(g_logv):
|
(g_logv):
|
||||||
(g_vsnprintf):
|
(g_vsnprintf):
|
||||||
pass va_lists by value, not by reference, since this causes problems
|
pass va_lists by value, not by reference, since this causes problems
|
||||||
on platforms that implement va_list as as arrays. internaly, use
|
on platforms that implement va_list as as arrays. internaly, use
|
||||||
@@ -109,7 +139,7 @@ Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
gint64 itself, packages that need gint64 should test for this
|
gint64 itself, packages that need gint64 should test for this
|
||||||
themselves.
|
themselves.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.c: added a new function g_vsnprintf().
|
* gutils.c: added a new function g_vsnprintf().
|
||||||
|
|
||||||
Sun Aug 16 Elliot Lee
|
Sun Aug 16 Elliot Lee
|
||||||
@@ -148,13 +178,13 @@ Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org>
|
|||||||
in other required places.
|
in other required places.
|
||||||
|
|
||||||
* gnode.c:
|
* gnode.c:
|
||||||
(g_node_prepend):
|
(g_node_prepend):
|
||||||
(g_node_insert_before):
|
(g_node_insert_before):
|
||||||
(g_node_insert):
|
(g_node_insert):
|
||||||
(g_node_append_data):
|
(g_node_append_data):
|
||||||
(g_node_prepend_data):
|
(g_node_prepend_data):
|
||||||
(g_node_insert_data_before):
|
(g_node_insert_data_before):
|
||||||
(g_node_insert_data):
|
(g_node_insert_data):
|
||||||
(g_node_append):
|
(g_node_append):
|
||||||
return (node), so these macros/functions can be usefully chained with
|
return (node), so these macros/functions can be usefully chained with
|
||||||
g_node_new().
|
g_node_new().
|
||||||
@@ -211,7 +241,7 @@ Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: change order of gpointer data; field in struct _GNode to
|
* gnode.c: change order of gpointer data; field in struct _GNode to
|
||||||
be partly binary compatible with GList and GSList.
|
be partly binary compatible with GList and GSList.
|
||||||
|
|
||||||
@@ -228,7 +258,7 @@ Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
* Makefile.am: compile gnode.c.
|
* Makefile.am: compile gnode.c.
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gnode.c: added implementation of n-way trees.
|
* gnode.c: added implementation of n-way trees.
|
||||||
|
|
||||||
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
* gtree.c (g_tree_traverse): added a warning to the switch() statement
|
||||||
@@ -245,14 +275,14 @@ Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org>
|
|||||||
implementation.
|
implementation.
|
||||||
|
|
||||||
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu>
|
||||||
|
|
||||||
* glib.h: gtime changed to g_time. gtime is used in
|
* glib.h: gtime changed to g_time. gtime is used in
|
||||||
/usr/include/time.h in NetBSD, causing multiple headaches.
|
/usr/include/time.h in NetBSD, causing multiple headaches.
|
||||||
If this isn't the right way of fixing it.... ;)
|
If this isn't the right way of fixing it.... ;)
|
||||||
|
|
||||||
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
* gscanner.c: new functions to make a scanner scope sensitive wrt
|
||||||
symbol lookups.
|
symbol lookups.
|
||||||
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol,
|
||||||
@@ -273,7 +303,7 @@ Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h:
|
* glib.h:
|
||||||
* gutils.h: added a bunch of utility/wrapper functions:
|
* gutils.h: added a bunch of utility/wrapper functions:
|
||||||
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(),
|
||||||
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname().
|
||||||
@@ -396,7 +426,7 @@ Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org>
|
|||||||
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* Makefile.am glib.m4 configure.in:
|
* Makefile.am glib.m4 configure.in:
|
||||||
|
|
||||||
Moved out from GTK+; added AM_PATH_GLIB macro.
|
Moved out from GTK+; added AM_PATH_GLIB macro.
|
||||||
|
|
||||||
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
@@ -411,7 +441,7 @@ Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
[ Combination of:
|
[ Combination of:
|
||||||
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
|
||||||
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
|
||||||
|
|
||||||
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
* glib.h ghash.c gstring.c gdataset.c gutils.c:
|
||||||
- Added new typedef g_const_pointer; expunged all incorrect
|
- Added new typedef g_const_pointer; expunged all incorrect
|
||||||
uses of 'const gpointer'.
|
uses of 'const gpointer'.
|
||||||
@@ -433,7 +463,7 @@ Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org>
|
|||||||
|
|
||||||
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
* glib.h (g_chunk_new0): convenience macro, for allocating small chunks
|
||||||
like g_chunk_new() with additional 0 initialization.
|
like g_chunk_new() with additional 0 initialization.
|
||||||
|
|
||||||
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -451,7 +481,7 @@ Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org>
|
|||||||
|
|
||||||
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)
|
||||||
|
|
||||||
* gutils.c: Restored a missing prototype for g_vsprintf.
|
* gutils.c: Restored a missing prototype for g_vsprintf.
|
||||||
|
|
||||||
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org>
|
||||||
@@ -506,15 +536,15 @@ Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
|
||||||
GPOINTER_TO_[U]INT for storing small integers integers
|
GPOINTER_TO_[U]INT for storing small integers integers
|
||||||
inside pointers.
|
inside pointers.
|
||||||
|
|
||||||
* glib/testglib.c: Print sizeof() results
|
* glib/testglib.c: Print sizeof() results
|
||||||
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
as g_print("%ld", (glong)sizeof(foo)), to deal with
|
||||||
size_t being long on Alpha's.
|
size_t being long on Alpha's.
|
||||||
|
|
||||||
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
|
||||||
|
|
||||||
* glib.h gstring.c gmessages.c: Added some missing
|
* glib.h gstring.c gmessages.c: Added some missing
|
||||||
const to arguments.
|
const to arguments.
|
||||||
|
|
||||||
@@ -611,8 +641,8 @@ Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org>
|
|||||||
|
|
||||||
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org>
|
||||||
|
|
||||||
* gstring.c : Check arguments more carefully,
|
* gstring.c : Check arguments more carefully,
|
||||||
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
(gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de)
|
||||||
|
|
||||||
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
@@ -638,7 +668,7 @@ Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
* testglib.c: Removed literal german from strings
|
* testglib.c: Removed literal german from strings
|
||||||
to appease SGI compiler.
|
to appease SGI compiler.
|
||||||
|
|
||||||
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
* configure.in glib glibconfig.h.in: Add test for atexit/on_exit -
|
||||||
@@ -689,7 +719,7 @@ Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
to take gchar* not guchar*
|
to take gchar* not guchar*
|
||||||
|
|
||||||
* testglib.c: Remove trailing ; after functions
|
* testglib.c: Remove trailing ; after functions
|
||||||
|
|
||||||
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu>
|
||||||
|
|
||||||
* glib.h gstring.c: Added g_string_insert[_c]()
|
* glib.h gstring.c: Added g_string_insert[_c]()
|
||||||
@@ -761,7 +791,7 @@ Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
renamed g_string_equal => g_str_equal
|
renamed g_string_equal => g_str_equal
|
||||||
renamed g_string_hash => g_str_hash
|
renamed g_string_hash => g_str_hash
|
||||||
And const corrected. Old functions left in for now.
|
And const corrected. Old functions left in for now.
|
||||||
|
|
||||||
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* gutils.c (g_strerror): changed message for EAGAIN from
|
* gutils.c (g_strerror): changed message for EAGAIN from
|
||||||
@@ -789,8 +819,8 @@ Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu>
|
|||||||
|
|
||||||
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: reverted glibconfig.h and glib.h files back to the
|
* glib.h: reverted glibconfig.h and glib.h files back to the
|
||||||
way they were before my ugly hack.
|
way they were before my ugly hack.
|
||||||
|
|
||||||
@@ -822,8 +852,8 @@ Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net>
|
|||||||
|
|
||||||
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
||||||
|
|
||||||
* glib_pre1.h:
|
* glib_pre1.h:
|
||||||
* glib_pre2.h:
|
* glib_pre2.h:
|
||||||
* glib.h: this file now gets concatenated by makeglib_h from
|
* glib.h: this file now gets concatenated by makeglib_h from
|
||||||
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got
|
||||||
created by configure (done by Jay Painter).
|
created by configure (done by Jay Painter).
|
||||||
@@ -831,7 +861,7 @@ Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net>
|
|||||||
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
* glib_pre2.h: the g_assert*() and g_return_*_fail() macros
|
||||||
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts
|
||||||
when used within if (...) g_macro(); else ... conditionals.
|
when used within if (...) g_macro(); else ... conditionals.
|
||||||
|
|
||||||
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU>
|
||||||
|
|
||||||
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
* glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to
|
||||||
|
106
garray.c
106
garray.c
@@ -30,7 +30,9 @@ struct _GRealArray
|
|||||||
guint8 *data;
|
guint8 *data;
|
||||||
guint len;
|
guint len;
|
||||||
guint alloc;
|
guint alloc;
|
||||||
guint zero_terminated;
|
guint elt_size;
|
||||||
|
guint zero_terminated : 1;
|
||||||
|
guint clear : 1;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -43,7 +45,9 @@ static GMemChunk *array_mem_chunk = NULL;
|
|||||||
|
|
||||||
|
|
||||||
GArray*
|
GArray*
|
||||||
g_array_new (gboolean zero_terminated)
|
g_array_new (gboolean zero_terminated,
|
||||||
|
gboolean clear,
|
||||||
|
guint elt_size)
|
||||||
{
|
{
|
||||||
GRealArray *array;
|
GRealArray *array;
|
||||||
|
|
||||||
@@ -54,10 +58,12 @@ g_array_new (gboolean zero_terminated)
|
|||||||
|
|
||||||
array = g_chunk_new (GRealArray, array_mem_chunk);
|
array = g_chunk_new (GRealArray, array_mem_chunk);
|
||||||
|
|
||||||
array->data = NULL;
|
array->data = NULL;
|
||||||
array->len = 0;
|
array->len = 0;
|
||||||
array->alloc = 0;
|
array->alloc = 0;
|
||||||
array->zero_terminated = (zero_terminated ? 1 : 0);
|
array->zero_terminated = (zero_terminated ? 1 : 0);
|
||||||
|
array->clear = (clear ? 1 : 0);
|
||||||
|
array->elt_size = elt_size;
|
||||||
|
|
||||||
return (GArray*) array;
|
return (GArray*) array;
|
||||||
}
|
}
|
||||||
@@ -73,45 +79,52 @@ g_array_free (GArray *array,
|
|||||||
}
|
}
|
||||||
|
|
||||||
GArray*
|
GArray*
|
||||||
g_rarray_append (GArray *array,
|
g_array_append_vals (GArray *farray,
|
||||||
gpointer data,
|
gpointer data,
|
||||||
gint size)
|
guint len)
|
||||||
{
|
{
|
||||||
g_array_maybe_expand ((GRealArray*) array, size);
|
GRealArray *array = (GRealArray*) farray;
|
||||||
|
|
||||||
memcpy (array->data + array->len, data, size);
|
g_array_maybe_expand (array, len);
|
||||||
|
|
||||||
array->len += size;
|
memcpy (array->data + array->elt_size * array->len, data, array->elt_size * len);
|
||||||
|
|
||||||
return array;
|
array->len += len;
|
||||||
|
|
||||||
|
return farray;
|
||||||
}
|
}
|
||||||
|
|
||||||
GArray*
|
GArray*
|
||||||
g_rarray_prepend (GArray *array,
|
g_array_prepend_vals (GArray *farray,
|
||||||
gpointer data,
|
gpointer data,
|
||||||
gint size)
|
guint len)
|
||||||
{
|
{
|
||||||
g_array_maybe_expand ((GRealArray*) array, size);
|
GRealArray *array = (GRealArray*) farray;
|
||||||
|
|
||||||
g_memmove (array->data + size, array->data, array->len);
|
g_array_maybe_expand (array, len);
|
||||||
memcpy (array->data, data, size);
|
|
||||||
|
|
||||||
array->len += size;
|
g_memmove (array->data + array->elt_size * len, array->data, array->elt_size * array->len);
|
||||||
|
|
||||||
return array;
|
memcpy (array->data, data, len * array->elt_size);
|
||||||
|
|
||||||
|
array->len += len;
|
||||||
|
|
||||||
|
return farray;
|
||||||
}
|
}
|
||||||
|
|
||||||
GArray*
|
GArray*
|
||||||
g_rarray_truncate (GArray *array,
|
g_array_set_size (GArray *farray,
|
||||||
gint length,
|
guint length)
|
||||||
gint size)
|
|
||||||
{
|
{
|
||||||
if (array->data)
|
GRealArray *array = (GRealArray*) farray;
|
||||||
memset (array->data + length * size, 0, size);
|
|
||||||
array->len = length * size;
|
|
||||||
return array;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
if (array->len < length)
|
||||||
|
g_array_maybe_expand (array, length - array->len);
|
||||||
|
|
||||||
|
array->len = length;
|
||||||
|
|
||||||
|
return farray;
|
||||||
|
}
|
||||||
|
|
||||||
static gint
|
static gint
|
||||||
g_nearest_pow (gint num)
|
g_nearest_pow (gint num)
|
||||||
@@ -128,17 +141,19 @@ static void
|
|||||||
g_array_maybe_expand (GRealArray *array,
|
g_array_maybe_expand (GRealArray *array,
|
||||||
gint len)
|
gint len)
|
||||||
{
|
{
|
||||||
guint old_alloc;
|
guint want_alloc = (array->len + len + array->zero_terminated) * array->elt_size;
|
||||||
|
|
||||||
if ((array->len + len) > array->alloc)
|
if (want_alloc > array->alloc)
|
||||||
{
|
{
|
||||||
old_alloc = array->alloc;
|
guint old_alloc = array->alloc;
|
||||||
|
|
||||||
array->alloc = g_nearest_pow (array->len + array->zero_terminated + len);
|
array->alloc = g_nearest_pow (want_alloc);
|
||||||
array->alloc = MAX (array->alloc, MIN_ARRAY_SIZE);
|
array->alloc = MAX (array->alloc, MIN_ARRAY_SIZE);
|
||||||
|
|
||||||
array->data = g_realloc (array->data, array->alloc);
|
array->data = g_realloc (array->data, array->alloc);
|
||||||
|
|
||||||
memset (array->data + old_alloc, 0, array->alloc - old_alloc);
|
if (array->clear || array->zero_terminated)
|
||||||
|
memset (array->data + old_alloc, 0, array->alloc - old_alloc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -228,21 +243,26 @@ g_ptr_array_set_size (GPtrArray *farray,
|
|||||||
array->len = length;
|
array->len = length;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
gpointer
|
||||||
g_ptr_array_remove_index (GPtrArray* farray,
|
g_ptr_array_remove_index (GPtrArray* farray,
|
||||||
gint index)
|
gint index)
|
||||||
{
|
{
|
||||||
GRealPtrArray* array = (GRealPtrArray*) farray;
|
GRealPtrArray* array = (GRealPtrArray*) farray;
|
||||||
|
gpointer result;
|
||||||
|
|
||||||
g_return_if_fail (array);
|
g_return_val_if_fail (array, NULL);
|
||||||
|
|
||||||
g_return_if_fail (index < array->len);
|
g_return_val_if_fail (index >= 0 && index < array->len, NULL);
|
||||||
|
|
||||||
|
result = array->pdata[index];
|
||||||
|
|
||||||
array->pdata[index] = array->pdata[array->len - 1];
|
array->pdata[index] = array->pdata[array->len - 1];
|
||||||
|
|
||||||
array->pdata[array->len - 1] = NULL;
|
array->pdata[array->len - 1] = NULL;
|
||||||
|
|
||||||
array->len -= 1;
|
array->len -= 1;
|
||||||
|
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
gboolean
|
gboolean
|
||||||
@@ -284,11 +304,11 @@ g_ptr_array_add (GPtrArray* farray,
|
|||||||
|
|
||||||
GByteArray* g_byte_array_new (void)
|
GByteArray* g_byte_array_new (void)
|
||||||
{
|
{
|
||||||
return (GByteArray*) g_array_new (FALSE);
|
return (GByteArray*) g_array_new (FALSE, FALSE, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
void g_byte_array_free (GByteArray *array,
|
void g_byte_array_free (GByteArray *array,
|
||||||
gint free_segment)
|
gboolean free_segment)
|
||||||
{
|
{
|
||||||
g_array_free ((GArray*) array, free_segment);
|
g_array_free ((GArray*) array, free_segment);
|
||||||
}
|
}
|
||||||
@@ -297,7 +317,7 @@ GByteArray* g_byte_array_append (GByteArray *array,
|
|||||||
const guint8 *data,
|
const guint8 *data,
|
||||||
guint len)
|
guint len)
|
||||||
{
|
{
|
||||||
g_rarray_append ((GArray*) array, (guint8*)data, len);
|
g_array_append_vals ((GArray*) array, (guint8*)data, len);
|
||||||
|
|
||||||
return array;
|
return array;
|
||||||
}
|
}
|
||||||
@@ -306,15 +326,15 @@ GByteArray* g_byte_array_prepend (GByteArray *array,
|
|||||||
const guint8 *data,
|
const guint8 *data,
|
||||||
guint len)
|
guint len)
|
||||||
{
|
{
|
||||||
g_rarray_prepend ((GArray*) array, (guint8*)data, len);
|
g_array_prepend_vals ((GArray*) array, (guint8*)data, len);
|
||||||
|
|
||||||
return array;
|
return array;
|
||||||
}
|
}
|
||||||
|
|
||||||
GByteArray* g_byte_array_truncate (GByteArray *array,
|
GByteArray* g_byte_array_set_size (GByteArray *array,
|
||||||
gint length)
|
guint length)
|
||||||
{
|
{
|
||||||
g_rarray_truncate ((GArray*) array, length, 1);
|
g_array_set_size ((GArray*) array, length);
|
||||||
|
|
||||||
return array;
|
return array;
|
||||||
}
|
}
|
||||||
|
43
ghash.c
43
ghash.c
@@ -46,7 +46,6 @@ struct _GHashTable
|
|||||||
static void g_hash_table_resize (GHashTable *hash_table);
|
static void g_hash_table_resize (GHashTable *hash_table);
|
||||||
static GHashNode** g_hash_table_lookup_node(GHashTable *hash_table,
|
static GHashNode** g_hash_table_lookup_node(GHashTable *hash_table,
|
||||||
gconstpointer key);
|
gconstpointer key);
|
||||||
static gint g_hash_closest_prime (gint num);
|
|
||||||
static GHashNode* g_hash_node_new (gpointer key,
|
static GHashNode* g_hash_node_new (gpointer key,
|
||||||
gpointer value);
|
gpointer value);
|
||||||
static void g_hash_node_destroy (GHashNode *hash_node);
|
static void g_hash_node_destroy (GHashNode *hash_node);
|
||||||
@@ -63,7 +62,7 @@ g_hash_table_new (GHashFunc hash_func,
|
|||||||
{
|
{
|
||||||
GHashTable *hash_table;
|
GHashTable *hash_table;
|
||||||
gint i;
|
gint i;
|
||||||
|
|
||||||
hash_table = g_new (GHashTable, 1);
|
hash_table = g_new (GHashTable, 1);
|
||||||
hash_table->size = HASH_TABLE_MIN_SIZE;
|
hash_table->size = HASH_TABLE_MIN_SIZE;
|
||||||
hash_table->nnodes = 0;
|
hash_table->nnodes = 0;
|
||||||
@@ -71,7 +70,7 @@ g_hash_table_new (GHashFunc hash_func,
|
|||||||
hash_table->hash_func = hash_func ? hash_func : g_direct_hash;
|
hash_table->hash_func = hash_func ? hash_func : g_direct_hash;
|
||||||
hash_table->key_compare_func = key_compare_func;
|
hash_table->key_compare_func = key_compare_func;
|
||||||
hash_table->nodes = g_new (GHashNode*, hash_table->size);
|
hash_table->nodes = g_new (GHashNode*, hash_table->size);
|
||||||
|
|
||||||
for (i = 0; i < hash_table->size; i++)
|
for (i = 0; i < hash_table->size; i++)
|
||||||
hash_table->nodes[i] = NULL;
|
hash_table->nodes[i] = NULL;
|
||||||
|
|
||||||
@@ -84,10 +83,10 @@ g_hash_table_destroy (GHashTable *hash_table)
|
|||||||
gint i;
|
gint i;
|
||||||
|
|
||||||
g_return_if_fail (hash_table);
|
g_return_if_fail (hash_table);
|
||||||
|
|
||||||
for (i = 0; i < hash_table->size; i++)
|
for (i = 0; i < hash_table->size; i++)
|
||||||
g_hash_nodes_destroy (hash_table->nodes[i]);
|
g_hash_nodes_destroy (hash_table->nodes[i]);
|
||||||
|
|
||||||
g_free (hash_table->nodes);
|
g_free (hash_table->nodes);
|
||||||
g_free (hash_table);
|
g_free (hash_table);
|
||||||
}
|
}
|
||||||
@@ -100,7 +99,7 @@ g_hash_table_insert (GHashTable *hash_table,
|
|||||||
GHashNode **node;
|
GHashNode **node;
|
||||||
|
|
||||||
g_return_if_fail (hash_table);
|
g_return_if_fail (hash_table);
|
||||||
|
|
||||||
node = g_hash_table_lookup_node (hash_table, key);
|
node = g_hash_table_lookup_node (hash_table, key);
|
||||||
|
|
||||||
if (*node)
|
if (*node)
|
||||||
@@ -146,7 +145,7 @@ g_hash_table_lookup (GHashTable *hash_table,
|
|||||||
gconstpointer key)
|
gconstpointer key)
|
||||||
{
|
{
|
||||||
GHashNode *node;
|
GHashNode *node;
|
||||||
|
|
||||||
g_return_val_if_fail (hash_table, NULL);
|
g_return_val_if_fail (hash_table, NULL);
|
||||||
|
|
||||||
node = *g_hash_table_lookup_node (hash_table, key);
|
node = *g_hash_table_lookup_node (hash_table, key);
|
||||||
@@ -160,7 +159,7 @@ g_hash_table_lookup_extended (GHashTable *hash_table,
|
|||||||
gpointer *value)
|
gpointer *value)
|
||||||
{
|
{
|
||||||
GHashNode *node;
|
GHashNode *node;
|
||||||
|
|
||||||
g_return_val_if_fail (hash_table, FALSE);
|
g_return_val_if_fail (hash_table, FALSE);
|
||||||
|
|
||||||
node = *g_hash_table_lookup_node (hash_table, lookup_key);
|
node = *g_hash_table_lookup_node (hash_table, lookup_key);
|
||||||
@@ -232,19 +231,19 @@ g_hash_table_resize (GHashTable *hash_table)
|
|||||||
g_return_if_fail (hash_table);
|
g_return_if_fail (hash_table);
|
||||||
|
|
||||||
nodes_per_list = (gfloat) hash_table->nnodes / (gfloat) hash_table->size;
|
nodes_per_list = (gfloat) hash_table->nnodes / (gfloat) hash_table->size;
|
||||||
|
|
||||||
if ((nodes_per_list > 0.3 || hash_table->size <= HASH_TABLE_MIN_SIZE) &&
|
if ((nodes_per_list > 0.3 || hash_table->size <= HASH_TABLE_MIN_SIZE) &&
|
||||||
(nodes_per_list < 3.0 || hash_table->size >= HASH_TABLE_MAX_SIZE))
|
(nodes_per_list < 3.0 || hash_table->size >= HASH_TABLE_MAX_SIZE))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
new_size = CLAMP(g_hash_closest_prime (hash_table->nnodes),
|
new_size = CLAMP(g_spaced_primes_closest (hash_table->nnodes),
|
||||||
HASH_TABLE_MIN_SIZE,
|
HASH_TABLE_MIN_SIZE,
|
||||||
HASH_TABLE_MAX_SIZE);
|
HASH_TABLE_MAX_SIZE);
|
||||||
new_nodes = g_new (GHashNode*, new_size);
|
new_nodes = g_new (GHashNode*, new_size);
|
||||||
|
|
||||||
for (i = 0; i < new_size; i++)
|
for (i = 0; i < new_size; i++)
|
||||||
new_nodes[i] = NULL;
|
new_nodes[i] = NULL;
|
||||||
|
|
||||||
for (i = 0; i < hash_table->size; i++)
|
for (i = 0; i < hash_table->size; i++)
|
||||||
for (node = hash_table->nodes[i]; node; node = next)
|
for (node = hash_table->nodes[i]; node; node = next)
|
||||||
{
|
{
|
||||||
@@ -253,7 +252,7 @@ g_hash_table_resize (GHashTable *hash_table)
|
|||||||
node->next = new_nodes[hash_val];
|
node->next = new_nodes[hash_val];
|
||||||
new_nodes[hash_val] = node;
|
new_nodes[hash_val] = node;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_free (hash_table->nodes);
|
g_free (hash_table->nodes);
|
||||||
hash_table->nodes = new_nodes;
|
hash_table->nodes = new_nodes;
|
||||||
hash_table->size = new_size;
|
hash_table->size = new_size;
|
||||||
@@ -264,7 +263,7 @@ g_hash_table_lookup_node (GHashTable *hash_table,
|
|||||||
gconstpointer key)
|
gconstpointer key)
|
||||||
{
|
{
|
||||||
GHashNode **node;
|
GHashNode **node;
|
||||||
|
|
||||||
g_return_val_if_fail (hash_table, NULL);
|
g_return_val_if_fail (hash_table, NULL);
|
||||||
|
|
||||||
node = &hash_table->nodes
|
node = &hash_table->nodes
|
||||||
@@ -281,24 +280,10 @@ g_hash_table_lookup_node (GHashTable *hash_table,
|
|||||||
else
|
else
|
||||||
while (*node && (*node)->key != key)
|
while (*node && (*node)->key != key)
|
||||||
node = &(*node)->next;
|
node = &(*node)->next;
|
||||||
|
|
||||||
return node;
|
return node;
|
||||||
}
|
}
|
||||||
|
|
||||||
static gint
|
|
||||||
g_hash_closest_prime (gint num)
|
|
||||||
{
|
|
||||||
extern gint g_primes[];
|
|
||||||
extern gint g_nprimes;
|
|
||||||
gint i;
|
|
||||||
|
|
||||||
for (i = 0; i < g_nprimes; i++)
|
|
||||||
if ((g_primes[i] - num) > 0)
|
|
||||||
return g_primes[i];
|
|
||||||
|
|
||||||
return g_primes[g_nprimes - 1];
|
|
||||||
}
|
|
||||||
|
|
||||||
static GHashNode*
|
static GHashNode*
|
||||||
g_hash_node_new (gpointer key,
|
g_hash_node_new (gpointer key,
|
||||||
gpointer value)
|
gpointer value)
|
||||||
|
171
glib.h
171
glib.h
@@ -241,7 +241,7 @@
|
|||||||
# define ATEXIT(proc) (atexit (proc))
|
# define ATEXIT(proc) (atexit (proc))
|
||||||
# elif defined (HAVE_ON_EXIT)
|
# elif defined (HAVE_ON_EXIT)
|
||||||
# define ATEXIT(proc) (on_exit ((void (*)(int, void *))(proc), NULL))
|
# define ATEXIT(proc) (on_exit ((void (*)(int, void *))(proc), NULL))
|
||||||
# endif
|
# endif
|
||||||
#endif /* ATEXIT */
|
#endif /* ATEXIT */
|
||||||
|
|
||||||
|
|
||||||
@@ -438,9 +438,9 @@ typedef unsigned int guint;
|
|||||||
typedef float gfloat;
|
typedef float gfloat;
|
||||||
typedef double gdouble;
|
typedef double gdouble;
|
||||||
|
|
||||||
/* HAVE_LONG_DOUBLE doesn't work correctly on all platforms.
|
/* HAVE_LONG_DOUBLE doesn't work correctly on all platforms.
|
||||||
* Since gldouble isn't used anywhere, just disable it for now
|
* Since gldouble isn't used anywhere, just disable it for now */
|
||||||
*/
|
|
||||||
#if 0
|
#if 0
|
||||||
#ifdef HAVE_LONG_DOUBLE
|
#ifdef HAVE_LONG_DOUBLE
|
||||||
typedef long double gldouble;
|
typedef long double gldouble;
|
||||||
@@ -575,7 +575,7 @@ typedef enum
|
|||||||
/* log flags */
|
/* log flags */
|
||||||
G_LOG_FLAG_RECURSION = 1 << 0,
|
G_LOG_FLAG_RECURSION = 1 << 0,
|
||||||
G_LOG_FLAG_FATAL = 1 << 1,
|
G_LOG_FLAG_FATAL = 1 << 1,
|
||||||
|
|
||||||
/* GLib log levels */
|
/* GLib log levels */
|
||||||
G_LOG_LEVEL_ERROR = 1 << 2, /* always fatal */
|
G_LOG_LEVEL_ERROR = 1 << 2, /* always fatal */
|
||||||
G_LOG_LEVEL_CRITICAL = 1 << 3,
|
G_LOG_LEVEL_CRITICAL = 1 << 3,
|
||||||
@@ -583,7 +583,7 @@ typedef enum
|
|||||||
G_LOG_LEVEL_MESSAGE = 1 << 5,
|
G_LOG_LEVEL_MESSAGE = 1 << 5,
|
||||||
G_LOG_LEVEL_INFO = 1 << 6,
|
G_LOG_LEVEL_INFO = 1 << 6,
|
||||||
G_LOG_LEVEL_DEBUG = 1 << 7,
|
G_LOG_LEVEL_DEBUG = 1 << 7,
|
||||||
|
|
||||||
G_LOG_LEVEL_MASK = ~(G_LOG_FLAG_RECURSION | G_LOG_FLAG_FATAL)
|
G_LOG_LEVEL_MASK = ~(G_LOG_FLAG_RECURSION | G_LOG_FLAG_FATAL)
|
||||||
} GLogLevelFlags;
|
} GLogLevelFlags;
|
||||||
|
|
||||||
@@ -692,8 +692,8 @@ GList* g_list_insert (GList *list,
|
|||||||
gint position);
|
gint position);
|
||||||
GList* g_list_insert_sorted (GList *list,
|
GList* g_list_insert_sorted (GList *list,
|
||||||
gpointer data,
|
gpointer data,
|
||||||
GCompareFunc func);
|
GCompareFunc func);
|
||||||
GList* g_list_concat (GList *list1,
|
GList* g_list_concat (GList *list1,
|
||||||
GList *list2);
|
GList *list2);
|
||||||
GList* g_list_remove (GList *list,
|
GList* g_list_remove (GList *list,
|
||||||
gpointer data);
|
gpointer data);
|
||||||
@@ -737,8 +737,8 @@ GSList* g_slist_insert (GSList *list,
|
|||||||
gint position);
|
gint position);
|
||||||
GSList* g_slist_insert_sorted (GSList *list,
|
GSList* g_slist_insert_sorted (GSList *list,
|
||||||
gpointer data,
|
gpointer data,
|
||||||
GCompareFunc func);
|
GCompareFunc func);
|
||||||
GSList* g_slist_concat (GSList *list1,
|
GSList* g_slist_concat (GSList *list1,
|
||||||
GSList *list2);
|
GSList *list2);
|
||||||
GSList* g_slist_remove (GSList *list,
|
GSList* g_slist_remove (GSList *list,
|
||||||
gpointer data);
|
gpointer data);
|
||||||
@@ -1159,8 +1159,8 @@ void g_set_prgname (const gchar *prgname);
|
|||||||
|
|
||||||
/* Miscellaneous utility functions
|
/* Miscellaneous utility functions
|
||||||
*/
|
*/
|
||||||
guint g_parse_debug_string (const gchar *string,
|
guint g_parse_debug_string (const gchar *string,
|
||||||
GDebugKey *keys,
|
GDebugKey *keys,
|
||||||
guint nkeys);
|
guint nkeys);
|
||||||
gint g_snprintf (gchar *string,
|
gint g_snprintf (gchar *string,
|
||||||
gulong n,
|
gulong n,
|
||||||
@@ -1185,7 +1185,7 @@ gchar* g_get_current_dir (void);
|
|||||||
#define g_memmove(dest, src, size) G_STMT_START { \
|
#define g_memmove(dest, src, size) G_STMT_START { \
|
||||||
memmove ((dest), (src), (size)); \
|
memmove ((dest), (src), (size)); \
|
||||||
} G_STMT_END
|
} G_STMT_END
|
||||||
#else
|
#else
|
||||||
#define g_memmove(dest, src, size) G_STMT_START { \
|
#define g_memmove(dest, src, size) G_STMT_START { \
|
||||||
bcopy ((src), (dest), (size)); \
|
bcopy ((src), (dest), (size)); \
|
||||||
} G_STMT_END
|
} G_STMT_END
|
||||||
@@ -1226,7 +1226,7 @@ static inline guint
|
|||||||
g_bit_storage (guint number)
|
g_bit_storage (guint number)
|
||||||
{
|
{
|
||||||
register guint n_bits = 0;
|
register guint n_bits = 0;
|
||||||
|
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
n_bits++;
|
n_bits++;
|
||||||
@@ -1264,14 +1264,14 @@ GString* g_string_prepend (GString *string,
|
|||||||
const gchar *val);
|
const gchar *val);
|
||||||
GString* g_string_prepend_c (GString *string,
|
GString* g_string_prepend_c (GString *string,
|
||||||
gchar c);
|
gchar c);
|
||||||
GString* g_string_insert (GString *string,
|
GString* g_string_insert (GString *string,
|
||||||
gint pos,
|
gint pos,
|
||||||
const gchar *val);
|
const gchar *val);
|
||||||
GString* g_string_insert_c (GString *string,
|
GString* g_string_insert_c (GString *string,
|
||||||
gint pos,
|
gint pos,
|
||||||
gchar c);
|
gchar c);
|
||||||
GString* g_string_erase (GString *string,
|
GString* g_string_erase (GString *string,
|
||||||
gint pos,
|
gint pos,
|
||||||
gint len);
|
gint len);
|
||||||
GString* g_string_down (GString *string);
|
GString* g_string_down (GString *string);
|
||||||
GString* g_string_up (GString *string);
|
GString* g_string_up (GString *string);
|
||||||
@@ -1285,34 +1285,24 @@ void g_string_sprintfa (GString *string,
|
|||||||
|
|
||||||
/* Resizable arrays
|
/* Resizable arrays
|
||||||
*/
|
*/
|
||||||
#define g_array_length(array,type) \
|
|
||||||
(((array)->len)/sizeof(type))
|
|
||||||
#define g_array_append_val(array,type,val) \
|
|
||||||
g_rarray_append (array, (gpointer) &val, sizeof (type))
|
|
||||||
#define g_array_append_vals(array,type,vals,nvals) \
|
|
||||||
g_rarray_append (array, (gpointer) vals, sizeof (type) * nvals)
|
|
||||||
#define g_array_prepend_val(array,type,val) \
|
|
||||||
g_rarray_prepend (array, (gpointer) &val, sizeof (type))
|
|
||||||
#define g_array_prepend_vals(array,type,vals,nvals) \
|
|
||||||
g_rarray_prepend (array, (gpointer) vals, sizeof (type) * nvals)
|
|
||||||
#define g_array_truncate(array,type,length) \
|
|
||||||
g_rarray_truncate (array, length, sizeof (type))
|
|
||||||
#define g_array_index(array,type,index) \
|
|
||||||
((type*) array->data)[index]
|
|
||||||
|
|
||||||
GArray* g_array_new (gboolean zero_terminated);
|
#define g_array_append_val(a,v) g_array_append_vals(a,&v,1)
|
||||||
void g_array_free (GArray *array,
|
#define g_array_prepend_val(a,v) g_array_prepend_vals(a,&v,1)
|
||||||
gboolean free_segment);
|
#define g_array_index(a,t,i) (((t*)a->data)[i])
|
||||||
GArray* g_rarray_append (GArray *array,
|
|
||||||
gpointer data,
|
|
||||||
gint size);
|
|
||||||
GArray* g_rarray_prepend (GArray *array,
|
|
||||||
gpointer data,
|
|
||||||
gint size);
|
|
||||||
GArray* g_rarray_truncate (GArray *array,
|
|
||||||
gint length,
|
|
||||||
gint size);
|
|
||||||
|
|
||||||
|
GArray* g_array_new (gboolean zero_terminated,
|
||||||
|
gboolean clear,
|
||||||
|
guint element_size);
|
||||||
|
void g_array_free (GArray *array,
|
||||||
|
gboolean free_segment);
|
||||||
|
GArray* g_array_append_vals (GArray *array,
|
||||||
|
gpointer data,
|
||||||
|
guint len);
|
||||||
|
GArray* g_array_prepend_vals (GArray *array,
|
||||||
|
gpointer data,
|
||||||
|
guint len);
|
||||||
|
GArray* g_array_set_size (GArray *array,
|
||||||
|
guint length);
|
||||||
|
|
||||||
/* Resizable pointer array. This interface is much less complicated
|
/* Resizable pointer array. This interface is much less complicated
|
||||||
* than the above. Add appends appends a pointer. Remove fills any
|
* than the above. Add appends appends a pointer. Remove fills any
|
||||||
@@ -1324,30 +1314,28 @@ void g_ptr_array_free (GPtrArray *array,
|
|||||||
gboolean free_seg);
|
gboolean free_seg);
|
||||||
void g_ptr_array_set_size (GPtrArray *array,
|
void g_ptr_array_set_size (GPtrArray *array,
|
||||||
gint length);
|
gint length);
|
||||||
void g_ptr_array_remove_index (GPtrArray *array,
|
gpointer g_ptr_array_remove_index (GPtrArray *array,
|
||||||
gint index);
|
gint index);
|
||||||
gboolean g_ptr_array_remove (GPtrArray *array,
|
gboolean g_ptr_array_remove (GPtrArray *array,
|
||||||
gpointer data);
|
gpointer data);
|
||||||
void g_ptr_array_add (GPtrArray *array,
|
void g_ptr_array_add (GPtrArray *array,
|
||||||
gpointer data);
|
gpointer data);
|
||||||
|
|
||||||
|
|
||||||
/* Byte arrays, an array of guint8. Implemented as a GArray,
|
/* Byte arrays, an array of guint8. Implemented as a GArray,
|
||||||
* but type-safe.
|
* but type-safe.
|
||||||
*/
|
*/
|
||||||
GByteArray* g_byte_array_new (void);
|
|
||||||
void g_byte_array_free (GByteArray *array,
|
|
||||||
gint free_segment);
|
|
||||||
GByteArray* g_byte_array_append (GByteArray *array,
|
|
||||||
const guint8 *data,
|
|
||||||
guint len);
|
|
||||||
|
|
||||||
GByteArray* g_byte_array_prepend (GByteArray *array,
|
GByteArray* g_byte_array_new (void);
|
||||||
|
void g_byte_array_free (GByteArray *array,
|
||||||
|
gboolean free_segment);
|
||||||
|
GByteArray* g_byte_array_append (GByteArray *array,
|
||||||
const guint8 *data,
|
const guint8 *data,
|
||||||
guint len);
|
guint len);
|
||||||
|
GByteArray* g_byte_array_prepend (GByteArray *array,
|
||||||
GByteArray* g_byte_array_truncate (GByteArray *array,
|
const guint8 *data,
|
||||||
gint length);
|
guint len);
|
||||||
|
GByteArray* g_byte_array_set_size (GByteArray *array,
|
||||||
|
guint length);
|
||||||
|
|
||||||
|
|
||||||
/* Hash Functions
|
/* Hash Functions
|
||||||
@@ -1437,7 +1425,7 @@ typedef enum
|
|||||||
typedef enum
|
typedef enum
|
||||||
{
|
{
|
||||||
G_TOKEN_EOF = 0,
|
G_TOKEN_EOF = 0,
|
||||||
|
|
||||||
G_TOKEN_LEFT_PAREN = '(',
|
G_TOKEN_LEFT_PAREN = '(',
|
||||||
G_TOKEN_RIGHT_PAREN = ')',
|
G_TOKEN_RIGHT_PAREN = ')',
|
||||||
G_TOKEN_LEFT_CURLY = '{',
|
G_TOKEN_LEFT_CURLY = '{',
|
||||||
@@ -1446,11 +1434,11 @@ typedef enum
|
|||||||
G_TOKEN_RIGHT_BRACE = ']',
|
G_TOKEN_RIGHT_BRACE = ']',
|
||||||
G_TOKEN_EQUAL_SIGN = '=',
|
G_TOKEN_EQUAL_SIGN = '=',
|
||||||
G_TOKEN_COMMA = ',',
|
G_TOKEN_COMMA = ',',
|
||||||
|
|
||||||
G_TOKEN_NONE = 256,
|
G_TOKEN_NONE = 256,
|
||||||
|
|
||||||
G_TOKEN_ERROR,
|
G_TOKEN_ERROR,
|
||||||
|
|
||||||
G_TOKEN_CHAR,
|
G_TOKEN_CHAR,
|
||||||
G_TOKEN_BINARY,
|
G_TOKEN_BINARY,
|
||||||
G_TOKEN_OCTAL,
|
G_TOKEN_OCTAL,
|
||||||
@@ -1458,11 +1446,11 @@ typedef enum
|
|||||||
G_TOKEN_HEX,
|
G_TOKEN_HEX,
|
||||||
G_TOKEN_FLOAT,
|
G_TOKEN_FLOAT,
|
||||||
G_TOKEN_STRING,
|
G_TOKEN_STRING,
|
||||||
|
|
||||||
G_TOKEN_SYMBOL,
|
G_TOKEN_SYMBOL,
|
||||||
G_TOKEN_IDENTIFIER,
|
G_TOKEN_IDENTIFIER,
|
||||||
G_TOKEN_IDENTIFIER_NULL,
|
G_TOKEN_IDENTIFIER_NULL,
|
||||||
|
|
||||||
G_TOKEN_COMMENT_SINGLE,
|
G_TOKEN_COMMENT_SINGLE,
|
||||||
G_TOKEN_COMMENT_MULTI,
|
G_TOKEN_COMMENT_MULTI,
|
||||||
G_TOKEN_LAST
|
G_TOKEN_LAST
|
||||||
@@ -1491,11 +1479,11 @@ struct _GScannerConfig
|
|||||||
gchar *cset_identifier_first;
|
gchar *cset_identifier_first;
|
||||||
gchar *cset_identifier_nth;
|
gchar *cset_identifier_nth;
|
||||||
gchar *cpair_comment_single; /* default: "#\n" */
|
gchar *cpair_comment_single; /* default: "#\n" */
|
||||||
|
|
||||||
/* Should symbol lookup work case sensitive?
|
/* Should symbol lookup work case sensitive?
|
||||||
*/
|
*/
|
||||||
guint case_sensitive : 1;
|
guint case_sensitive : 1;
|
||||||
|
|
||||||
/* Boolean values to be adjusted "on the fly"
|
/* Boolean values to be adjusted "on the fly"
|
||||||
* to configure scanning behaviour.
|
* to configure scanning behaviour.
|
||||||
*/
|
*/
|
||||||
@@ -1526,31 +1514,31 @@ struct _GScanner
|
|||||||
/* unused fields */
|
/* unused fields */
|
||||||
gpointer user_data;
|
gpointer user_data;
|
||||||
guint max_parse_errors;
|
guint max_parse_errors;
|
||||||
|
|
||||||
/* g_scanner_error() increments this field */
|
/* g_scanner_error() increments this field */
|
||||||
guint parse_errors;
|
guint parse_errors;
|
||||||
|
|
||||||
/* name of input stream, featured by the default message handler */
|
/* name of input stream, featured by the default message handler */
|
||||||
const gchar *input_name;
|
const gchar *input_name;
|
||||||
|
|
||||||
/* data pointer for derived structures */
|
/* data pointer for derived structures */
|
||||||
gpointer derived_data;
|
gpointer derived_data;
|
||||||
|
|
||||||
/* link into the scanner configuration */
|
/* link into the scanner configuration */
|
||||||
GScannerConfig *config;
|
GScannerConfig *config;
|
||||||
|
|
||||||
/* fields filled in after g_scanner_get_next_token() */
|
/* fields filled in after g_scanner_get_next_token() */
|
||||||
GTokenType token;
|
GTokenType token;
|
||||||
GValue value;
|
GValue value;
|
||||||
guint line;
|
guint line;
|
||||||
guint position;
|
guint position;
|
||||||
|
|
||||||
/* fields filled in after g_scanner_peek_next_token() */
|
/* fields filled in after g_scanner_peek_next_token() */
|
||||||
GTokenType next_token;
|
GTokenType next_token;
|
||||||
GValue next_value;
|
GValue next_value;
|
||||||
guint next_line;
|
guint next_line;
|
||||||
guint next_position;
|
guint next_position;
|
||||||
|
|
||||||
/* to be considered private */
|
/* to be considered private */
|
||||||
GHashTable *symbol_table;
|
GHashTable *symbol_table;
|
||||||
const gchar *text;
|
const gchar *text;
|
||||||
@@ -1558,7 +1546,7 @@ struct _GScanner
|
|||||||
gint input_fd;
|
gint input_fd;
|
||||||
gint peeked_char;
|
gint peeked_char;
|
||||||
guint scope_id;
|
guint scope_id;
|
||||||
|
|
||||||
/* handler function for _warn and _error */
|
/* handler function for _warn and _error */
|
||||||
GScannerMsgFunc msg_handler;
|
GScannerMsgFunc msg_handler;
|
||||||
};
|
};
|
||||||
@@ -1629,18 +1617,18 @@ struct _GCompletion
|
|||||||
{
|
{
|
||||||
GList* items;
|
GList* items;
|
||||||
GCompletionFunc func;
|
GCompletionFunc func;
|
||||||
|
|
||||||
gchar* prefix;
|
gchar* prefix;
|
||||||
GList* cache;
|
GList* cache;
|
||||||
};
|
};
|
||||||
|
|
||||||
GCompletion* g_completion_new (GCompletionFunc func);
|
GCompletion* g_completion_new (GCompletionFunc func);
|
||||||
void g_completion_add_items (GCompletion* cmp,
|
void g_completion_add_items (GCompletion* cmp,
|
||||||
GList* items);
|
GList* items);
|
||||||
void g_completion_remove_items (GCompletion* cmp,
|
void g_completion_remove_items (GCompletion* cmp,
|
||||||
GList* items);
|
GList* items);
|
||||||
void g_completion_clear_items (GCompletion* cmp);
|
void g_completion_clear_items (GCompletion* cmp);
|
||||||
GList* g_completion_complete (GCompletion* cmp,
|
GList* g_completion_complete (GCompletion* cmp,
|
||||||
gchar* prefix,
|
gchar* prefix,
|
||||||
gchar** new_prefix);
|
gchar** new_prefix);
|
||||||
void g_completion_free (GCompletion* cmp);
|
void g_completion_free (GCompletion* cmp);
|
||||||
@@ -1694,8 +1682,23 @@ gpointer g_tuples_index (GTuples *tuples,
|
|||||||
gint field);
|
gint field);
|
||||||
|
|
||||||
|
|
||||||
|
/* Prime numbers.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* This function returns prime numbers spaced by approximately 1.5-2.0
|
||||||
|
* and is for use in resizing data structures which prefer
|
||||||
|
* prime-valued sizes. The closest spaced prime function returns the
|
||||||
|
* next largest prime, or the highest it knows about which is about
|
||||||
|
* MAXINT/4.
|
||||||
|
*/
|
||||||
|
|
||||||
|
guint g_spaced_primes_closest (guint num);
|
||||||
|
|
||||||
|
/* Glib version.
|
||||||
|
*/
|
||||||
|
extern const guint glib_major_version;
|
||||||
|
extern const guint glib_minor_version;
|
||||||
|
extern const guint glib_micro_version;
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
106
glib/garray.c
106
glib/garray.c
@@ -30,7 +30,9 @@ struct _GRealArray
|
|||||||
guint8 *data;
|
guint8 *data;
|
||||||
guint len;
|
guint len;
|
||||||
guint alloc;
|
guint alloc;
|
||||||
guint zero_terminated;
|
guint elt_size;
|
||||||
|
guint zero_terminated : 1;
|
||||||
|
guint clear : 1;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -43,7 +45,9 @@ static GMemChunk *array_mem_chunk = NULL;
|
|||||||
|
|
||||||
|
|
||||||
GArray*
|
GArray*
|
||||||
g_array_new (gboolean zero_terminated)
|
g_array_new (gboolean zero_terminated,
|
||||||
|
gboolean clear,
|
||||||
|
guint elt_size)
|
||||||
{
|
{
|
||||||
GRealArray *array;
|
GRealArray *array;
|
||||||
|
|
||||||
@@ -54,10 +58,12 @@ g_array_new (gboolean zero_terminated)
|
|||||||
|
|
||||||
array = g_chunk_new (GRealArray, array_mem_chunk);
|
array = g_chunk_new (GRealArray, array_mem_chunk);
|
||||||
|
|
||||||
array->data = NULL;
|
array->data = NULL;
|
||||||
array->len = 0;
|
array->len = 0;
|
||||||
array->alloc = 0;
|
array->alloc = 0;
|
||||||
array->zero_terminated = (zero_terminated ? 1 : 0);
|
array->zero_terminated = (zero_terminated ? 1 : 0);
|
||||||
|
array->clear = (clear ? 1 : 0);
|
||||||
|
array->elt_size = elt_size;
|
||||||
|
|
||||||
return (GArray*) array;
|
return (GArray*) array;
|
||||||
}
|
}
|
||||||
@@ -73,45 +79,52 @@ g_array_free (GArray *array,
|
|||||||
}
|
}
|
||||||
|
|
||||||
GArray*
|
GArray*
|
||||||
g_rarray_append (GArray *array,
|
g_array_append_vals (GArray *farray,
|
||||||
gpointer data,
|
gpointer data,
|
||||||
gint size)
|
guint len)
|
||||||
{
|
{
|
||||||
g_array_maybe_expand ((GRealArray*) array, size);
|
GRealArray *array = (GRealArray*) farray;
|
||||||
|
|
||||||
memcpy (array->data + array->len, data, size);
|
g_array_maybe_expand (array, len);
|
||||||
|
|
||||||
array->len += size;
|
memcpy (array->data + array->elt_size * array->len, data, array->elt_size * len);
|
||||||
|
|
||||||
return array;
|
array->len += len;
|
||||||
|
|
||||||
|
return farray;
|
||||||
}
|
}
|
||||||
|
|
||||||
GArray*
|
GArray*
|
||||||
g_rarray_prepend (GArray *array,
|
g_array_prepend_vals (GArray *farray,
|
||||||
gpointer data,
|
gpointer data,
|
||||||
gint size)
|
guint len)
|
||||||
{
|
{
|
||||||
g_array_maybe_expand ((GRealArray*) array, size);
|
GRealArray *array = (GRealArray*) farray;
|
||||||
|
|
||||||
g_memmove (array->data + size, array->data, array->len);
|
g_array_maybe_expand (array, len);
|
||||||
memcpy (array->data, data, size);
|
|
||||||
|
|
||||||
array->len += size;
|
g_memmove (array->data + array->elt_size * len, array->data, array->elt_size * array->len);
|
||||||
|
|
||||||
return array;
|
memcpy (array->data, data, len * array->elt_size);
|
||||||
|
|
||||||
|
array->len += len;
|
||||||
|
|
||||||
|
return farray;
|
||||||
}
|
}
|
||||||
|
|
||||||
GArray*
|
GArray*
|
||||||
g_rarray_truncate (GArray *array,
|
g_array_set_size (GArray *farray,
|
||||||
gint length,
|
guint length)
|
||||||
gint size)
|
|
||||||
{
|
{
|
||||||
if (array->data)
|
GRealArray *array = (GRealArray*) farray;
|
||||||
memset (array->data + length * size, 0, size);
|
|
||||||
array->len = length * size;
|
|
||||||
return array;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
if (array->len < length)
|
||||||
|
g_array_maybe_expand (array, length - array->len);
|
||||||
|
|
||||||
|
array->len = length;
|
||||||
|
|
||||||
|
return farray;
|
||||||
|
}
|
||||||
|
|
||||||
static gint
|
static gint
|
||||||
g_nearest_pow (gint num)
|
g_nearest_pow (gint num)
|
||||||
@@ -128,17 +141,19 @@ static void
|
|||||||
g_array_maybe_expand (GRealArray *array,
|
g_array_maybe_expand (GRealArray *array,
|
||||||
gint len)
|
gint len)
|
||||||
{
|
{
|
||||||
guint old_alloc;
|
guint want_alloc = (array->len + len + array->zero_terminated) * array->elt_size;
|
||||||
|
|
||||||
if ((array->len + len) > array->alloc)
|
if (want_alloc > array->alloc)
|
||||||
{
|
{
|
||||||
old_alloc = array->alloc;
|
guint old_alloc = array->alloc;
|
||||||
|
|
||||||
array->alloc = g_nearest_pow (array->len + array->zero_terminated + len);
|
array->alloc = g_nearest_pow (want_alloc);
|
||||||
array->alloc = MAX (array->alloc, MIN_ARRAY_SIZE);
|
array->alloc = MAX (array->alloc, MIN_ARRAY_SIZE);
|
||||||
|
|
||||||
array->data = g_realloc (array->data, array->alloc);
|
array->data = g_realloc (array->data, array->alloc);
|
||||||
|
|
||||||
memset (array->data + old_alloc, 0, array->alloc - old_alloc);
|
if (array->clear || array->zero_terminated)
|
||||||
|
memset (array->data + old_alloc, 0, array->alloc - old_alloc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -228,21 +243,26 @@ g_ptr_array_set_size (GPtrArray *farray,
|
|||||||
array->len = length;
|
array->len = length;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
gpointer
|
||||||
g_ptr_array_remove_index (GPtrArray* farray,
|
g_ptr_array_remove_index (GPtrArray* farray,
|
||||||
gint index)
|
gint index)
|
||||||
{
|
{
|
||||||
GRealPtrArray* array = (GRealPtrArray*) farray;
|
GRealPtrArray* array = (GRealPtrArray*) farray;
|
||||||
|
gpointer result;
|
||||||
|
|
||||||
g_return_if_fail (array);
|
g_return_val_if_fail (array, NULL);
|
||||||
|
|
||||||
g_return_if_fail (index < array->len);
|
g_return_val_if_fail (index >= 0 && index < array->len, NULL);
|
||||||
|
|
||||||
|
result = array->pdata[index];
|
||||||
|
|
||||||
array->pdata[index] = array->pdata[array->len - 1];
|
array->pdata[index] = array->pdata[array->len - 1];
|
||||||
|
|
||||||
array->pdata[array->len - 1] = NULL;
|
array->pdata[array->len - 1] = NULL;
|
||||||
|
|
||||||
array->len -= 1;
|
array->len -= 1;
|
||||||
|
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
gboolean
|
gboolean
|
||||||
@@ -284,11 +304,11 @@ g_ptr_array_add (GPtrArray* farray,
|
|||||||
|
|
||||||
GByteArray* g_byte_array_new (void)
|
GByteArray* g_byte_array_new (void)
|
||||||
{
|
{
|
||||||
return (GByteArray*) g_array_new (FALSE);
|
return (GByteArray*) g_array_new (FALSE, FALSE, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
void g_byte_array_free (GByteArray *array,
|
void g_byte_array_free (GByteArray *array,
|
||||||
gint free_segment)
|
gboolean free_segment)
|
||||||
{
|
{
|
||||||
g_array_free ((GArray*) array, free_segment);
|
g_array_free ((GArray*) array, free_segment);
|
||||||
}
|
}
|
||||||
@@ -297,7 +317,7 @@ GByteArray* g_byte_array_append (GByteArray *array,
|
|||||||
const guint8 *data,
|
const guint8 *data,
|
||||||
guint len)
|
guint len)
|
||||||
{
|
{
|
||||||
g_rarray_append ((GArray*) array, (guint8*)data, len);
|
g_array_append_vals ((GArray*) array, (guint8*)data, len);
|
||||||
|
|
||||||
return array;
|
return array;
|
||||||
}
|
}
|
||||||
@@ -306,15 +326,15 @@ GByteArray* g_byte_array_prepend (GByteArray *array,
|
|||||||
const guint8 *data,
|
const guint8 *data,
|
||||||
guint len)
|
guint len)
|
||||||
{
|
{
|
||||||
g_rarray_prepend ((GArray*) array, (guint8*)data, len);
|
g_array_prepend_vals ((GArray*) array, (guint8*)data, len);
|
||||||
|
|
||||||
return array;
|
return array;
|
||||||
}
|
}
|
||||||
|
|
||||||
GByteArray* g_byte_array_truncate (GByteArray *array,
|
GByteArray* g_byte_array_set_size (GByteArray *array,
|
||||||
gint length)
|
guint length)
|
||||||
{
|
{
|
||||||
g_rarray_truncate ((GArray*) array, length, 1);
|
g_array_set_size ((GArray*) array, length);
|
||||||
|
|
||||||
return array;
|
return array;
|
||||||
}
|
}
|
||||||
|
43
glib/ghash.c
43
glib/ghash.c
@@ -46,7 +46,6 @@ struct _GHashTable
|
|||||||
static void g_hash_table_resize (GHashTable *hash_table);
|
static void g_hash_table_resize (GHashTable *hash_table);
|
||||||
static GHashNode** g_hash_table_lookup_node(GHashTable *hash_table,
|
static GHashNode** g_hash_table_lookup_node(GHashTable *hash_table,
|
||||||
gconstpointer key);
|
gconstpointer key);
|
||||||
static gint g_hash_closest_prime (gint num);
|
|
||||||
static GHashNode* g_hash_node_new (gpointer key,
|
static GHashNode* g_hash_node_new (gpointer key,
|
||||||
gpointer value);
|
gpointer value);
|
||||||
static void g_hash_node_destroy (GHashNode *hash_node);
|
static void g_hash_node_destroy (GHashNode *hash_node);
|
||||||
@@ -63,7 +62,7 @@ g_hash_table_new (GHashFunc hash_func,
|
|||||||
{
|
{
|
||||||
GHashTable *hash_table;
|
GHashTable *hash_table;
|
||||||
gint i;
|
gint i;
|
||||||
|
|
||||||
hash_table = g_new (GHashTable, 1);
|
hash_table = g_new (GHashTable, 1);
|
||||||
hash_table->size = HASH_TABLE_MIN_SIZE;
|
hash_table->size = HASH_TABLE_MIN_SIZE;
|
||||||
hash_table->nnodes = 0;
|
hash_table->nnodes = 0;
|
||||||
@@ -71,7 +70,7 @@ g_hash_table_new (GHashFunc hash_func,
|
|||||||
hash_table->hash_func = hash_func ? hash_func : g_direct_hash;
|
hash_table->hash_func = hash_func ? hash_func : g_direct_hash;
|
||||||
hash_table->key_compare_func = key_compare_func;
|
hash_table->key_compare_func = key_compare_func;
|
||||||
hash_table->nodes = g_new (GHashNode*, hash_table->size);
|
hash_table->nodes = g_new (GHashNode*, hash_table->size);
|
||||||
|
|
||||||
for (i = 0; i < hash_table->size; i++)
|
for (i = 0; i < hash_table->size; i++)
|
||||||
hash_table->nodes[i] = NULL;
|
hash_table->nodes[i] = NULL;
|
||||||
|
|
||||||
@@ -84,10 +83,10 @@ g_hash_table_destroy (GHashTable *hash_table)
|
|||||||
gint i;
|
gint i;
|
||||||
|
|
||||||
g_return_if_fail (hash_table);
|
g_return_if_fail (hash_table);
|
||||||
|
|
||||||
for (i = 0; i < hash_table->size; i++)
|
for (i = 0; i < hash_table->size; i++)
|
||||||
g_hash_nodes_destroy (hash_table->nodes[i]);
|
g_hash_nodes_destroy (hash_table->nodes[i]);
|
||||||
|
|
||||||
g_free (hash_table->nodes);
|
g_free (hash_table->nodes);
|
||||||
g_free (hash_table);
|
g_free (hash_table);
|
||||||
}
|
}
|
||||||
@@ -100,7 +99,7 @@ g_hash_table_insert (GHashTable *hash_table,
|
|||||||
GHashNode **node;
|
GHashNode **node;
|
||||||
|
|
||||||
g_return_if_fail (hash_table);
|
g_return_if_fail (hash_table);
|
||||||
|
|
||||||
node = g_hash_table_lookup_node (hash_table, key);
|
node = g_hash_table_lookup_node (hash_table, key);
|
||||||
|
|
||||||
if (*node)
|
if (*node)
|
||||||
@@ -146,7 +145,7 @@ g_hash_table_lookup (GHashTable *hash_table,
|
|||||||
gconstpointer key)
|
gconstpointer key)
|
||||||
{
|
{
|
||||||
GHashNode *node;
|
GHashNode *node;
|
||||||
|
|
||||||
g_return_val_if_fail (hash_table, NULL);
|
g_return_val_if_fail (hash_table, NULL);
|
||||||
|
|
||||||
node = *g_hash_table_lookup_node (hash_table, key);
|
node = *g_hash_table_lookup_node (hash_table, key);
|
||||||
@@ -160,7 +159,7 @@ g_hash_table_lookup_extended (GHashTable *hash_table,
|
|||||||
gpointer *value)
|
gpointer *value)
|
||||||
{
|
{
|
||||||
GHashNode *node;
|
GHashNode *node;
|
||||||
|
|
||||||
g_return_val_if_fail (hash_table, FALSE);
|
g_return_val_if_fail (hash_table, FALSE);
|
||||||
|
|
||||||
node = *g_hash_table_lookup_node (hash_table, lookup_key);
|
node = *g_hash_table_lookup_node (hash_table, lookup_key);
|
||||||
@@ -232,19 +231,19 @@ g_hash_table_resize (GHashTable *hash_table)
|
|||||||
g_return_if_fail (hash_table);
|
g_return_if_fail (hash_table);
|
||||||
|
|
||||||
nodes_per_list = (gfloat) hash_table->nnodes / (gfloat) hash_table->size;
|
nodes_per_list = (gfloat) hash_table->nnodes / (gfloat) hash_table->size;
|
||||||
|
|
||||||
if ((nodes_per_list > 0.3 || hash_table->size <= HASH_TABLE_MIN_SIZE) &&
|
if ((nodes_per_list > 0.3 || hash_table->size <= HASH_TABLE_MIN_SIZE) &&
|
||||||
(nodes_per_list < 3.0 || hash_table->size >= HASH_TABLE_MAX_SIZE))
|
(nodes_per_list < 3.0 || hash_table->size >= HASH_TABLE_MAX_SIZE))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
new_size = CLAMP(g_hash_closest_prime (hash_table->nnodes),
|
new_size = CLAMP(g_spaced_primes_closest (hash_table->nnodes),
|
||||||
HASH_TABLE_MIN_SIZE,
|
HASH_TABLE_MIN_SIZE,
|
||||||
HASH_TABLE_MAX_SIZE);
|
HASH_TABLE_MAX_SIZE);
|
||||||
new_nodes = g_new (GHashNode*, new_size);
|
new_nodes = g_new (GHashNode*, new_size);
|
||||||
|
|
||||||
for (i = 0; i < new_size; i++)
|
for (i = 0; i < new_size; i++)
|
||||||
new_nodes[i] = NULL;
|
new_nodes[i] = NULL;
|
||||||
|
|
||||||
for (i = 0; i < hash_table->size; i++)
|
for (i = 0; i < hash_table->size; i++)
|
||||||
for (node = hash_table->nodes[i]; node; node = next)
|
for (node = hash_table->nodes[i]; node; node = next)
|
||||||
{
|
{
|
||||||
@@ -253,7 +252,7 @@ g_hash_table_resize (GHashTable *hash_table)
|
|||||||
node->next = new_nodes[hash_val];
|
node->next = new_nodes[hash_val];
|
||||||
new_nodes[hash_val] = node;
|
new_nodes[hash_val] = node;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_free (hash_table->nodes);
|
g_free (hash_table->nodes);
|
||||||
hash_table->nodes = new_nodes;
|
hash_table->nodes = new_nodes;
|
||||||
hash_table->size = new_size;
|
hash_table->size = new_size;
|
||||||
@@ -264,7 +263,7 @@ g_hash_table_lookup_node (GHashTable *hash_table,
|
|||||||
gconstpointer key)
|
gconstpointer key)
|
||||||
{
|
{
|
||||||
GHashNode **node;
|
GHashNode **node;
|
||||||
|
|
||||||
g_return_val_if_fail (hash_table, NULL);
|
g_return_val_if_fail (hash_table, NULL);
|
||||||
|
|
||||||
node = &hash_table->nodes
|
node = &hash_table->nodes
|
||||||
@@ -281,24 +280,10 @@ g_hash_table_lookup_node (GHashTable *hash_table,
|
|||||||
else
|
else
|
||||||
while (*node && (*node)->key != key)
|
while (*node && (*node)->key != key)
|
||||||
node = &(*node)->next;
|
node = &(*node)->next;
|
||||||
|
|
||||||
return node;
|
return node;
|
||||||
}
|
}
|
||||||
|
|
||||||
static gint
|
|
||||||
g_hash_closest_prime (gint num)
|
|
||||||
{
|
|
||||||
extern gint g_primes[];
|
|
||||||
extern gint g_nprimes;
|
|
||||||
gint i;
|
|
||||||
|
|
||||||
for (i = 0; i < g_nprimes; i++)
|
|
||||||
if ((g_primes[i] - num) > 0)
|
|
||||||
return g_primes[i];
|
|
||||||
|
|
||||||
return g_primes[g_nprimes - 1];
|
|
||||||
}
|
|
||||||
|
|
||||||
static GHashNode*
|
static GHashNode*
|
||||||
g_hash_node_new (gpointer key,
|
g_hash_node_new (gpointer key,
|
||||||
gpointer value)
|
gpointer value)
|
||||||
|
171
glib/glib.h
171
glib/glib.h
@@ -241,7 +241,7 @@
|
|||||||
# define ATEXIT(proc) (atexit (proc))
|
# define ATEXIT(proc) (atexit (proc))
|
||||||
# elif defined (HAVE_ON_EXIT)
|
# elif defined (HAVE_ON_EXIT)
|
||||||
# define ATEXIT(proc) (on_exit ((void (*)(int, void *))(proc), NULL))
|
# define ATEXIT(proc) (on_exit ((void (*)(int, void *))(proc), NULL))
|
||||||
# endif
|
# endif
|
||||||
#endif /* ATEXIT */
|
#endif /* ATEXIT */
|
||||||
|
|
||||||
|
|
||||||
@@ -438,9 +438,9 @@ typedef unsigned int guint;
|
|||||||
typedef float gfloat;
|
typedef float gfloat;
|
||||||
typedef double gdouble;
|
typedef double gdouble;
|
||||||
|
|
||||||
/* HAVE_LONG_DOUBLE doesn't work correctly on all platforms.
|
/* HAVE_LONG_DOUBLE doesn't work correctly on all platforms.
|
||||||
* Since gldouble isn't used anywhere, just disable it for now
|
* Since gldouble isn't used anywhere, just disable it for now */
|
||||||
*/
|
|
||||||
#if 0
|
#if 0
|
||||||
#ifdef HAVE_LONG_DOUBLE
|
#ifdef HAVE_LONG_DOUBLE
|
||||||
typedef long double gldouble;
|
typedef long double gldouble;
|
||||||
@@ -575,7 +575,7 @@ typedef enum
|
|||||||
/* log flags */
|
/* log flags */
|
||||||
G_LOG_FLAG_RECURSION = 1 << 0,
|
G_LOG_FLAG_RECURSION = 1 << 0,
|
||||||
G_LOG_FLAG_FATAL = 1 << 1,
|
G_LOG_FLAG_FATAL = 1 << 1,
|
||||||
|
|
||||||
/* GLib log levels */
|
/* GLib log levels */
|
||||||
G_LOG_LEVEL_ERROR = 1 << 2, /* always fatal */
|
G_LOG_LEVEL_ERROR = 1 << 2, /* always fatal */
|
||||||
G_LOG_LEVEL_CRITICAL = 1 << 3,
|
G_LOG_LEVEL_CRITICAL = 1 << 3,
|
||||||
@@ -583,7 +583,7 @@ typedef enum
|
|||||||
G_LOG_LEVEL_MESSAGE = 1 << 5,
|
G_LOG_LEVEL_MESSAGE = 1 << 5,
|
||||||
G_LOG_LEVEL_INFO = 1 << 6,
|
G_LOG_LEVEL_INFO = 1 << 6,
|
||||||
G_LOG_LEVEL_DEBUG = 1 << 7,
|
G_LOG_LEVEL_DEBUG = 1 << 7,
|
||||||
|
|
||||||
G_LOG_LEVEL_MASK = ~(G_LOG_FLAG_RECURSION | G_LOG_FLAG_FATAL)
|
G_LOG_LEVEL_MASK = ~(G_LOG_FLAG_RECURSION | G_LOG_FLAG_FATAL)
|
||||||
} GLogLevelFlags;
|
} GLogLevelFlags;
|
||||||
|
|
||||||
@@ -692,8 +692,8 @@ GList* g_list_insert (GList *list,
|
|||||||
gint position);
|
gint position);
|
||||||
GList* g_list_insert_sorted (GList *list,
|
GList* g_list_insert_sorted (GList *list,
|
||||||
gpointer data,
|
gpointer data,
|
||||||
GCompareFunc func);
|
GCompareFunc func);
|
||||||
GList* g_list_concat (GList *list1,
|
GList* g_list_concat (GList *list1,
|
||||||
GList *list2);
|
GList *list2);
|
||||||
GList* g_list_remove (GList *list,
|
GList* g_list_remove (GList *list,
|
||||||
gpointer data);
|
gpointer data);
|
||||||
@@ -737,8 +737,8 @@ GSList* g_slist_insert (GSList *list,
|
|||||||
gint position);
|
gint position);
|
||||||
GSList* g_slist_insert_sorted (GSList *list,
|
GSList* g_slist_insert_sorted (GSList *list,
|
||||||
gpointer data,
|
gpointer data,
|
||||||
GCompareFunc func);
|
GCompareFunc func);
|
||||||
GSList* g_slist_concat (GSList *list1,
|
GSList* g_slist_concat (GSList *list1,
|
||||||
GSList *list2);
|
GSList *list2);
|
||||||
GSList* g_slist_remove (GSList *list,
|
GSList* g_slist_remove (GSList *list,
|
||||||
gpointer data);
|
gpointer data);
|
||||||
@@ -1159,8 +1159,8 @@ void g_set_prgname (const gchar *prgname);
|
|||||||
|
|
||||||
/* Miscellaneous utility functions
|
/* Miscellaneous utility functions
|
||||||
*/
|
*/
|
||||||
guint g_parse_debug_string (const gchar *string,
|
guint g_parse_debug_string (const gchar *string,
|
||||||
GDebugKey *keys,
|
GDebugKey *keys,
|
||||||
guint nkeys);
|
guint nkeys);
|
||||||
gint g_snprintf (gchar *string,
|
gint g_snprintf (gchar *string,
|
||||||
gulong n,
|
gulong n,
|
||||||
@@ -1185,7 +1185,7 @@ gchar* g_get_current_dir (void);
|
|||||||
#define g_memmove(dest, src, size) G_STMT_START { \
|
#define g_memmove(dest, src, size) G_STMT_START { \
|
||||||
memmove ((dest), (src), (size)); \
|
memmove ((dest), (src), (size)); \
|
||||||
} G_STMT_END
|
} G_STMT_END
|
||||||
#else
|
#else
|
||||||
#define g_memmove(dest, src, size) G_STMT_START { \
|
#define g_memmove(dest, src, size) G_STMT_START { \
|
||||||
bcopy ((src), (dest), (size)); \
|
bcopy ((src), (dest), (size)); \
|
||||||
} G_STMT_END
|
} G_STMT_END
|
||||||
@@ -1226,7 +1226,7 @@ static inline guint
|
|||||||
g_bit_storage (guint number)
|
g_bit_storage (guint number)
|
||||||
{
|
{
|
||||||
register guint n_bits = 0;
|
register guint n_bits = 0;
|
||||||
|
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
n_bits++;
|
n_bits++;
|
||||||
@@ -1264,14 +1264,14 @@ GString* g_string_prepend (GString *string,
|
|||||||
const gchar *val);
|
const gchar *val);
|
||||||
GString* g_string_prepend_c (GString *string,
|
GString* g_string_prepend_c (GString *string,
|
||||||
gchar c);
|
gchar c);
|
||||||
GString* g_string_insert (GString *string,
|
GString* g_string_insert (GString *string,
|
||||||
gint pos,
|
gint pos,
|
||||||
const gchar *val);
|
const gchar *val);
|
||||||
GString* g_string_insert_c (GString *string,
|
GString* g_string_insert_c (GString *string,
|
||||||
gint pos,
|
gint pos,
|
||||||
gchar c);
|
gchar c);
|
||||||
GString* g_string_erase (GString *string,
|
GString* g_string_erase (GString *string,
|
||||||
gint pos,
|
gint pos,
|
||||||
gint len);
|
gint len);
|
||||||
GString* g_string_down (GString *string);
|
GString* g_string_down (GString *string);
|
||||||
GString* g_string_up (GString *string);
|
GString* g_string_up (GString *string);
|
||||||
@@ -1285,34 +1285,24 @@ void g_string_sprintfa (GString *string,
|
|||||||
|
|
||||||
/* Resizable arrays
|
/* Resizable arrays
|
||||||
*/
|
*/
|
||||||
#define g_array_length(array,type) \
|
|
||||||
(((array)->len)/sizeof(type))
|
|
||||||
#define g_array_append_val(array,type,val) \
|
|
||||||
g_rarray_append (array, (gpointer) &val, sizeof (type))
|
|
||||||
#define g_array_append_vals(array,type,vals,nvals) \
|
|
||||||
g_rarray_append (array, (gpointer) vals, sizeof (type) * nvals)
|
|
||||||
#define g_array_prepend_val(array,type,val) \
|
|
||||||
g_rarray_prepend (array, (gpointer) &val, sizeof (type))
|
|
||||||
#define g_array_prepend_vals(array,type,vals,nvals) \
|
|
||||||
g_rarray_prepend (array, (gpointer) vals, sizeof (type) * nvals)
|
|
||||||
#define g_array_truncate(array,type,length) \
|
|
||||||
g_rarray_truncate (array, length, sizeof (type))
|
|
||||||
#define g_array_index(array,type,index) \
|
|
||||||
((type*) array->data)[index]
|
|
||||||
|
|
||||||
GArray* g_array_new (gboolean zero_terminated);
|
#define g_array_append_val(a,v) g_array_append_vals(a,&v,1)
|
||||||
void g_array_free (GArray *array,
|
#define g_array_prepend_val(a,v) g_array_prepend_vals(a,&v,1)
|
||||||
gboolean free_segment);
|
#define g_array_index(a,t,i) (((t*)a->data)[i])
|
||||||
GArray* g_rarray_append (GArray *array,
|
|
||||||
gpointer data,
|
|
||||||
gint size);
|
|
||||||
GArray* g_rarray_prepend (GArray *array,
|
|
||||||
gpointer data,
|
|
||||||
gint size);
|
|
||||||
GArray* g_rarray_truncate (GArray *array,
|
|
||||||
gint length,
|
|
||||||
gint size);
|
|
||||||
|
|
||||||
|
GArray* g_array_new (gboolean zero_terminated,
|
||||||
|
gboolean clear,
|
||||||
|
guint element_size);
|
||||||
|
void g_array_free (GArray *array,
|
||||||
|
gboolean free_segment);
|
||||||
|
GArray* g_array_append_vals (GArray *array,
|
||||||
|
gpointer data,
|
||||||
|
guint len);
|
||||||
|
GArray* g_array_prepend_vals (GArray *array,
|
||||||
|
gpointer data,
|
||||||
|
guint len);
|
||||||
|
GArray* g_array_set_size (GArray *array,
|
||||||
|
guint length);
|
||||||
|
|
||||||
/* Resizable pointer array. This interface is much less complicated
|
/* Resizable pointer array. This interface is much less complicated
|
||||||
* than the above. Add appends appends a pointer. Remove fills any
|
* than the above. Add appends appends a pointer. Remove fills any
|
||||||
@@ -1324,30 +1314,28 @@ void g_ptr_array_free (GPtrArray *array,
|
|||||||
gboolean free_seg);
|
gboolean free_seg);
|
||||||
void g_ptr_array_set_size (GPtrArray *array,
|
void g_ptr_array_set_size (GPtrArray *array,
|
||||||
gint length);
|
gint length);
|
||||||
void g_ptr_array_remove_index (GPtrArray *array,
|
gpointer g_ptr_array_remove_index (GPtrArray *array,
|
||||||
gint index);
|
gint index);
|
||||||
gboolean g_ptr_array_remove (GPtrArray *array,
|
gboolean g_ptr_array_remove (GPtrArray *array,
|
||||||
gpointer data);
|
gpointer data);
|
||||||
void g_ptr_array_add (GPtrArray *array,
|
void g_ptr_array_add (GPtrArray *array,
|
||||||
gpointer data);
|
gpointer data);
|
||||||
|
|
||||||
|
|
||||||
/* Byte arrays, an array of guint8. Implemented as a GArray,
|
/* Byte arrays, an array of guint8. Implemented as a GArray,
|
||||||
* but type-safe.
|
* but type-safe.
|
||||||
*/
|
*/
|
||||||
GByteArray* g_byte_array_new (void);
|
|
||||||
void g_byte_array_free (GByteArray *array,
|
|
||||||
gint free_segment);
|
|
||||||
GByteArray* g_byte_array_append (GByteArray *array,
|
|
||||||
const guint8 *data,
|
|
||||||
guint len);
|
|
||||||
|
|
||||||
GByteArray* g_byte_array_prepend (GByteArray *array,
|
GByteArray* g_byte_array_new (void);
|
||||||
|
void g_byte_array_free (GByteArray *array,
|
||||||
|
gboolean free_segment);
|
||||||
|
GByteArray* g_byte_array_append (GByteArray *array,
|
||||||
const guint8 *data,
|
const guint8 *data,
|
||||||
guint len);
|
guint len);
|
||||||
|
GByteArray* g_byte_array_prepend (GByteArray *array,
|
||||||
GByteArray* g_byte_array_truncate (GByteArray *array,
|
const guint8 *data,
|
||||||
gint length);
|
guint len);
|
||||||
|
GByteArray* g_byte_array_set_size (GByteArray *array,
|
||||||
|
guint length);
|
||||||
|
|
||||||
|
|
||||||
/* Hash Functions
|
/* Hash Functions
|
||||||
@@ -1437,7 +1425,7 @@ typedef enum
|
|||||||
typedef enum
|
typedef enum
|
||||||
{
|
{
|
||||||
G_TOKEN_EOF = 0,
|
G_TOKEN_EOF = 0,
|
||||||
|
|
||||||
G_TOKEN_LEFT_PAREN = '(',
|
G_TOKEN_LEFT_PAREN = '(',
|
||||||
G_TOKEN_RIGHT_PAREN = ')',
|
G_TOKEN_RIGHT_PAREN = ')',
|
||||||
G_TOKEN_LEFT_CURLY = '{',
|
G_TOKEN_LEFT_CURLY = '{',
|
||||||
@@ -1446,11 +1434,11 @@ typedef enum
|
|||||||
G_TOKEN_RIGHT_BRACE = ']',
|
G_TOKEN_RIGHT_BRACE = ']',
|
||||||
G_TOKEN_EQUAL_SIGN = '=',
|
G_TOKEN_EQUAL_SIGN = '=',
|
||||||
G_TOKEN_COMMA = ',',
|
G_TOKEN_COMMA = ',',
|
||||||
|
|
||||||
G_TOKEN_NONE = 256,
|
G_TOKEN_NONE = 256,
|
||||||
|
|
||||||
G_TOKEN_ERROR,
|
G_TOKEN_ERROR,
|
||||||
|
|
||||||
G_TOKEN_CHAR,
|
G_TOKEN_CHAR,
|
||||||
G_TOKEN_BINARY,
|
G_TOKEN_BINARY,
|
||||||
G_TOKEN_OCTAL,
|
G_TOKEN_OCTAL,
|
||||||
@@ -1458,11 +1446,11 @@ typedef enum
|
|||||||
G_TOKEN_HEX,
|
G_TOKEN_HEX,
|
||||||
G_TOKEN_FLOAT,
|
G_TOKEN_FLOAT,
|
||||||
G_TOKEN_STRING,
|
G_TOKEN_STRING,
|
||||||
|
|
||||||
G_TOKEN_SYMBOL,
|
G_TOKEN_SYMBOL,
|
||||||
G_TOKEN_IDENTIFIER,
|
G_TOKEN_IDENTIFIER,
|
||||||
G_TOKEN_IDENTIFIER_NULL,
|
G_TOKEN_IDENTIFIER_NULL,
|
||||||
|
|
||||||
G_TOKEN_COMMENT_SINGLE,
|
G_TOKEN_COMMENT_SINGLE,
|
||||||
G_TOKEN_COMMENT_MULTI,
|
G_TOKEN_COMMENT_MULTI,
|
||||||
G_TOKEN_LAST
|
G_TOKEN_LAST
|
||||||
@@ -1491,11 +1479,11 @@ struct _GScannerConfig
|
|||||||
gchar *cset_identifier_first;
|
gchar *cset_identifier_first;
|
||||||
gchar *cset_identifier_nth;
|
gchar *cset_identifier_nth;
|
||||||
gchar *cpair_comment_single; /* default: "#\n" */
|
gchar *cpair_comment_single; /* default: "#\n" */
|
||||||
|
|
||||||
/* Should symbol lookup work case sensitive?
|
/* Should symbol lookup work case sensitive?
|
||||||
*/
|
*/
|
||||||
guint case_sensitive : 1;
|
guint case_sensitive : 1;
|
||||||
|
|
||||||
/* Boolean values to be adjusted "on the fly"
|
/* Boolean values to be adjusted "on the fly"
|
||||||
* to configure scanning behaviour.
|
* to configure scanning behaviour.
|
||||||
*/
|
*/
|
||||||
@@ -1526,31 +1514,31 @@ struct _GScanner
|
|||||||
/* unused fields */
|
/* unused fields */
|
||||||
gpointer user_data;
|
gpointer user_data;
|
||||||
guint max_parse_errors;
|
guint max_parse_errors;
|
||||||
|
|
||||||
/* g_scanner_error() increments this field */
|
/* g_scanner_error() increments this field */
|
||||||
guint parse_errors;
|
guint parse_errors;
|
||||||
|
|
||||||
/* name of input stream, featured by the default message handler */
|
/* name of input stream, featured by the default message handler */
|
||||||
const gchar *input_name;
|
const gchar *input_name;
|
||||||
|
|
||||||
/* data pointer for derived structures */
|
/* data pointer for derived structures */
|
||||||
gpointer derived_data;
|
gpointer derived_data;
|
||||||
|
|
||||||
/* link into the scanner configuration */
|
/* link into the scanner configuration */
|
||||||
GScannerConfig *config;
|
GScannerConfig *config;
|
||||||
|
|
||||||
/* fields filled in after g_scanner_get_next_token() */
|
/* fields filled in after g_scanner_get_next_token() */
|
||||||
GTokenType token;
|
GTokenType token;
|
||||||
GValue value;
|
GValue value;
|
||||||
guint line;
|
guint line;
|
||||||
guint position;
|
guint position;
|
||||||
|
|
||||||
/* fields filled in after g_scanner_peek_next_token() */
|
/* fields filled in after g_scanner_peek_next_token() */
|
||||||
GTokenType next_token;
|
GTokenType next_token;
|
||||||
GValue next_value;
|
GValue next_value;
|
||||||
guint next_line;
|
guint next_line;
|
||||||
guint next_position;
|
guint next_position;
|
||||||
|
|
||||||
/* to be considered private */
|
/* to be considered private */
|
||||||
GHashTable *symbol_table;
|
GHashTable *symbol_table;
|
||||||
const gchar *text;
|
const gchar *text;
|
||||||
@@ -1558,7 +1546,7 @@ struct _GScanner
|
|||||||
gint input_fd;
|
gint input_fd;
|
||||||
gint peeked_char;
|
gint peeked_char;
|
||||||
guint scope_id;
|
guint scope_id;
|
||||||
|
|
||||||
/* handler function for _warn and _error */
|
/* handler function for _warn and _error */
|
||||||
GScannerMsgFunc msg_handler;
|
GScannerMsgFunc msg_handler;
|
||||||
};
|
};
|
||||||
@@ -1629,18 +1617,18 @@ struct _GCompletion
|
|||||||
{
|
{
|
||||||
GList* items;
|
GList* items;
|
||||||
GCompletionFunc func;
|
GCompletionFunc func;
|
||||||
|
|
||||||
gchar* prefix;
|
gchar* prefix;
|
||||||
GList* cache;
|
GList* cache;
|
||||||
};
|
};
|
||||||
|
|
||||||
GCompletion* g_completion_new (GCompletionFunc func);
|
GCompletion* g_completion_new (GCompletionFunc func);
|
||||||
void g_completion_add_items (GCompletion* cmp,
|
void g_completion_add_items (GCompletion* cmp,
|
||||||
GList* items);
|
GList* items);
|
||||||
void g_completion_remove_items (GCompletion* cmp,
|
void g_completion_remove_items (GCompletion* cmp,
|
||||||
GList* items);
|
GList* items);
|
||||||
void g_completion_clear_items (GCompletion* cmp);
|
void g_completion_clear_items (GCompletion* cmp);
|
||||||
GList* g_completion_complete (GCompletion* cmp,
|
GList* g_completion_complete (GCompletion* cmp,
|
||||||
gchar* prefix,
|
gchar* prefix,
|
||||||
gchar** new_prefix);
|
gchar** new_prefix);
|
||||||
void g_completion_free (GCompletion* cmp);
|
void g_completion_free (GCompletion* cmp);
|
||||||
@@ -1694,8 +1682,23 @@ gpointer g_tuples_index (GTuples *tuples,
|
|||||||
gint field);
|
gint field);
|
||||||
|
|
||||||
|
|
||||||
|
/* Prime numbers.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* This function returns prime numbers spaced by approximately 1.5-2.0
|
||||||
|
* and is for use in resizing data structures which prefer
|
||||||
|
* prime-valued sizes. The closest spaced prime function returns the
|
||||||
|
* next largest prime, or the highest it knows about which is about
|
||||||
|
* MAXINT/4.
|
||||||
|
*/
|
||||||
|
|
||||||
|
guint g_spaced_primes_closest (guint num);
|
||||||
|
|
||||||
|
/* Glib version.
|
||||||
|
*/
|
||||||
|
extern const guint glib_major_version;
|
||||||
|
extern const guint glib_minor_version;
|
||||||
|
extern const guint glib_micro_version;
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
@@ -18,14 +18,11 @@
|
|||||||
*/
|
*/
|
||||||
#include "glib.h"
|
#include "glib.h"
|
||||||
|
|
||||||
|
static const guint g_primes[] =
|
||||||
gint g_primes[] =
|
|
||||||
{
|
{
|
||||||
11,
|
11,
|
||||||
15,
|
19,
|
||||||
23,
|
37,
|
||||||
35,
|
|
||||||
49,
|
|
||||||
73,
|
73,
|
||||||
109,
|
109,
|
||||||
163,
|
163,
|
||||||
@@ -59,4 +56,16 @@ gint g_primes[] =
|
|||||||
13845163,
|
13845163,
|
||||||
};
|
};
|
||||||
|
|
||||||
gint g_nprimes = sizeof (g_primes) / sizeof (g_primes[0]);
|
static const guint g_nprimes = sizeof (g_primes) / sizeof (g_primes[0]);
|
||||||
|
|
||||||
|
guint
|
||||||
|
g_spaced_primes_closest (guint num)
|
||||||
|
{
|
||||||
|
gint i;
|
||||||
|
|
||||||
|
for (i = 0; i < g_nprimes; i++)
|
||||||
|
if (g_primes[i] > num)
|
||||||
|
return g_primes[i];
|
||||||
|
|
||||||
|
return g_primes[g_nprimes - 1];
|
||||||
|
}
|
||||||
|
23
gprimes.c
23
gprimes.c
@@ -18,14 +18,11 @@
|
|||||||
*/
|
*/
|
||||||
#include "glib.h"
|
#include "glib.h"
|
||||||
|
|
||||||
|
static const guint g_primes[] =
|
||||||
gint g_primes[] =
|
|
||||||
{
|
{
|
||||||
11,
|
11,
|
||||||
15,
|
19,
|
||||||
23,
|
37,
|
||||||
35,
|
|
||||||
49,
|
|
||||||
73,
|
73,
|
||||||
109,
|
109,
|
||||||
163,
|
163,
|
||||||
@@ -59,4 +56,16 @@ gint g_primes[] =
|
|||||||
13845163,
|
13845163,
|
||||||
};
|
};
|
||||||
|
|
||||||
gint g_nprimes = sizeof (g_primes) / sizeof (g_primes[0]);
|
static const guint g_nprimes = sizeof (g_primes) / sizeof (g_primes[0]);
|
||||||
|
|
||||||
|
guint
|
||||||
|
g_spaced_primes_closest (guint num)
|
||||||
|
{
|
||||||
|
gint i;
|
||||||
|
|
||||||
|
for (i = 0; i < g_nprimes; i++)
|
||||||
|
if (g_primes[i] > num)
|
||||||
|
return g_primes[i];
|
||||||
|
|
||||||
|
return g_primes[g_nprimes - 1];
|
||||||
|
}
|
||||||
|
34
testglib.c
34
testglib.c
@@ -199,7 +199,7 @@ my_hash_compare (gconstpointer a,
|
|||||||
return *((const gint*) a) == *((const gint*) b);
|
return *((const gint*) a) == *((const gint*) b);
|
||||||
}
|
}
|
||||||
|
|
||||||
gint
|
gint
|
||||||
my_list_compare_one (gconstpointer a, gconstpointer b)
|
my_list_compare_one (gconstpointer a, gconstpointer b)
|
||||||
{
|
{
|
||||||
gint one = *((const gint*)a);
|
gint one = *((const gint*)a);
|
||||||
@@ -207,7 +207,7 @@ my_list_compare_one (gconstpointer a, gconstpointer b)
|
|||||||
return one-two;
|
return one-two;
|
||||||
}
|
}
|
||||||
|
|
||||||
gint
|
gint
|
||||||
my_list_compare_two (gconstpointer a, gconstpointer b)
|
my_list_compare_two (gconstpointer a, gconstpointer b)
|
||||||
{
|
{
|
||||||
gint one = *((const gint*)a);
|
gint one = *((const gint*)a);
|
||||||
@@ -348,7 +348,7 @@ main (int argc,
|
|||||||
|
|
||||||
g_list_free (list);
|
g_list_free (list);
|
||||||
list = NULL;
|
list = NULL;
|
||||||
|
|
||||||
for (i = 0; i < 10; i++)
|
for (i = 0; i < 10; i++)
|
||||||
list = g_list_insert_sorted (list, &morenums[i], my_list_compare_one);
|
list = g_list_insert_sorted (list, &morenums[i], my_list_compare_one);
|
||||||
|
|
||||||
@@ -363,10 +363,10 @@ main (int argc,
|
|||||||
if (*((gint*) t->data) != i)
|
if (*((gint*) t->data) != i)
|
||||||
g_error ("Sorted insert failed");
|
g_error ("Sorted insert failed");
|
||||||
}
|
}
|
||||||
|
|
||||||
g_list_free (list);
|
g_list_free (list);
|
||||||
list = NULL;
|
list = NULL;
|
||||||
|
|
||||||
for (i = 0; i < 10; i++)
|
for (i = 0; i < 10; i++)
|
||||||
list = g_list_insert_sorted (list, &morenums[i], my_list_compare_two);
|
list = g_list_insert_sorted (list, &morenums[i], my_list_compare_two);
|
||||||
|
|
||||||
@@ -381,7 +381,7 @@ main (int argc,
|
|||||||
if (*((gint*) t->data) != (9 - i))
|
if (*((gint*) t->data) != (9 - i))
|
||||||
g_error ("Sorted insert failed");
|
g_error ("Sorted insert failed");
|
||||||
}
|
}
|
||||||
|
|
||||||
g_list_free (list);
|
g_list_free (list);
|
||||||
|
|
||||||
g_print ("ok\n");
|
g_print ("ok\n");
|
||||||
@@ -418,10 +418,10 @@ main (int argc,
|
|||||||
if (*((gint*) st->data) != i)
|
if (*((gint*) st->data) != i)
|
||||||
g_error ("Sorted insert failed");
|
g_error ("Sorted insert failed");
|
||||||
}
|
}
|
||||||
|
|
||||||
g_slist_free(slist);
|
g_slist_free(slist);
|
||||||
slist = NULL;
|
slist = NULL;
|
||||||
|
|
||||||
for (i = 0; i < 10; i++)
|
for (i = 0; i < 10; i++)
|
||||||
slist = g_slist_insert_sorted (slist, &morenums[i], my_list_compare_two);
|
slist = g_slist_insert_sorted (slist, &morenums[i], my_list_compare_two);
|
||||||
|
|
||||||
@@ -436,7 +436,7 @@ main (int argc,
|
|||||||
if (*((gint*) st->data) != (9 - i))
|
if (*((gint*) st->data) != (9 - i))
|
||||||
g_error("Sorted insert failed");
|
g_error("Sorted insert failed");
|
||||||
}
|
}
|
||||||
|
|
||||||
g_slist_free(slist);
|
g_slist_free(slist);
|
||||||
|
|
||||||
g_print ("ok\n");
|
g_print ("ok\n");
|
||||||
@@ -555,9 +555,9 @@ main (int argc,
|
|||||||
|
|
||||||
g_print ("checking arrays...");
|
g_print ("checking arrays...");
|
||||||
|
|
||||||
garray = g_array_new (FALSE);
|
garray = g_array_new (FALSE, FALSE, sizeof (gint));
|
||||||
for (i = 0; i < 10000; i++)
|
for (i = 0; i < 10000; i++)
|
||||||
g_array_append_val (garray, gint, i);
|
g_array_append_val (garray, i);
|
||||||
|
|
||||||
for (i = 0; i < 10000; i++)
|
for (i = 0; i < 10000; i++)
|
||||||
if (g_array_index (garray, gint, i) != i)
|
if (g_array_index (garray, gint, i) != i)
|
||||||
@@ -565,13 +565,13 @@ main (int argc,
|
|||||||
|
|
||||||
g_array_free (garray, TRUE);
|
g_array_free (garray, TRUE);
|
||||||
|
|
||||||
garray = g_array_new (FALSE);
|
garray = g_array_new (FALSE, FALSE, sizeof (gint));
|
||||||
for (i = 0; i < 10000; i++)
|
for (i = 0; i < 100; i++)
|
||||||
g_array_prepend_val (garray, gint, i);
|
g_array_prepend_val (garray, i);
|
||||||
|
|
||||||
for (i = 0; i < 10000; i++)
|
for (i = 0; i < 100; i++)
|
||||||
if (g_array_index (garray, gint, i) != (10000 - i - 1))
|
if (g_array_index (garray, gint, i) != (100 - i - 1))
|
||||||
g_print ("uh oh: %d ( %d )\n", g_array_index (garray, gint, i), 10000 - i - 1);
|
g_print ("uh oh: %d ( %d )\n", g_array_index (garray, gint, i), 100 - i - 1);
|
||||||
|
|
||||||
g_array_free (garray, TRUE);
|
g_array_free (garray, TRUE);
|
||||||
|
|
||||||
|
@@ -199,7 +199,7 @@ my_hash_compare (gconstpointer a,
|
|||||||
return *((const gint*) a) == *((const gint*) b);
|
return *((const gint*) a) == *((const gint*) b);
|
||||||
}
|
}
|
||||||
|
|
||||||
gint
|
gint
|
||||||
my_list_compare_one (gconstpointer a, gconstpointer b)
|
my_list_compare_one (gconstpointer a, gconstpointer b)
|
||||||
{
|
{
|
||||||
gint one = *((const gint*)a);
|
gint one = *((const gint*)a);
|
||||||
@@ -207,7 +207,7 @@ my_list_compare_one (gconstpointer a, gconstpointer b)
|
|||||||
return one-two;
|
return one-two;
|
||||||
}
|
}
|
||||||
|
|
||||||
gint
|
gint
|
||||||
my_list_compare_two (gconstpointer a, gconstpointer b)
|
my_list_compare_two (gconstpointer a, gconstpointer b)
|
||||||
{
|
{
|
||||||
gint one = *((const gint*)a);
|
gint one = *((const gint*)a);
|
||||||
@@ -348,7 +348,7 @@ main (int argc,
|
|||||||
|
|
||||||
g_list_free (list);
|
g_list_free (list);
|
||||||
list = NULL;
|
list = NULL;
|
||||||
|
|
||||||
for (i = 0; i < 10; i++)
|
for (i = 0; i < 10; i++)
|
||||||
list = g_list_insert_sorted (list, &morenums[i], my_list_compare_one);
|
list = g_list_insert_sorted (list, &morenums[i], my_list_compare_one);
|
||||||
|
|
||||||
@@ -363,10 +363,10 @@ main (int argc,
|
|||||||
if (*((gint*) t->data) != i)
|
if (*((gint*) t->data) != i)
|
||||||
g_error ("Sorted insert failed");
|
g_error ("Sorted insert failed");
|
||||||
}
|
}
|
||||||
|
|
||||||
g_list_free (list);
|
g_list_free (list);
|
||||||
list = NULL;
|
list = NULL;
|
||||||
|
|
||||||
for (i = 0; i < 10; i++)
|
for (i = 0; i < 10; i++)
|
||||||
list = g_list_insert_sorted (list, &morenums[i], my_list_compare_two);
|
list = g_list_insert_sorted (list, &morenums[i], my_list_compare_two);
|
||||||
|
|
||||||
@@ -381,7 +381,7 @@ main (int argc,
|
|||||||
if (*((gint*) t->data) != (9 - i))
|
if (*((gint*) t->data) != (9 - i))
|
||||||
g_error ("Sorted insert failed");
|
g_error ("Sorted insert failed");
|
||||||
}
|
}
|
||||||
|
|
||||||
g_list_free (list);
|
g_list_free (list);
|
||||||
|
|
||||||
g_print ("ok\n");
|
g_print ("ok\n");
|
||||||
@@ -418,10 +418,10 @@ main (int argc,
|
|||||||
if (*((gint*) st->data) != i)
|
if (*((gint*) st->data) != i)
|
||||||
g_error ("Sorted insert failed");
|
g_error ("Sorted insert failed");
|
||||||
}
|
}
|
||||||
|
|
||||||
g_slist_free(slist);
|
g_slist_free(slist);
|
||||||
slist = NULL;
|
slist = NULL;
|
||||||
|
|
||||||
for (i = 0; i < 10; i++)
|
for (i = 0; i < 10; i++)
|
||||||
slist = g_slist_insert_sorted (slist, &morenums[i], my_list_compare_two);
|
slist = g_slist_insert_sorted (slist, &morenums[i], my_list_compare_two);
|
||||||
|
|
||||||
@@ -436,7 +436,7 @@ main (int argc,
|
|||||||
if (*((gint*) st->data) != (9 - i))
|
if (*((gint*) st->data) != (9 - i))
|
||||||
g_error("Sorted insert failed");
|
g_error("Sorted insert failed");
|
||||||
}
|
}
|
||||||
|
|
||||||
g_slist_free(slist);
|
g_slist_free(slist);
|
||||||
|
|
||||||
g_print ("ok\n");
|
g_print ("ok\n");
|
||||||
@@ -555,9 +555,9 @@ main (int argc,
|
|||||||
|
|
||||||
g_print ("checking arrays...");
|
g_print ("checking arrays...");
|
||||||
|
|
||||||
garray = g_array_new (FALSE);
|
garray = g_array_new (FALSE, FALSE, sizeof (gint));
|
||||||
for (i = 0; i < 10000; i++)
|
for (i = 0; i < 10000; i++)
|
||||||
g_array_append_val (garray, gint, i);
|
g_array_append_val (garray, i);
|
||||||
|
|
||||||
for (i = 0; i < 10000; i++)
|
for (i = 0; i < 10000; i++)
|
||||||
if (g_array_index (garray, gint, i) != i)
|
if (g_array_index (garray, gint, i) != i)
|
||||||
@@ -565,13 +565,13 @@ main (int argc,
|
|||||||
|
|
||||||
g_array_free (garray, TRUE);
|
g_array_free (garray, TRUE);
|
||||||
|
|
||||||
garray = g_array_new (FALSE);
|
garray = g_array_new (FALSE, FALSE, sizeof (gint));
|
||||||
for (i = 0; i < 10000; i++)
|
for (i = 0; i < 100; i++)
|
||||||
g_array_prepend_val (garray, gint, i);
|
g_array_prepend_val (garray, i);
|
||||||
|
|
||||||
for (i = 0; i < 10000; i++)
|
for (i = 0; i < 100; i++)
|
||||||
if (g_array_index (garray, gint, i) != (10000 - i - 1))
|
if (g_array_index (garray, gint, i) != (100 - i - 1))
|
||||||
g_print ("uh oh: %d ( %d )\n", g_array_index (garray, gint, i), 10000 - i - 1);
|
g_print ("uh oh: %d ( %d )\n", g_array_index (garray, gint, i), 100 - i - 1);
|
||||||
|
|
||||||
g_array_free (garray, TRUE);
|
g_array_free (garray, TRUE);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user