2003-03-15 Havoc Pennington <hp@pobox.com>
authorHavoc Pennington <hp@redhat.com>
Sat, 15 Mar 2003 20:47:16 +0000 (20:47 +0000)
committerHavoc Pennington <hp@redhat.com>
Sat, 15 Mar 2003 20:47:16 +0000 (20:47 +0000)
commitf587ce7845edb0eb01451368d01b5bc86b5904cd
treef3a549cd61df701882d818b5fc452b1438097f5b
parentf05f87a825ab8ed5273674a7f65521ffc526f0d2
2003-03-15  Havoc Pennington  <hp@pobox.com>

Make it pass the Hello handling test including all OOM codepaths.
Now to do other messages...

* bus/services.c (bus_service_remove_owner): fix crash when
removing owner from an empty list of owners
(bus_registry_ensure): don't leave service in the list of
a connection's owned services if we fail to put the service
in the hash table.

* bus/connection.c (bus_connection_preallocate_oom_error): set
error flag on the OOM error.

* dbus/dbus-connection.c (_dbus_connection_new_for_transport):
handle _dbus_transport_set_connection failure

* dbus/dbus-transport-unix.c (_dbus_transport_new_for_fd): modify
to create watches up front and simply enable/disable them as
needed.
(unix_connection_set): this can now fail on OOM

* dbus/dbus-timeout.c, dbus/dbus-watch.c: add concept
of enabling/disabling a watch or timeout.

* bus/loop.c (bus_loop_iterate): don't touch disabled
watches/timeouts

* glib/dbus-gmain.c: adapt to enable/disable watches and timeouts
25 files changed:
ChangeLog
bus/bus.c
bus/connection.c
bus/dispatch.c
bus/loop.c
bus/services.c
bus/test.c
dbus/dbus-connection-internal.h
dbus/dbus-connection.c
dbus/dbus-connection.h
dbus/dbus-server-protected.h
dbus/dbus-server-unix.c
dbus/dbus-server.c
dbus/dbus-server.h
dbus/dbus-timeout.c
dbus/dbus-timeout.h
dbus/dbus-transport-debug.c
dbus/dbus-transport-protected.h
dbus/dbus-transport-unix.c
dbus/dbus-transport.c
dbus/dbus-transport.h
dbus/dbus-watch.c
dbus/dbus-watch.h
glib/dbus-gmain.c
test/watch.c