summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Bugzilla/BugMail.pm12
-rw-r--r--defparams.pl7
2 files changed, 18 insertions, 1 deletions
diff --git a/Bugzilla/BugMail.pm b/Bugzilla/BugMail.pm
index d9dbb770b..6b77f6d94 100644
--- a/Bugzilla/BugMail.pm
+++ b/Bugzilla/BugMail.pm
@@ -46,6 +46,13 @@ my $last_changed;
my @excludedAddresses = ();
+my $sitespec = '@'.Param('urlbase');
+$sitespec =~ s/:\/\//\./; # Make the protocol look like part of the domain
+$sitespec =~ s/^([^:\/]+):(\d+)/$1/; # Remove a port number, to relocate
+if ($2) {
+ $sitespec = "-$2$sitespec"; # Put the port number back in, before the '@'
+}
+
# disable email flag for offline debugging work
my $enableSendMail = 1;
@@ -854,6 +861,11 @@ sub NewProcessOnePerson ($$$$$$$$$$$$$) {
$substs{"reasonsheader"} = join(" ", @reasons);
$substs{"reasonsbody"} = $reasonsbody;
$substs{"space"} = " ";
+ if ($isnew) {
+ $substs{'threadingmarker'} = "Message-ID: <bug-$id-$userid$sitespec>";
+ } else {
+ $substs{'threadingmarker'} = "In-Reply-To: <bug-$id-$userid$sitespec>";
+ }
my $template = Param("newchangedmail");
diff --git a/defparams.pl b/defparams.pl
index 206e89e59..29c4d27ad 100644
--- a/defparams.pl
+++ b/defparams.pl
@@ -719,13 +719,18 @@ To use the wonders of Bugzilla, you can use the following:
'getting the email, suitable for use in an email header (such ' .
'as X-Bugzilla-Reason). %reasonsbody% is replaced by text that ' .
'explains why the user is getting the email in more user ' .
- 'friendly text than %reasonsheader%. %<i>anythingelse</i>% gets ' .
+ 'friendly text than %reasonsheader%. ' .
+ '%threadingmarker% will become either a Message-ID line (for ' .
+ 'new-bug messages) or a In-Reply-To line (for bug-change ' .
+ 'messages). ' .
+ '%<i>anythingelse</i>% gets ' .
'replaced by the definition of that parameter (as defined on ' .
'this page).',
type => 'l',
default => 'From: bugzilla-daemon
To: %to%
Subject: [Bug %bugid%] %neworchanged%%summary%
+%threadingmarker%
X-Bugzilla-Reason: %reasonsheader%
%urlbase%show_bug.cgi?id=%bugid%