2003-04-08 Colin Walters <walters@gnu.org>

* bus/bus.c (struct BusContext) [pidfile]: New member, to store
 	the pid file.
 	(bus_context_new): Set it.
 	(bus_context_unref): Use it to delete the pid file.
This commit is contained in:
Havoc Pennington 2003-04-09 00:27:41 +00:00
parent 0366385618
commit 0e1945b388
2 changed files with 25 additions and 0 deletions

View file

@ -1,3 +1,10 @@
2003-04-08 Colin Walters <walters@gnu.org>
* bus/bus.c (struct BusContext) [pidfile]: New member, to store
the pid file.
(bus_context_new): Set it.
(bus_context_unref): Use it to delete the pid file.
2003-04-08 Havoc Pennington <hp@redhat.com>
* test/data/invalid-messages/array-with-mixed-types.message:

View file

@ -37,6 +37,7 @@ struct BusContext
int refcount;
char *type;
char *address;
char *pidfile;
DBusLoop *loop;
DBusList *servers;
BusConnections *connections;
@ -632,6 +633,9 @@ bus_context_new (const DBusString *config_file,
goto failed;
}
}
/* keep around the pid filename so we can delete it later */
context->pidfile = _dbus_strdup (pidfile);
bus_config_parser_unref (parser);
_dbus_string_free (&full_address);
@ -760,6 +764,20 @@ bus_context_unref (BusContext *context)
dbus_free (context->type);
dbus_free (context->address);
if (context->pidfile)
{
DBusString u;
_dbus_string_init_const (&u, context->pidfile);
/* Deliberately ignore errors here, since there's not much
* we can do about it, and we're exiting anyways.
*/
_dbus_delete_file (&u, NULL);
dbus_free (context->pidfile);
}
dbus_free (context);
server_data_slot_unref ();