Download raw body.
got-build-regress.sh regress failure
stsp@stsp.name wrote:
> got-build-regress.sh for branch 'main' on Tue Mar 8 05:00:01 UTC 2022
> [...]
> ==== patch ====
> ./patch.sh -q -r "/ramdisk/got-test"
> got: mkstemp: /ramdisk/got-test/got-test-patch_simple_add_file-EEJ81dLp/wt-83gN3j: No such file or directory
> test failed; leaving test data in /ramdisk/got-test/got-test-patch_simple_add_file-EEJ81dLp
> got: mkstemp: /ramdisk/got-test/got-test-patch_simple_edit_file-1AH3CFsz/wt-7mXSFY: No such file or directory
> test failed; leaving test data in /ramdisk/got-test/got-test-patch_simple_edit_file-1AH3CFsz
> got: mkstemp: /ramdisk/got-test/got-test-patch_prepend_line-drlmpqti/wt-oIclWP: No such file or directory
> test failed; leaving test data in /ramdisk/got-test/got-test-patch_prepend_line-drlmpqti
> got: mkstemp: /ramdisk/got-test/got-test-patch_replace_line-GwmSoOJr/wt-yMh65G: No such file or directory
> test failed; leaving test data in /ramdisk/got-test/got-test-patch_replace_line-GwmSoOJr
> got: mkstemp: /ramdisk/got-test/got-test-patch_replace_multiple_lines-5ccWAUPP/wt-KC4AvM: No such file or directory
> test failed; leaving test data in /ramdisk/got-test/got-test-patch_replace_multiple_lines-5ccWAUPP
> got: mkstemp: /ramdisk/got-test/got-test-patch_multiple_files-FLVTu9p4/wt-AEYvYk: No such file or directory
> test failed; leaving test data in 1
> --- /ramdisk/got-test/got-test-patch_dont_apply-j0GwTNKr/stderr.expected Tue Mar 8 06:16:50 2022
> +++ /ramdisk/got-test/got-test-patch_dont_apply-j0GwTNKr/stderr Tue Mar 8 06:16:50 2022
> @@ -1 +1 @@
> -got: patch doesn't apply
> +got: mkstemp: /ramdisk/got-test/got-test-patch_dont_apply-j0GwTNKr/wt-veJJZC: No such file or directory
> test failed; leaving test data in /ramdisk/got-test/got-test-patch_dont_apply-j0GwTNKr
> got: mkstemp: /ramdisk/got-test/got-test-patch_prepend_line-ZEZVQRt2/wt-xkEFDq: No such file or directory
> test failed; leaving test data in /ramdisk/got-test/got-test-patch_prepend_line-ZEZVQRt2
> *** Error 1 in regress/cmdline (Makefile:91 'patch')
> FAILED
woops, i've been a bit sloppy in the way I'm generating the temporary
file while applying the patch. (but i couldn't replicate locally)
I need to open a new temporary file during the patch operation to
accumulate the changes/additions to the target file before rename(2) it
to the destination file.
It's fine to just use "./"? it's the only instance in the codebase, but
I can't use /tmp because I need both files (temp and destination) to be
on the same filesystem for rename(2) to work. got_opentemp guarantees
us that it's a new file, so no chance to corrupt existing files in the
worktree.
I could have used GOT_WORKTREE_GOT_DIR (concatenated to the worktree
root path) but that would require to build a string and "./" saves us an
allocation :)
OK?
(while here I'm also fixing two typos in the regression suite spotted
thanks to the failure, i'll commit them separately from the patch.c
hunk)
diff e9ce266e31923cc339954b331d273d9bba543f6f /home/op/w/got
blob - 84226a57dca7da7a69187a76d804e8ceda7558ba
file + lib/patch.c
--- lib/patch.c
+++ lib/patch.c
@@ -419,8 +419,7 @@ apply_patch(struct got_worktree *worktree, struct got_
goto done;
}
- err = got_opentemp_named(&tmppath, &tmp,
- got_worktree_get_root_path(worktree));
+ err = got_opentemp_named(&tmppath, &tmp, "./");
if (err)
goto done;
blob - cb9ff81d665f65b182c6a4ecb6bd3b4185b0ad6d
file + regress/cmdline/patch.sh
--- regress/cmdline/patch.sh
+++ regress/cmdline/patch.sh
@@ -248,7 +248,7 @@ EOF
}
test_patch_multiple_hunks() {
- local testroot=`test_init patch_replace_multiple_lines`
+ local testroot=`test_init patch_replace_multiple_hunks`
got checkout $testroot/repo $testroot/wt > /dev/null
ret=$?
@@ -364,7 +364,7 @@ EOF
(cd $testroot/wt && got patch patch) > $testroot/stdout
ret=$?
if [ $ret != 0 ]; then
- test_done $testrot $ret
+ test_done $testroot $ret
return 1
fi
got-build-regress.sh regress failure