doFile = strings.Join(append(
[]string{"default"}, append(exts, "do")...,
), ".")
- if len(levels) > 0 || doFile != doFileOrig {
+ if len(levels) > 0 || (doFile != doFileOrig && doFile != tgt) {
exists, err = existsDo(fdDep, cwd, path.Join(updir, doFile))
if err != nil {
return "", 0, err
exts = exts[1:]
}
doFile = "default.do"
- if len(levels) > 0 || doFile != doFileOrig {
+ if len(levels) > 0 || (doFile != doFileOrig && doFile != tgt) {
exists, err = existsDo(fdDep, cwd, path.Join(updir, doFile))
if err != nil {
return "", 0, err
@node News
@unnumbered News
+@anchor{Release 1_19_0}
+@section Release 1.19.0
+@itemize
+@item
+ Skip target itself, when searching for corresponding @file{.do}
+ file. For example @file{default.do} must use @file{../default.do}
+ instead of the self.
+@end itemize
+
@anchor{Release 1_18_0}
@section Release 1.18.0
@itemize
--- /dev/null
+#!/bin/sh
+
+testname=`basename "$0"`
+test_description="Building of default.do must not depend on itself"
+. $SHARNESS_TEST_SRCDIR/sharness.sh
+export REDO_TOP_DIR="`pwd`" REDO_NO_PROGRESS=1
+
+mkdir foo
+echo echo echo ok > default.do
+redo foo/default.do
+test_expect_success "repeated" "redo foo/default.do"
+test_expect_success "repeated again" "redo foo/default.do"
+redo foo/bar
+bar=`cat foo/bar`
+test_expect_success "default is fine" '[ "$bar" = "ok" ]'
+
+test_done