Commit a157ec7f authored by John Palmieri's avatar John Palmieri

* bus/config-parser.c (service_dirs_find_dir): use

  _dbus_list_get_next_link so we don't get stuck in an infinite loop
  (start_busconfig_child): move processing of standard_session_servicedirs
  tags here because they have no content
  (bus_config_parser_content): check we don't have content in
  standard_session_servicedirs tag

* tools/Makefile.am: Make sure the /var/lib/dbus directory is created
  Packagers need to own this directory
parent 547f1de5
2006-11-02 John (J5) Palmieri <johnp@redhat.com>
* bus/config-parser.c (service_dirs_find_dir): use
_dbus_list_get_next_link so we don't get stuck in an infinite loop
(start_busconfig_child): move processing of standard_session_servicedirs
tags here because they have no content
(bus_config_parser_content): check we don't have content in
standard_session_servicedirs tag
2006-11-02 John (J5) Palmieri <johnp@redhat.com>
* tools/Makefile.am: Make sure the /var/lib/dbus directory is created
Packagers need to own this directory
2006-11-02 John (J5) Palmieri <johnp@redhat.com>
* tools/run-with-tmp-session-bus.sh: fixed script to replace the
......
......@@ -297,7 +297,7 @@ service_dirs_find_dir (DBusList **service_dirs,
_dbus_assert (dir != NULL);
for (link = *service_dirs; link; link = link->next)
for (link = *service_dirs; link; link = _dbus_list_get_next_link(service_dirs, link))
{
const char *link_dir;
......@@ -805,6 +805,10 @@ start_busconfig_child (BusConfigParser *parser,
}
else if (strcmp (element_name, "standard_session_servicedirs") == 0)
{
DBusList *link;
DBusList *dirs;
dirs = NULL;
if (!check_no_attributes (parser, "standard_session_servicedirs", attribute_names, attribute_values, error))
return FALSE;
......@@ -814,6 +818,15 @@ start_busconfig_child (BusConfigParser *parser,
return FALSE;
}
if (!_dbus_get_standard_session_servicedirs (&dirs))
{
BUS_SET_OOM (error);
return FALSE;
}
while ((link = _dbus_list_pop_first_link (&dirs)))
service_dirs_append_link_unique_or_free (&parser->service_dirs, link);
return TRUE;
}
else if (strcmp (element_name, "servicedir") == 0)
......@@ -2191,6 +2204,7 @@ bus_config_parser_content (BusConfigParser *parser,
case ELEMENT_ALLOW:
case ELEMENT_DENY:
case ELEMENT_FORK:
case ELEMENT_STANDARD_SESSION_SERVICEDIRS:
case ELEMENT_SELINUX:
case ELEMENT_ASSOCIATE:
if (all_whitespace (content))
......@@ -2352,19 +2366,6 @@ bus_config_parser_content (BusConfigParser *parser,
}
}
break;
case ELEMENT_STANDARD_SESSION_SERVICEDIRS:
{
DBusList *link;
DBusList *dirs;
dirs = NULL;
if (!_dbus_get_standard_session_servicedirs (&dirs))
goto nomem;
while ((link = _dbus_list_pop_first_link (&dirs)))
service_dirs_append_link_unique_or_free (&parser->service_dirs, link);
}
break;
case ELEMENT_SERVICEDIR:
{
......
......@@ -41,3 +41,7 @@ man_MANS = dbus-send.1 dbus-monitor.1 dbus-launch.1 dbus-cleanup-sockets.1 dbus-
EXTRA_DIST = $(man_MANS) run-with-tmp-session-bus.sh
CLEANFILES = \
run-with-tmp-session-bus.conf
#create the /var/lib/data directory for dbus-uuidgen
localstatelibdir = $(localstatedir)/lib/dbus
localstatelib_DATA =
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment