From 9ac04aa058aee4b5b5433087d78cc13aa9e6255c Mon Sep 17 00:00:00 2001 From: Bryce Kwon Date: Sat, 17 Oct 2026 17:09:13 -1000 Subject: Check the id before the page chrome resolves it The chrome renders on an error page too, where the id had just been refused for using the wider revision syntax, and then looked it up anyway. A :/pattern id walks the whole history for a match. --- tests/t0303-robustness.sh | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'tests') diff --git a/tests/t0303-robustness.sh b/tests/t0303-robustness.sh index 005c6cd..05237c6 100755 --- a/tests/t0303-robustness.sh +++ b/tests/t0303-robustness.sh @@ -784,4 +784,16 @@ test_expect_success 'a readme past max-blob-size is reported on the about page' grep "The readme is larger than max-blob-size (1 KB)" tmp ' +# The chrome names a pinned commit in the title, and on an error page the id +# that was just refused must not be looked up to get there, since the wider +# revision syntax walks the whole history for a match. +test_expect_success 'the error page does not resolve the id it refused' ' + sha=$(git -C repos/rob rev-parse HEAD~1) && + robq "url=rob/log/&id=$sha" >tmp && + grep ".* @ " tmp && + robq "url=rob/log/&id=%3A/commit" >tmp && + grep "^Status: 400" tmp && + ! grep "<title>.* @ " tmp +' + test_done -- cgit