+2003-01-26 Anders Carlsson <andersca@codefactory.se>
+
+ * dbus/dbus-auth.c: (process_auth), (_dbus_auth_unref):
+ * dbus/dbus-connection.c: (_dbus_connection_new_for_transport),
+ (dbus_connection_unref):
+ * dbus/dbus-marshal.c: (_dbus_marshal_test):
+ * dbus/dbus-message.c: (dbus_message_unref),
+ Plug memory leaks.
+
+ (dbus_message_get_fields):
+ Remove debugging printout.
+
+ (_dbus_message_loader_return_buffer):
+ Don't store the header string.
+
+ (_dbus_message_test):
+ Plug leaks.
+
2003-01-26 Richard Hult <rhult@codefactory.se>
* glib/dbus-gmain.c (dbus_connection_dispatch): Traverse a copy of
if (!send_mechanisms (auth))
return FALSE;
}
-
+
+ _dbus_string_free (&mech);
+ _dbus_string_free (&base64_response);
+ _dbus_string_free (&decoded_response);
+
return TRUE;
failed:
{
_dbus_list_clear (& DBUS_AUTH_CLIENT (auth)->mechs_to_try);
}
-
+
+ _dbus_string_free (&auth->identity);
_dbus_string_free (&auth->incoming);
_dbus_string_free (&auth->outgoing);
dbus_free (auth);
if (watch_list)
_dbus_watch_list_free (watch_list);
+
+ if (timeout_list)
+ _dbus_timeout_list_free (timeout_list);
return NULL;
}
_dbus_watch_list_free (connection->watches);
connection->watches = NULL;
+ _dbus_timeout_list_free (connection->timeouts);
+ connection->timeouts = NULL;
+
_dbus_connection_free_data_slots (connection);
_dbus_hash_iter_init (connection->handler_table, &iter);
_dbus_string_free (&message->header);
_dbus_string_free (&message->body);
+ dbus_free (message->sender);
dbus_free (message->service);
dbus_free (message->name);
dbus_free (message);
DBusResultCode retval;
va_list var_args;
- _dbus_verbose_bytes_of_string (&message->header, 0,
- _dbus_string_get_length (&message->header));
va_start (var_args, first_field_type);
retval = dbus_message_get_fields_valist (message, first_field_type, var_args);
va_end (var_args);
*service = NULL;
*name = NULL;
*sender = NULL;
-
+
/* Now handle the fields */
while (pos < header_len)
{
_dbus_assert (_dbus_string_get_length (&message->header) == 0);
_dbus_assert (_dbus_string_get_length (&message->body) == 0);
- if (!_dbus_string_move_len (&loader->data, 0, header_len, &message->header, 0))
- {
- _dbus_list_remove_last (&loader->messages, message);
- dbus_message_unref (message);
- break;
- }
+ /* Delete header part */
+ _dbus_string_delete (&loader->data, 0, header_len);
if (!_dbus_string_move_len (&loader->data, 0, body_len, &message->body, 0))
{
break;
}
- _dbus_assert (_dbus_string_get_length (&message->header) == header_len);
_dbus_assert (_dbus_string_get_length (&message->body) == body_len);
-
+
_dbus_verbose ("Loaded message %p\n", message);
}
else
if (strcmp (our_str, "Test string") != 0)
_dbus_assert_not_reached ("strings differ!");
+
+ dbus_free (our_str);
+ dbus_message_unref (message);
message = dbus_message_new ("org.freedesktop.DBus.Test", "testMessage");
message->client_serial = 1;