mirror of
https://github.com/genodelabs/genode.git
synced 2025-02-20 17:52:52 +00:00
sculpt: show names of unsatisfied launchers
The diagnostic messages presented in the runtime dialog lacked the name if the subsystem was created from a launcher, e.g., the 'vm'. Instead of determining the subsystem name from the start-XML-node (a launcher has no 'name' attribute but the name corresponds to the launcher's file name), the name is now passed as a dedicated argument.
This commit is contained in:
parent
605f9abf96
commit
c92a9ce591
@ -232,7 +232,7 @@ class Depot_deploy::Child : public List_model<Child>::Element
|
||||
: Xml_node("<empty/>");
|
||||
|
||||
if (_condition == UNSATISFIED && _start_xml.constructed())
|
||||
fn(_start_xml->xml(), launcher_xml);
|
||||
fn(_start_xml->xml(), launcher_xml, _name);
|
||||
}
|
||||
|
||||
void mark_as_incomplete(Xml_node missing)
|
||||
|
@ -42,10 +42,8 @@ void Sculpt::Deploy::gen_child_diagnostics(Xml_generator &xml) const
|
||||
typedef Registered_no_delete<Message> Registered_message;
|
||||
Registry<Registered_message> messages { };
|
||||
|
||||
auto gen_missing_dependencies = [&] (Xml_node start)
|
||||
auto gen_missing_dependencies = [&] (Xml_node start, Start_name const &name)
|
||||
{
|
||||
Start_name const name = start.attribute_value("name", Start_name());
|
||||
|
||||
_for_each_missing_server(start, [&] (Start_name const &server) {
|
||||
|
||||
Message const new_message(Pretty(name), " requires ", Pretty(server));
|
||||
@ -60,9 +58,10 @@ void Sculpt::Deploy::gen_child_diagnostics(Xml_generator &xml) const
|
||||
});
|
||||
};
|
||||
|
||||
_children.for_each_unsatisfied_child([&] (Xml_node start, Xml_node launcher) {
|
||||
gen_missing_dependencies(start);
|
||||
gen_missing_dependencies(launcher);
|
||||
_children.for_each_unsatisfied_child([&] (Xml_node start, Xml_node launcher,
|
||||
Start_name const &name) {
|
||||
gen_missing_dependencies(start, name);
|
||||
gen_missing_dependencies(launcher, name);
|
||||
});
|
||||
|
||||
/*
|
||||
|
@ -174,7 +174,7 @@ struct Sculpt::Deploy
|
||||
bool any_unsatisfied_child() const
|
||||
{
|
||||
bool all_satisfied = true;
|
||||
_children.for_each_unsatisfied_child([&] (Xml_node, Xml_node) {
|
||||
_children.for_each_unsatisfied_child([&] (Xml_node, Xml_node, Start_name const &) {
|
||||
all_satisfied = false; });
|
||||
return !all_satisfied;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user