Skip to content

Commit e7ad5b1

Browse files
committed
Remove temp variable from settings_wrapper
1 parent 02053a8 commit e7ad5b1

1 file changed

Lines changed: 9 additions & 14 deletions

File tree

src/includes/load-service.h

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1235,11 +1235,12 @@ static void value_var_subst(const char *setting_name, std::string &line,
12351235

12361236
// Reads a dependency name while performing minimal argument expansion in it.
12371237
inline string read_dependency_value(const char *setting_name, file_pos_ref input_pos, string_iterator &i,
1238-
string_iterator end, std::list<std::pair<unsigned,unsigned>> &offsets, const char *argval)
1238+
string_iterator end, const char *argval)
12391239
{
12401240
string rval;
12411241
read_setting_value(rval, setting_op_t::ASSIGN, input_pos, i, end, nullptr);
1242-
offsets.clear();
1242+
1243+
std::list<std::pair<unsigned,unsigned>> offsets;
12431244
offsets.emplace_back(0, rval.size());
12441245
value_var_subst(setting_name, rval, offsets, resolve_env_var, nullptr, argval);
12451246
return rval;
@@ -1269,7 +1270,6 @@ class service_settings_wrapper
12691270
list<dep_type> depends;
12701271
list<std::string> before_svcs;
12711272
list<std::string> after_svcs;
1272-
list<pair<unsigned,unsigned>> str_offsets; // stores offsets for any substutions where we don't care about them
12731273
log_type_id log_type = log_type_id::NONE;
12741274
string logfile;
12751275
int logfile_perms = 0600;
@@ -1410,7 +1410,7 @@ class service_settings_wrapper
14101410
{
14111411
auto do_resolve = [&](const char *setting_name, string &setting_value) {
14121412
try {
1413-
str_offsets.clear();
1413+
list<pair<unsigned,unsigned>> str_offsets;
14141414
str_offsets.emplace_back(0, setting_value.size());
14151415
value_var_subst(setting_name, setting_value, str_offsets, var_subst, &envmap, argval);
14161416
}
@@ -1552,24 +1552,21 @@ void process_service_line(settings_wrapper &settings, const char *name, const ch
15521552
break;
15531553
case setting_id_t::DEPENDS_ON:
15541554
{
1555-
string dependency_name = read_dependency_value(setting.c_str(), input_pos,
1556-
i, end, settings.str_offsets, arg);
1555+
string dependency_name = read_dependency_value(setting.c_str(), input_pos, i, end, arg);
15571556
settings.depends.emplace_back(load_service(dependency_name.c_str()),
15581557
dependency_type::REGULAR);
15591558
break;
15601559
}
15611560
case setting_id_t::DEPENDS_MS:
15621561
{
1563-
string dependency_name = read_dependency_value(setting.c_str(), input_pos,
1564-
i, end, settings.str_offsets, arg);
1562+
string dependency_name = read_dependency_value(setting.c_str(), input_pos, i, end, arg);
15651563
settings.depends.emplace_back(load_service(dependency_name.c_str()),
15661564
dependency_type::MILESTONE);
15671565
break;
15681566
}
15691567
case setting_id_t::WAITS_FOR:
15701568
{
1571-
string dependency_name = read_dependency_value(setting.c_str(), input_pos,
1572-
i, end, settings.str_offsets, arg);
1569+
string dependency_name = read_dependency_value(setting.c_str(), input_pos, i, end, arg);
15731570
settings.depends.emplace_back(load_service(dependency_name.c_str()),
15741571
dependency_type::WAITS_FOR);
15751572
break;
@@ -1594,15 +1591,13 @@ void process_service_line(settings_wrapper &settings, const char *name, const ch
15941591
}
15951592
case setting_id_t::AFTER:
15961593
{
1597-
string after_name = read_dependency_value(setting.c_str(), input_pos,
1598-
i, end, settings.str_offsets, arg);
1594+
string after_name = read_dependency_value(setting.c_str(), input_pos, i, end, arg);
15991595
settings.after_svcs.emplace_back(std::move(after_name));
16001596
break;
16011597
}
16021598
case setting_id_t::BEFORE:
16031599
{
1604-
string before_name = read_dependency_value(setting.c_str(), input_pos,
1605-
i, end, settings.str_offsets, arg);
1600+
string before_name = read_dependency_value(setting.c_str(), input_pos, i, end, arg);
16061601
settings.before_svcs.emplace_back(std::move(before_name));
16071602
break;
16081603
}

0 commit comments

Comments
 (0)