aboutsummaryrefslogtreecommitdiff
path: root/build2/algorithm.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'build2/algorithm.cxx')
-rw-r--r--build2/algorithm.cxx12
1 files changed, 6 insertions, 6 deletions
diff --git a/build2/algorithm.cxx b/build2/algorithm.cxx
index 59a7800..595603c 100644
--- a/build2/algorithm.cxx
+++ b/build2/algorithm.cxx
@@ -500,11 +500,11 @@ namespace build2
if (d)
++e;
- path p;
- if (*e == '+')
- p = ft.path () + ++e;
- else
- p = ft.path ().base () + e;
+ path p (ft.path ());
+ for (; *e == '-'; ++e)
+ p = p.base ();
+
+ p += e;
target_state r (target_state::unchanged);
@@ -614,6 +614,6 @@ namespace build2
target_state
perform_clean_depdb (action a, target& t)
{
- return clean_extra (a, dynamic_cast<file&> (t), {"+.d"});
+ return clean_extra (a, dynamic_cast<file&> (t), {".d"});
}
}