diff options
author | Ryan Lortie <desrt@desrt.ca> | 2007-09-20 00:13:35 -0400 |
---|---|---|
committer | Ryan Lortie <desrt@desrt.ca> | 2007-09-20 00:13:35 -0400 |
commit | 8c6b0ab3f7e437362112eeaf83a566475b85d27c (patch) | |
tree | a8e56fe093b9597bf69c1b4c9144ba8490a1c3da /dbus/dbus-string.h | |
parent | 44ed90c10d435f1a12c2b4b1a601040fa585ce38 (diff) |
Add support for compacting DBusStrings to release wasted memory.
2007-09-19 Ryan Lortie <desrt@desrt.ca>
* dbus/dbus-string.[ch] (compact, _dbus_string_compact,
_dbus_string_lock): new compact function to free up allocated memory
that is no longer used.
* dbus/dbus-message.c (load_message): call _dbus_string_compact on the
message loader buffer.
* dbus/dbus-transport-socket.c (do_reading, do_writing): call
_dbus_string_compact on the incoming/outgoing "encoded" buffers.
* dbus/dbus-string-util.c (_dbus_string_test): add a few tests for
string compacting.
Diffstat (limited to 'dbus/dbus-string.h')
-rw-r--r-- | dbus/dbus-string.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/dbus/dbus-string.h b/dbus/dbus-string.h index 076fed63..b0100f3a 100644 --- a/dbus/dbus-string.h +++ b/dbus/dbus-string.h @@ -73,6 +73,8 @@ dbus_bool_t _dbus_string_init_preallocated (DBusString *str, int allocate_size); void _dbus_string_free (DBusString *str); void _dbus_string_lock (DBusString *str); +dbus_bool_t _dbus_string_compact (DBusString *str, + int max_waste); #ifndef _dbus_string_get_data char* _dbus_string_get_data (DBusString *str); #endif /* _dbus_string_get_data */ |