about summary refs log tree commit diff
diff options
context:
space:
mode:
authorLars Hjemli <hjemli@gmail.com>2008-02-24 15:27:33 +0100
committerLars Hjemli <hjemli@gmail.com>2008-02-24 15:27:33 +0100
commit19134112bf942c0492f2095b668ea31c1a498f1a (patch)
treeb41e1a3a1a80b82b62fa7c5355526dd4b309cae4
parentMerge branch 'stable' (diff)
downloadcgit-pink-19134112bf942c0492f2095b668ea31c1a498f1a.tar.gz
cgit-pink-19134112bf942c0492f2095b668ea31c1a498f1a.zip
Add regression-test for description-less repos
The segfault fixed in commit eacde43d7184452e1fdc90b982b531f1f5239923 was
triggered when the html-functions manipulated string literals. One callpatch
which could trigger the bug is in ui-repolist.c when repo descriptions are
passed to html_ntxt(): if a repo is lacking a description, the literal
string "[no description]" is used.

This patch changes test/setup.sh such that the first repo has no description,
and adds tests for both "[no description]" and "the bar repo" (description
of the other repo) to tests/t0101-index.sh, which should be enought to catch
regressions in these functions.

Noticed-by: Hiroki Hattori <seagull.kamome@gmail.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rwxr-xr-xtests/setup.sh4
-rwxr-xr-xtests/t0101-index.sh2
2 files changed, 5 insertions, 1 deletions
diff --git a/tests/setup.sh b/tests/setup.sh
index 51d5a75..9bb1f12 100755
--- a/tests/setup.sh
+++ b/tests/setup.sh
@@ -54,7 +54,9 @@ summary-tags=5
 
 repo.url=foo
 repo.path=$PWD/trash/repos/foo/.git
-repo.desc=the foo repo
+# Do not specify a description for this repo, as it then will be assigned
+# the constant value "[no description]" (which actually used to cause a
+# segfault).
 
 repo.url=bar
 repo.path=$PWD/trash/repos/bar/.git
diff --git a/tests/t0101-index.sh b/tests/t0101-index.sh
index 12ed00c..59edc59 100755
--- a/tests/t0101-index.sh
+++ b/tests/t0101-index.sh
@@ -6,7 +6,9 @@ prepare_tests "Check content on index page"
 
 run_test 'generate index page' 'cgit_url "" >trash/tmp'
 run_test 'find foo repo' 'grep -e "foo" trash/tmp'
+run_test 'find foo description' 'grep -e "\[no description\]" trash/tmp'
 run_test 'find bar repo' 'grep -e "bar" trash/tmp'
+run_test 'find bar description' 'grep -e "the bar repo" trash/tmp'
 run_test 'no tree-link' 'grep -ve "foo/tree" trash/tmp'
 run_test 'no log-link' 'grep -ve "foo/log" trash/tmp'
 
> 2022-02-19Remove unneeded includes in ui.cJune McEnroe 2022-02-19Reimplement tab completeJune McEnroe 2022-02-19Handle errors from editFn, etc.June McEnroe 2022-02-19Reimplement text macrosJune McEnroe 2022-02-19Factor out input handling to input.cJune McEnroe 2022-02-19Factor out window management to window.cJune McEnroe 2022-02-19Enable -Wmissing-prototypesJune McEnroe In other words, warn when a function is missing static. I don't see why this isn't in -Wextra. 2022-02-19Fix edit.[ch] license notice additional permissionsJune McEnroe 2022-02-19Run line editing testsJune McEnroe I know, it feels wrong. 2022-02-18Implement new line editing "library"June McEnroe Losing tab complete and text macros, for now. This new implementation works on an instance of a struct and does not interact with the rest of catgirl, making it possible to copy into another project. Unlike existing line editing libraries, this one is entirely abstract and can be rendered externally. My goal with this library is to be able to implement vi mode. Since it operates on struct instances rather than globals, it might also be possible to give catgirl separate line editing buffers for each window, which would be a nice UX improvement. 2022-02-18Simplify cursor positioning in inputJune McEnroe Do some extra work by adding the portion before the cursor to the input window twice, but simplify the interaction with the split point. This fixes the awkward behaviour when moving the cursor across colour codes where the code would be partially interpreted up to the cursor. 2022-02-18Fix M-f orderingJune McEnroe 2022-02-12Move sandman build to scripts/MakefileJune McEnroe 2022-02-12Use compat_readpassphrase.c on LinuxJune McEnroe 2022-02-12Copy RPP defines from oconfigureJune McEnroe