aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDuncaen <mail@duncano.de>2017-04-01 17:16:29 +0200
committerDuncaen <mail@duncano.de>2017-04-01 17:17:09 +0200
commit537282d6af33e24f653884b41dc54ac2d143a664 (patch)
tree0c9e77407f6e19bdf29412f1729a5ae176f44354
parentb960d5e3cc1abd1849ef6c0019f16ab7dd77e52a (diff)
downloadmblaze-537282d6af33e24f653884b41dc54ac2d143a664.tar.gz
seq: fix selecting subthreads at the end of sequences and add test cases
-rw-r--r--seq.c4
-rw-r--r--t/7000-mseq.t11
2 files changed, 13 insertions, 2 deletions
diff --git a/seq.c b/seq.c
index f1fb6b1..9ff7f59 100644
--- a/seq.c
+++ b/seq.c
@@ -266,8 +266,10 @@ parse_subthread(char *map, long a, long *stopo)
for (s = map, line = 0; s; s = t+1) {
t = strchr(s, '\n');
- if (!t)
+ if (!t) {
+ minindent = -1;
break;
+ }
line++;
int indent = 0;
while (*s && iswsp(*s)) {
diff --git a/t/7000-mseq.t b/t/7000-mseq.t
index 6a3a5c5..12d0b98 100644
--- a/t/7000-mseq.t
+++ b/t/7000-mseq.t
@@ -1,7 +1,7 @@
#!/bin/sh -e
cd ${0%/*}
. ./lib.sh
-plan 8
+plan 10
rm -rf test.dir
mkdir test.dir
@@ -32,4 +32,13 @@ check_test 'subthread' -eq 2 'mseq 7_ | wc -l'
check 'parent' 'mseq 6^ | grep "inbox/cur/5_1:2,"'
check_test 'range' -eq 3 'mseq 1:3 | wc -l'
+cat <<! >seq
+inbox/cur/1:2,
+ inbox/cur/2:2,
+ inbox/cur/3:2,
+!
+
+check_test 'whole thread at the end' -eq 3 'mseq 2= | wc -l'
+check_test 'subthread at the end' -eq 2 'mseq 2_ | wc -l'
+
)