| Commit message (Collapse) | Author | Age | Files | Lines | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-test.c: enclose more of the file in the
	DBUS_BUILD_TESTS check.
	* dbus/dbus-sysdeps-pthread.c (PTHREAD_CHECK): fix for
	DBUS_DISABLE_ASSERT case.
	* dbus/dbus-connection.c (dbus_connection_get_unix_user): document
	that it only works on the server side
	* dbus/dbus-bus.c: add a global lock covering the BusData we
	attach to each connection
	(internal_bus_get): lock our access to the BusData
	(dbus_bus_register): lock the entire registration process
	with _DBUS_LOCK(bus_datas). If we get the lock and
	registration is already complete, silently return (vs. previous
	behavior of aborting).
	(dbus_bus_set_unique_name): lock the BusData
	(dbus_bus_get_unique_name): lock the BusData
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-threads.[hc]: Documentation improvements. Clarify how
	condition variables relate to recursive mutexes.
        * dbus/dbus-sysdeps-pthread.c, dbus/dbus-sysdeps-win-thread.c,
	dbus/dbus-threads.c: Split the platforms-specific thread
	implementations into their own files.
	* dbus/dbus-sysdeps-pthread.c
	(_dbus_pthread_condvar_wait_timeout): invert the return value, it
	was backward. Not that anything uses it.
 | 
| | 
| 
| 
| 
| 
|  | 
* dbus/dbus-threads.c (init_uninitialized_locks): Fix typo so it's
        _dbus_assert (thread_init_generation != _dbus_current_generation)
        not _dbus_assert (thread_init_generation == _dbus_current_generation)
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-memory.c: Use atomic variable to protect
        n_blocks_outstanding otherwise OOM will be reported using SMP on
        some arches
        * bus/dispatch.c: Add missing end of line characters
        * bus/desktop-file.c (parse_section_start, parse_key_value)
        (bus_desktop_file_load): Propertly handle OOM
        * dbus/dbus-threads.c (init_uninitialized_locks): Check that
        thread_init_generation equals _dbus_current_generation, not 0
 | 
| | 
| 
| 
| 
|  | 
* More documentation - all public API now documented according to
	Doxygen
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* doc/TODO: remove the int64 thing from 1.0 since it doesn't
	matter, and the message-loader-breaker thing since nobody is going
	to do it.  Add an item to 1.0 about supporting recursive locks
	in dbus_threads_init_default() though, since it should be easy.
	* dbus/dbus-connection.c (_dbus_connection_read_write_dispatch):
	Fix this in the !dispatch case to avoid busy-looping after
	disconnection
        * More misc docs improvements
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* configure.in (LT_CURRENT, LT_AGE): increment current and age to
	reflect addition of interfaces.
	* doc/dbus-specification.xml: describe a new
	org.freedesktop.DBus.Peer.GetMachineId method
	* dbus/dbus-string.c (_dbus_string_skip_white_reverse): new function
	(_dbus_string_skip_white, _dbus_string_skip_blank): use new
	DBUS_IS_ASCII_BLANK, DBUS_IS_ASCII_WHITE macros and fix assertion
	at end of skip_white
	(_dbus_string_chop_white): new function
	* bus/connection.c (bus_connections_setup_connection): call
	dbus_connection_set_route_peer_messages.
	* dbus/dbus-connection.c
	(_dbus_connection_peer_filter_unlocked_no_update): modify to
	support a GetMachineId method.
	Also, support a new flag to let the bus pass peer methods through
	to apps on the bus, which can be set with
	dbus_connection_set_route_peer_messages.
	Finally, handle and return an error for anything unknown on the
	Peer interface, which will allow us to extend the Peer interface
	in the future without fear that we're now intercepting something
	apps were wanting to see.
	* tools/dbus-uuidgen.c: a thin wrapper around the functions in
	dbus/dbus-uuidgen.c
	* dbus/dbus-uuidgen.c: implement the bulk of the dbus-uuidgen
	binary here, since most of the code is already in libdbus
	* dbus/dbus-sysdeps.c (_dbus_read_local_machine_uuid): read the
	uuid from the system config file
	* dbus/dbus-internals.c (_dbus_generate_uuid, _dbus_uuid_encode)
	(_dbus_read_uuid_file_without_creating)
	(_dbus_create_uuid_file_exclusively, _dbus_read_uuid_file): new
	uuid-related functions, partly factored out from dbus-server.c
	* dbus/dbus-sysdeps.c (_dbus_error_from_errno): convert EEXIST to
	DBUS_ERROR_FILE_EXISTS instead of EEXIST
	* dbus/dbus-protocol.h (DBUS_ERROR_FILE_EXISTS): add file exists error
	* tools/dbus-cleanup-sockets.1: explain what the point of this
	thing is a bit more
	* autogen.sh (run_configure): add --config-cache to default
	configure args
	* dbus/dbus-internals.h (_DBUS_ASSERT_ERROR_IS_SET): disable the
	error set/clear assertions when DBUS_DISABLE_CHECKS is defined
	* tools/dbus-launch.c (main): if xdisplay hasn't been opened,
	don't try to save address, fixes crash in make check
 | 
| | 
| 
| 
| 
| 
| 
|  | 
dbus_threads_init and be used by the dbus mutex functions to
  avoid deadlocks.
* doc/TODO: Remove recursive mutex dbus_connection_dispatch TODO item
 | 
| | 
| 
| 
| 
|  | 
initializing the internal thread implementation (Patch from
  Alexander Larsson <alexl at redhat dot com>)
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-threads.c (dbus_threads_init): change the documentation
  to reflect the init late change
* bus/bus.c (bus_context_new): Check user before we fork so we can
  print out an error message a user will be able to see
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-sysdeps.c, dbus/dbus-threads.c, dbus/dbus-internals.h:
  Add two more global locks for use on windows platforms.  These are
  unused on non-windows platforms but are not ifdefed out to avoid
  potential bugs (i.e. the few bytes lost does not warrent the extra
  maintanence and complexity that having seperate sets of locks would
  cause)
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
static DBusList *uninitialized_condvar_list to support new late
        initialization threading model.  In this model threads can be initialized
        even after the D-Bus API has been used but still needs to be initialized
        before the second thread has been started.  Mutexes and condvar addresses
        are stored in the two static lists and are replaced with actuall locks
        when threads are initalized.
        (_dbus_mutex_new_at_location): New method for creating a mutex and placing
        the location into the static list
        (_dbus_mutex_free_at_location): New method for removing a mutex location
        from the static list and freeing the mutex
        (_dbus_condvar_new_at_location): New method for creating a conditional
        variable and placing the location into the static list
        (_dbus_condvar_free_at_location): New method for removing a conditional
        variable location from the static list and freeing the conditional variable
        (init_uninitialized_locks): Atomic method which goes through the static
        lists of mutex and condvar location and updates them with actuall locks
        (init_global_locks): changed to init_locks
        * dbus/dbus-connection.c:
        (_dbus_connection_test_get_locks): New method for tests to check connections
        (_dbus_connection_new_for_transport): Use the new at_location mutex and
        condvar API
        (dbus_connection_allocate_data_slot): Pass in the global lock address
        to _dbus_data_slot_allocator_alloc
        * dbus/dbus-dataslot.c:
        (_dbus_data_slot_allocator_alloc): Use the address of the mutex
        instead of the mutex itself
        * dbus/dbus-message.c:
        (dbus_message_allocate_data_slot): Pass in the global lock address
        to _dbus_data_slot_allocator_alloc
        * dbus/dbus-pending-call.c:
        (dbus_pending_call_allocate_data_slot): Pass in the global lock address
        to _dbus_data_slot_allocator_alloc
        * dbus/dbus-server.c:
        (_dbus_server_init_base): Use the new at_location mutex API
        (dbus_server_allocate_data_slot): Pass in the global lock address
        to _dbus_data_slot_allocator_alloc
        * test/name-test/test-threads-init.c: New test case for late thread
        initialization
 | 
| |  | 
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* doc/TODO: remove the "guid" item
	* test/glib/test-profile.c (no_bus_thread_func): use open_private
	(with_bus_thread_func): use open_private
	* dbus/dbus-connection.c (dbus_connection_open_private): new
	function that works like the old dbus_connection_open()
	(dbus_connection_open): now returns an existing connection if
	possible
	* dbus/dbus-server-unix.c (handle_new_client_fd_and_unlock): pass
	through the GUID to the transport
	* dbus/dbus-server.c (_dbus_server_init_base): keep around the
	GUID in hex-encoded form.
	* dbus/dbus-server-debug-pipe.c (_dbus_transport_debug_pipe_new):
	pass GUID argument in to the transport
	* dbus/dbus-transport-unix.c (_dbus_transport_new_for_fd): add
	guid argument
	* dbus/dbus-transport.c (_dbus_transport_init_base): add guid argument
	* dbus/dbus-auth.c (_dbus_auth_server_new): add guid argument
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-server.c, dbus/dbus-server-unix.c: change semantics so
	you must disconnect before unref, since locking and other things
	are screwed up otherwise. Fix assorted other locking stuff.
	* dbus/dbus-signature.c (dbus_signature_iter_get_element_type):
	fix compilation
	* dbus/dbus-threads-internal.h: move the mutex/condvar wrappers
	into a private header and don't export from the library
	* throughout - call _dbus_thread_stuff vs. dbus_thread_stuff
 | 
| | 
| 
| 
| 
|  | 
* dbus/dbus-threads.c (init_global_locks): forgot to put the
	message cache lock here
 | 
| | 
| 
| 
| 
|  | 
* COPYING: switch to Academic Free License version 2.1 instead of
	2.0, to resolve complaints about patent termination clause.
 | 
| | 
| 
| 
| 
|  | 
* Update AFL version to 2.0 throughout the source files to reflect
	the update that was done a while ago.
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-pending-call.c: add the get/set object data
	boilerplate as for DBusConnection, etc. Use generic object data
	for the notify callback.
	* glib/dbus-gparser.c (parse_node): parse child nodes
	* tools/dbus-viewer.c: more hacking on the dbus-viewer
	* glib/dbus-gutils.c (_dbus_gutils_split_path): add a file to
	contain functions shared between the convenience lib and the
	installed lib
	* glib/Makefile.am (libdbus_glib_1_la_LDFLAGS): add
	-export-symbols-regex to the GLib library
	* dbus/dbus-object-tree.c (_dbus_object_tree_dispatch_and_unlock):
	fix the locking in here, and add a default handler for
	Introspect() that just returns sub-nodes.
2003-09-14  Havoc Pennington  <hp@pobox.com>
	* glib/dbus-gthread.c (dbus_g_thread_init): rename to make g_foo
	rather than gfoo consistent
	* glib/dbus-gproxy.h: delete for now, move contents to
	dbus-glib.h, because the include files don't work right since we
	aren't in the dbus/ subdir.
	* glib/dbus-gproxy.c (dbus_gproxy_send): finish implementing
	(dbus_gproxy_end_call): finish
	(dbus_gproxy_begin_call): finish
	* glib/dbus-gmain.c (dbus_set_g_error): new
	* glib/dbus-gobject.c (handle_introspect): include information
	about child nodes in the introspection
	* dbus/dbus-connection.c (dbus_connection_list_registered): new
	function to help in implementation of introspection
	* dbus/dbus-object-tree.c
	(_dbus_object_tree_list_registered_and_unlock): new function
2003-09-12  Havoc Pennington  <hp@pobox.com>
	* glib/dbus-gidl.h: add common base class for all the foo_info
	types
        * tools/dbus-viewer.c: add GTK-based introspection UI thingy
	similar to kdcop
	* test/Makefile.am: try test srcdir -ef . in addition to test
	srcdir = ., one of them should work (yeah lame)
        * glib/Makefile.am: build the "idl" parser stuff as a convenience
	library
	* glib/dbus-gparser.h: make description_load routines return
	NodeInfo* not Parser*
	* Makefile.am (SUBDIRS): build test dir after all library dirs
	* configure.in: add GTK+ detection
 | 
| | 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-connection.c: purge DBusMessageHandler
	* dbus/dbus-message-handler.c: remove DBusMessageHandler, just
	use callbacks everywhere
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
purge DBusObjectID
	* dbus/dbus-connection.c: port to no ObjectID, create a
	DBusObjectTree, rename ObjectTree to ObjectPath in public API
	* dbus/dbus-connection.h (struct DBusObjectTreeVTable): delete
	everything except UnregisterFunction and MessageFunction
	* dbus/dbus-marshal.c: port away from DBusObjectID,
	add DBUS_TYPE_OBJECT_PATH
	* dbus/dbus-object-registry.[hc], dbus/dbus-object.[hc],
	dbus/dbus-objectid.[hc]: remove these, we are moving to
	path-based object IDs
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-object.c: implement some of this
	* dbus/dbus-object-registry.c
	(_dbus_object_registry_add_and_unlock): fill in the object_id out
	param
	(_dbus_object_registry_new): handle OOM
 | 
| | 
| 
| 
| 
| 
| 
|  | 
* mono/Connection.cs: add more bindings
	* dbus/dbus-threads.c (dbus_threads_init): allow calling this
	more than once.
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* mono/Message.cs: implement Message.Wrap() that ensures we only
	have a single C# wrapper per DBusMessage, assuming it works which
	it probably doesn't.
	* dbus/dbus-message.c (dbus_message_allocate_data_slot): new
	(dbus_message_free_data_slot): new
	(dbus_message_set_data): new
	(dbus_message_get_data): new
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
Write a "test-profile" that does echo client-server with threads;
	profile reveals lock contention, memcpy/realloc of buffers, and
	UTF-8 validation as hot spots. 20% of lock contention eliminated
	with dbus_atomic_inc/dec implementation on x86.  Much remaining
	contention is global mempool locks for GList and DBusList.
	* dbus/dbus-sysdeps.c (_dbus_atomic_inc, _dbus_atomic_dec): add
	x86 implementation
	* dbus/dbus-connection.c (struct DBusConnection): use
	dbus_atomic_t for the reference count
	* dbus/dbus-message.c (struct DBusMessage): declare
	dbus_atomic_t values as volatile
	* configure.in: code to detect ability to use atomic integer
	operations in assembly, from GLib patch
	* dbus/dbus-internals.c (_dbus_verbose_real): call getpid every
	time, tired of it being wrong in threads and forked processes
	* glib/test-profile.c: a little program to bounce messages back
	and forth between threads and eat CPU
	* dbus/dbus-connection.c: add debug spew macros for debugging
	thread locks; include config.h at top; fix deadlock in
	dbus_connection_flush()
 | 
| | 
| 
| 
| 
|  | 
* dbus/dbus-userdb.c, dbus/dbus-sysdeps.c: redo all the passwd
	database usage so it all goes via the DBusUserDatabase cache.
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* qt/Makefile.am (dbusinclude_HEADERS): install dbus-qt.h,
	from Colin Walters
	* configure.in: fixes to Qt detection from Colin Walters
	* doc/Makefile.am: Only remove generated docbook dirs if they
	exist, from Colin Walters
	* dbus/dbus-bus.c: change how we set well-known connections to
	NULL, so that it works if a single connection is stored in
	two well-known array slots.
	* test/Makefile.am: remove a lot of stuff that isn't immediately
	useful, it's in CVS history if we want it.
	* test/test-service.c: use dbus-mainloop instead of that
	watch.[hc] crack
 | 
| | 
| 
| 
| 
| 
|  | 
* dbus/dbus-threads.c: Redo how the fake debug mutexes are done
	so it detects deadlocks and also we actually init threads when
	debugging.
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* bus/config-parser.c: hacking
	* dbus/dbus-memory.c: don't use DBusList for the list of stuff
	to shut down, since it could cause weirdness with the DBusList
	lock
	* dbus/dbus-list.c (_dbus_list_test): add tests for the
	link-oriented stack routines
	(alloc_link): free the mempool if the first alloc from it fails
	* dbus/dbus-mempool.c (struct DBusMemBlock): fix alignment issue
	* dbus/dbus-string.c (UNICODE_VALID): sync new version of this
	from GLib
	(_dbus_string_skip_white): new
	* doc/config-file.txt (Elements): add <includedir>
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-threads.c (dbus_mutex_new, dbus_condvar_new): with
	DBUS_BUILD_TESTS, actually alloc/free a block of memory for
	the mutex, so we can check for proper memory management
	and OOM handling.
	* dbus/dbus-dataslot.c: remove the mutex from
	DBusDataSlotAllocator and lock it manually when using it,
	to simplify fitting it into the global slots framework.
	* dbus/dbus-threads.c (init_static_locks): rework how we're
	handling global locks so they are easily shut down.
	* bus/policy.c (bus_policy_append_rule): fix
	* bus/test-main.c (main): check for memleaks
	* dbus/dbus-test.c (dbus_internal_do_not_use_run_tests): make
	test suite check for memleaks
	* dbus/dbus-memory.c: add support in test mode for tracking
	number of outstanding blocks
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
Oops - test code was only testing failure of around 30 of the
	mallocs in the test path, but it turns out there are 500+
	mallocs. I believe this was due to misguided linking setup such
	that there was one copy of dbus_malloc etc. in the daemon and one
	in the shared lib, and only daemon mallocs were tested. In any
	case, the test case now tests all 500+ mallocs, and doesn't pass
	yet, though there are lots of fixes in this patch.
	* dbus/dbus-connection.c (dbus_connection_dispatch_message): fix
	this so that it doesn't need to allocate memory, since it
	has no way of indicating failure due to OOM (and would be
	annoying if it did).
	* dbus/dbus-list.c (_dbus_list_pop_first_link): new function
	* bus/Makefile.am: rearrange to create two self-contained
	libraries, to avoid having libraries with overlapping symbols.
	that was resulting in weirdness, e.g. I'm pretty sure there
	were two copies of global static variables.
	* dbus/dbus-internals.c: move the malloc debug stuff to
	dbus-memory.c
	* dbus/dbus-list.c (free_link): free list mempool if it becomes
	empty.
	* dbus/dbus-memory.c (_dbus_disable_mem_pools): new function
	* dbus/dbus-address.c (dbus_parse_address): free list nodes
	on failure.
	* bus/dispatch.c (bus_dispatch_add_connection): free
	message_handler_slot when no longer using it, so
	memory leak checkers are happy for the test suite.
	* dbus/dbus-server-debug-pipe.c (debug_finalize): free server name
	* bus/bus.c (new_connection_callback): disconnect in here if
	bus_connections_setup_connection fails.
	* bus/connection.c (bus_connections_unref): fix to free the
	connections
	(bus_connections_setup_connection): if this fails, don't
	disconnect the connection, just be sure there are no side
	effects.
	* dbus/dbus-string.c (undo_alignment): unbreak this
	* dbus/dbus-auth.c (_dbus_auth_unref): free some stuff we were
	leaking
	(_dbus_auth_new): fix the order in which we free strings
	on OOM failure
	* bus/connection.c (bus_connection_disconnected): fix to
	not send ServiceDeleted multiple times in case of memory
	allocation failure
	* dbus/dbus-bus.c (dbus_bus_get_base_service): new function to
	get the base service name
	(dbus_bus_register_client): don't return base service name,
	instead store it on the DBusConnection and have an accessor
	function for it.
	(dbus_bus_register_client): rename dbus_bus_register()
	* bus/dispatch.c (check_hello_message): verify that other
	connections on the bus also got the correct results, not
	just the one sending hello
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-connection.c
	(dbus_connection_send_message_with_reply_and_block): fix crash
	where we ref'd the outgoing message instead of the returned reply
	* dbus/dbus-transport-unix.c (do_authentication): check read watch
	at the end of this function, so if we didn't need to read for
	authentication, we reinstall it for receiving messages
	* dbus/dbus-message.c (dbus_message_new_reply): allow replies to
	a NULL sender for peer-to-peer case
	* dbus/dbus-transport-unix.c (check_read_watch): handle
	!authenticated case correctly
	* glib/dbus-gmain.c: add support for DBusServer
	* dbus/dbus-server.c: add data slot support
	* glib/dbus-gmain.c (dbus_connection_setup_with_g_main): check
	return values and handle errors
	* dbus/dbus-dataslot.c: factor out the data slot stuff from
	DBusConnection
	* Doxyfile.in (INPUT): add glib subdir
	* glib/dbus-gmain.c (dbus_connection_setup_with_g_main): rename
	setup_with_g_main instead of hookup_with_g_main; write docs
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* Doxyfile.in (PREDEFINED): put DOXYGEN_SHOULD_SKIP_THIS in
	Doxyfile.in, not Doxyfile
	* dbus/dbus-keyring.c: do some hacking on this
	* dbus/dbus-sysdeps.c (_dbus_delete_file): new
	* dbus/dbus-errors.c (dbus_set_error_const): do not call
	dbus_error_init
	(dbus_set_error): remove dbus_error_init, check for message ==
	NULL *before* we sprintf into it, and add @todo about including
	system headers in this file
	* dbus/dbus-sysdeps.c (_dbus_create_file_exclusively): new
	* dbus/dbus-errors.h (DBUS_ERROR_FAILED): add
	* dbus/dbus-sysdeps.c (get_user_info): break this function out to
	get various bits of user information based on either username
	or user ID
	(_dbus_homedir_from_username): new function
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
Throughout: mop up all the Doxygen warnings and undocumented
	stuff.
	* dbus/dbus-sysdeps.c (do_exec): do not use execvp, we don't want
	to search any paths.
	* dbus/dbus-threads.c: move global mutex initializers to
	dbus-internals.h, multiple prototypes was confusing doxygen
	besides being kind of ugly
	* Doxyfile (PREDEFINED): have Doxygen define
	DOXYGEN_SHOULD_SKIP_THIS so we can exclude things from
	docs with #ifndef DOXYGEN_SHOULD_SKIP_THIS
	(do not abuse the feature! it's for stuff like the autogenerated
	macros in dbus-md5.c, not just for things you don't feel like
	documenting...)
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-auth.c: (client_try_next_mechanism):
	Plug a leak.
	* dbus/dbus-threads.c: (dbus_condvar_wait_timeout):
	Return TRUE if there's no thread implementation around.
	* glib/dbus-gmain.c: (free_source),
	(dbus_connection_hookup_with_g_main):
	Make sure to remove the GSource when the connection is finalized.
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* dbus/dbus-threads.c:
	* dbus/dbus-threads.h:
	Add condvars. Remove static mutext from API.
	Implement static mutexes by initializing them from threads_init.
	* glib/dbus-gthread.c:
	* qt/dbus-qthread.cpp:
	Update with the thread api changes.
	* dbus/dbus-list.c:
	* dbus/dbus-list.h:
	Turn StaticMutex into normal mutex + init function.
	Export new functions _dbus_list_alloc_link, _dbus_list_free_link,
	_dbus_list_append_link, _dbus_list_prepend_link
	* dbus/dbus-sysdeps.c:
	* dbus/dbus-sysdeps.h:
	New type dbus_atomic_t, and new functions _dbus_atomic_inc,
	_dbus_atomic_dec. Only slow fallback implementation at the moment.
	* dbus/dbus-protocol.h:
	Add DBUS_MESSAGE_LOCAL_DISCONNECT define
	* dbus/dbus-message.c:
	Make ref/unref atomic.
	Fix some docs.
	* dbus/dbus-connection-internal.h:
	* dbus/dbus-connection.c:
	* dbus/dbus-connection.h:
	Make threadsafe.
	Change _peek to _borrow,_return & _steal_borrowed.
	Change disconnect callback to event.
	Make dbus_connection_dispatch_messages reentrant.
	* dbus/dbus-transport.c:
	Don't ref the connection on calls to the transport
	implementation.
	* dbus/dbus-message-handler.c:
	Make threadsafe.
	* glib/dbus-gmain.c:
	Don't use peek_message anymore
	* test/Makefile.am:
	* test/debug-thread.c:
	* test/debug-thread.h:
	Simple thread implementation that asserts() on deadlocks in
	single-threaded code.
	* test/bus-test.c:
	(main) Call debug_threads_init.
	* test/watch.c:
	Use disconnect message instead of disconnect callback.
	* bus/connection.c:
	* bus/connection.h:
	Don't call dbus_connection_set_disconnect_function. Instead export
	bus_connection_disconnect.
	* bus/dispatch.c:
	Call bus_connection_disconnect when we get a disconnected message.
 | 
| |  | 
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
* bus/connection.c: implement routines for handling connections,
	first thing is keeping a list of owned services on each connection
	and setting up watches etc.
	* bus/services.c: implement a mapping from service names to lists
	of connections
	* dbus/dbus-hash.c: add DBUS_HASH_POINTER
	* dbus/dbus-threads.c (dbus_static_mutex_lock): add functions
	to use static mutexes for global data
	* dbus/dbus-connection.c (dbus_connection_set_data): add new
	collection of functions to set/get application-specific data
	on the DBusConnection.
 | 
|   
  
  
  
  
  
   | 
* dbus/dbus-threads.c: add thread stubs that a higher library
	layer can fill in. e.g. the GLib wrapper might fill them in with
	GThread stuff. We still need to use this thread API to
	thread-safe-ize the library.
 |