X-Git-Url: https://projects.mako.cc/source/muttjump/blobdiff_plain/57fe30655415d085ef21cfe2db3071a7ba5af668..9fd12eaff98fa67ef19e4ca149d9429877050ab4:/muttjump diff --git a/muttjump b/muttjump index a950edb..3cdb6ed 100755 --- a/muttjump +++ b/muttjump @@ -150,12 +150,15 @@ msgid_clean=$(echo "$msgid" | sed -e 's/^$//') # try to locate path of message using a mail search engine case $MUTTJUMP_INDEXER in mairix) + msgid_mairix=$msgid_clean # mairix can't quote special characters (~,/=^) in search words. As a # workaround, split Message-ID in 31-character long AND-linked # substrings. - msgid_mairix=$(echo "$msgid_clean" | sed -e 's/.\{31\}/&=,/g' \ - -e 's/[~,/=^]\+/=,/g' -e 's/\(=,\)\+/=,/g' \ - -e 's/^\(=,\)\+//g' -e 's/$/=/' -e 's/\(=,\|=\)\+$/=/g') + if echo "$msgid_clean" | grep -q '[~,/=^]' ; then + msgid_mairix=$(echo "$msgid_clean" | sed -e 's/[~,/=^]\+/ /g' \ + -e 's/[^ ]\{31\}/& /g' -e 's/^ \+//g' -e 's/ *$/=/g' \ + -e 's/ /=,/g') + fi orig_msgfiles=$($MAIRIX -r "m:$msgid_mairix") ;; mu)