From da5cd3ed91dc3c31ddd4241e0586b8c123acaa76 Mon Sep 17 00:00:00 2001
From: Per Cederqvist <ceder@lysator.liu.se>
Date: Fri, 11 Jul 2014 09:33:43 +0200
Subject: [PATCH] Imported Bugzilla 2.16.5.

---
 Bug.pm                                        |   2 +-
 CGI.pl                                        |  12 +-
 CVS/Entries                                   | 152 +++++-----
 CVS/Tag                                       |   2 +-
 bug_form.pl                                   |   2 +-
 buglist.cgi                                   |  15 +-
 checksetup.pl                                 |  19 +-
 colchange.cgi                                 |   4 +-
 contrib/CVS/Entries                           |  24 +-
 contrib/CVS/Entries.Log                       |   2 +
 contrib/CVS/Tag                               |   2 +-
 contrib/cmdline/CVS/Entries                   |   6 +-
 contrib/cmdline/CVS/Tag                       |   2 +-
 createaccount.cgi                             |  10 +-
 css/CVS/Entries                               |   4 +-
 css/CVS/Tag                                   |   2 +-
 defparams.pl                                  |   8 +-
 docs/CVS/Entries                              |   6 +-
 docs/CVS/Tag                                  |   2 +-
 docs/html/CVS/Entries                         | 120 ++++----
 docs/html/CVS/Tag                             |   2 +-
 docs/html/useradmin.html                      |   6 +-
 docs/images/CVS/Entries                       |  12 +-
 docs/images/CVS/Tag                           |   2 +-
 docs/rel_notes.txt                            | 261 ++++++++++++------
 docs/txt/CVS/Entries                          |   2 +-
 docs/txt/CVS/Tag                              |   2 +-
 docs/xml/CVS/Entries                          |  36 +--
 docs/xml/CVS/Tag                              |   2 +-
 docs/xml/administration.xml                   |   4 +-
 globals.pl                                    |   4 +-
 post_bug.cgi                                  |   2 +-
 process_bug.cgi                               |  13 +-
 query.cgi                                     |   2 +-
 relogin.cgi                                   |   4 +-
 t/CVS/Entries                                 |  12 +-
 t/CVS/Tag                                     |   2 +-
 t/Support/CVS/Entries                         |   6 +-
 t/Support/CVS/Tag                             |   2 +-
 template/CVS/Entries                          |   2 +-
 template/CVS/Tag                              |   2 +-
 template/en/CVS/Entries                       |   2 +-
 template/en/CVS/Entries.Log                   |   2 +
 template/en/CVS/Tag                           |   2 +-
 template/en/default/CVS/Entries               |   6 +-
 template/en/default/CVS/Tag                   |   2 +-
 template/en/default/account/CVS/Entries       |   8 +-
 template/en/default/account/CVS/Tag           |   2 +-
 template/en/default/account/email/CVS/Entries |   6 +-
 template/en/default/account/email/CVS/Tag     |   2 +-
 .../en/default/account/password/CVS/Entries   |   4 +-
 template/en/default/account/password/CVS/Tag  |   2 +-
 template/en/default/account/prefs/CVS/Entries |  10 +-
 template/en/default/account/prefs/CVS/Tag     |   2 +-
 template/en/default/admin/CVS/Entries.Log     |   2 +
 template/en/default/admin/CVS/Tag             |   2 +-
 .../en/default/admin/attachstatus/CVS/Entries |   8 +-
 .../en/default/admin/attachstatus/CVS/Tag     |   2 +-
 template/en/default/attachment/CVS/Entries    |  14 +-
 template/en/default/attachment/CVS/Tag        |   2 +-
 template/en/default/bug/CVS/Entries           |  16 +-
 template/en/default/bug/CVS/Tag               |   2 +-
 template/en/default/bug/activity/CVS/Entries  |   4 +-
 template/en/default/bug/activity/CVS/Tag      |   2 +-
 template/en/default/bug/create/CVS/Entries    |  10 +-
 template/en/default/bug/create/CVS/Tag        |   2 +-
 template/en/default/bug/process/CVS/Entries   |  10 +-
 template/en/default/bug/process/CVS/Tag       |   2 +-
 template/en/default/bug/votes/CVS/Entries     |   6 +-
 template/en/default/bug/votes/CVS/Tag         |   2 +-
 template/en/default/global/CVS/Entries        |  20 +-
 template/en/default/global/CVS/Tag            |   2 +-
 template/en/default/list/CVS/Entries          |  16 +-
 template/en/default/list/CVS/Tag              |   2 +-
 .../en/default/list/edit-multiple.html.tmpl   |   2 +-
 template/en/default/reports/CVS/Entries       |  10 +-
 template/en/default/reports/CVS/Tag           |   2 +-
 template/en/default/search/CVS/Entries        |   8 +-
 template/en/default/search/CVS/Tag            |   2 +-
 userprefs.cgi                                 |   6 +-
 80 files changed, 548 insertions(+), 434 deletions(-)
 create mode 100644 template/en/CVS/Entries.Log

diff --git a/Bug.pm b/Bug.pm
index 05d25a97f..ee4f2164f 100755
--- a/Bug.pm
+++ b/Bug.pm
@@ -112,7 +112,7 @@ sub initBug  {
       resolution, priority, bug_severity, component, assigned_to, reporter,
       bug_file_loc, short_desc, target_milestone, qa_contact,
       status_whiteboard, date_format(creation_ts,'%Y-%m-%d %H:%i'),
-      groupset, delta_ts, ifnull(sum(votes.vote_count),0),
+      groupset, delta_ts, ifnull(sum(votes.count),0)
     from bugs left join votes using(bug_id)
     where bugs.bug_id = $bug_id
     group by bugs.bug_id";
diff --git a/CGI.pl b/CGI.pl
index b3e879a2d..dd4811042 100644
--- a/CGI.pl
+++ b/CGI.pl
@@ -755,8 +755,8 @@ sub confirm_login {
 
        $::COOKIE{"Bugzilla_logincookie"} = $logincookie;
        my $cookiepath = Param("cookiepath");
-       print "Set-Cookie: Bugzilla_login=$enteredlogin ; path=$cookiepath; expires=Sun, 30-Jun-2029 00:00:00 GMT\n";
-       print "Set-Cookie: Bugzilla_logincookie=$logincookie ; path=$cookiepath; expires=Sun, 30-Jun-2029 00:00:00 GMT\n";
+       print "Set-Cookie: Bugzilla_login=$enteredlogin ; path=$cookiepath; expires=Sat, 30-Jun-2029 00:00:00 GMT\n";
+       print "Set-Cookie: Bugzilla_logincookie=$logincookie ; path=$cookiepath; expires=Sat, 30-Jun-2029 00:00:00 GMT\n";
     }
 
     my $loginok = quietly_check_login();
@@ -764,8 +764,8 @@ sub confirm_login {
     if ($loginok != 1) {
         if ($::disabledreason) {
             my $cookiepath = Param("cookiepath");
-            print "Set-Cookie: Bugzilla_login= ; path=$cookiepath; expires=Sun, 30-Jun-80 00:00:00 GMT
-Set-Cookie: Bugzilla_logincookie= ; path=$cookiepath; expires=Sun, 30-Jun-80 00:00:00 GMT
+            print "Set-Cookie: Bugzilla_login= ; path=$cookiepath; expires=Tue, 15-Sep-1998 21:49:00 GMT
+Set-Cookie: Bugzilla_logincookie= ; path=$cookiepath; expires=Tue, 15-Sep-1998 21:49:00 GMT
 Content-type: text/html
 
 ";
@@ -1129,7 +1129,9 @@ if (defined $ENV{"HTTP_COOKIE"}) {
     foreach my $pair (split(/;/, $ENV{"HTTP_COOKIE"})) {
         $pair = trim($pair);
         if ($pair =~ /^([^=]*)=(.*)$/) {
-            $::COOKIE{$1} = $2;
+            if (!exists($::COOKIE{$1})) {
+                $::COOKIE{$1} = $2;
+            }
         } else {
             $::COOKIE{$pair} = "";
         }
diff --git a/CVS/Entries b/CVS/Entries
index 394db1dae..54354c7fc 100644
--- a/CVS/Entries
+++ b/CVS/Entries
@@ -1,79 +1,79 @@
-/.cvsignore/1.5.2.1/Mon May 13 22:31:47 2002//TBUGZILLA-2_16_4
-/1x1.gif/1.1/Wed Aug 26 06:14:15 1998/-kb/TBUGZILLA-2_16_4
-/Attachment.pm/1.8/Sat Mar 23 17:58:36 2002//TBUGZILLA-2_16_4
-/Bug.pm/1.12.2.1/Thu Sep 25 22:29:46 2003//TBUGZILLA-2_16_4
-/CGI.pl/1.153.2.5/Tue Oct  7 19:37:09 2003//TBUGZILLA-2_16_4
-/README/1.50/Sat Aug 11 19:56:40 2001//TBUGZILLA-2_16_4
-/RelationSet.pm/1.7/Sat Nov  3 02:05:43 2001//TBUGZILLA-2_16_4
-/Token.pm/1.12.2.1/Tue Jul  9 02:17:28 2002//TBUGZILLA-2_16_4
-/UPGRADING/1.1/Fri Aug 10 22:35:21 2001//TBUGZILLA-2_16_4
-/UPGRADING-pre-2.8/1.2/Sun Dec 23 23:23:22 2001//TBUGZILLA-2_16_4
-/ant.jpg/1.2/Wed Aug 26 22:36:05 1998/-kb/TBUGZILLA-2_16_4
-/attachment.cgi/1.14/Wed Apr 24 07:24:43 2002//TBUGZILLA-2_16_4
-/bug_form.pl/1.93.2.3/Wed Jul 10 00:05:51 2002//TBUGZILLA-2_16_4
-/bug_status.html/1.13/Mon Apr 15 02:47:52 2002//TBUGZILLA-2_16_4
-/buglist.cgi/1.169.2.10/Wed Jun 19 22:53:25 2002//TBUGZILLA-2_16_4
-/bugwritinghelp.html/1.3/Mon Apr 15 02:47:53 2002//TBUGZILLA-2_16_4
-/bugzilla.dtd/1.5/Thu Apr  4 04:19:58 2002//TBUGZILLA-2_16_4
-/changepassword.cgi/1.21/Sun Jan 20 01:44:37 2002//TBUGZILLA-2_16_4
-/checksetup.pl/1.149.2.19/Sat Aug  9 00:16:16 2003//TBUGZILLA-2_16_4
-/colchange.cgi/1.24.2.2/Mon Jun 17 09:39:35 2002//TBUGZILLA-2_16_4
-/collectstats.pl/1.20.12.2/Mon Nov  3 03:44:38 2003//TBUGZILLA-2_16_4
-/confirmhelp.html/1.3/Mon Apr 15 02:47:53 2002//TBUGZILLA-2_16_4
-/createaccount.cgi/1.21.2.3/Fri Aug 30 15:29:24 2002//TBUGZILLA-2_16_4
-/defparams.pl/1.73.2.6/Thu Jul 24 00:52:24 2003//TBUGZILLA-2_16_4
-/describecomponents.cgi/1.11.2.2/Mon Jun 17 09:39:40 2002//TBUGZILLA-2_16_4
-/describekeywords.cgi/1.8/Wed Apr 24 07:24:45 2002//TBUGZILLA-2_16_4
-/doeditparams.cgi/1.17.2.1/Mon Jun 17 09:39:40 2002//TBUGZILLA-2_16_4
-/duplicates.cgi/1.19.2.1/Thu Apr 24 20:45:08 2003//TBUGZILLA-2_16_4
-/editattachstatuses.cgi/1.7/Mon Apr 29 19:32:27 2002//TBUGZILLA-2_16_4
-/editcomponents.cgi/1.22.2.3/Sun Mar 16 06:19:34 2003//TBUGZILLA-2_16_4
-/editgroups.cgi/1.16.2.1/Mon Jun 17 09:39:41 2002//TBUGZILLA-2_16_4
-/editkeywords.cgi/1.9.2.2/Mon Nov  3 03:46:55 2003//TBUGZILLA-2_16_4
-/editmilestones.cgi/1.8.2.1/Mon Jun 17 09:39:42 2002//TBUGZILLA-2_16_4
-/editparams.cgi/1.14.2.1/Mon Jun 17 09:39:42 2002//TBUGZILLA-2_16_4
-/editproducts.cgi/1.24.2.4/Mon Nov  3 03:50:40 2003//TBUGZILLA-2_16_4
-/editusers.cgi/1.35.2.2/Mon Jun 17 09:39:44 2002//TBUGZILLA-2_16_4
-/editversions.cgi/1.11.2.1/Mon Jun 17 09:39:44 2002//TBUGZILLA-2_16_4
-/enter_bug.cgi/1.66.2.3/Tue Jun 11 13:33:45 2002//TBUGZILLA-2_16_4
-/globals.pl/1.169.2.19/Mon Nov  3 03:53:15 2003//TBUGZILLA-2_16_4
-/help.html/1.5/Mon Apr 15 02:47:55 2002//TBUGZILLA-2_16_4
-/helpemailquery.html/1.2/Mon Apr 15 02:47:55 2002//TBUGZILLA-2_16_4
-/how_to_mail.html/1.3/Mon Apr 15 02:47:55 2002//TBUGZILLA-2_16_4
-/importxml.pl/1.23.2.2/Fri Apr 25 04:18:13 2003//TBUGZILLA-2_16_4
-/index.cgi/1.4.2.1/Sun Jun 23 17:36:00 2002//TBUGZILLA-2_16_4
-/localconfig.js/1.1/Wed Feb 28 23:07:25 2001//TBUGZILLA-2_16_4
-/long_list.cgi/1.26/Wed Apr 24 07:24:46 2002//TBUGZILLA-2_16_4
-/move.pl/1.11.2.1/Mon Jun 17 09:39:48 2002//TBUGZILLA-2_16_4
-/notargetmilestone.html/1.3/Mon Apr 15 02:47:55 2002//TBUGZILLA-2_16_4
-/post_bug.cgi/1.52.2.7/Mon Sep  1 01:28:14 2003//TBUGZILLA-2_16_4
-/process_bug.cgi/1.125.2.8/Sun Oct 19 08:32:46 2003//TBUGZILLA-2_16_4
-/processmail/1.81.2.1/Sun Sep 28 05:25:18 2003//TBUGZILLA-2_16_4
-/query.cgi/1.98.2.1/Mon Jun  3 01:42:15 2002//TBUGZILLA-2_16_4
-/queryhelp.cgi/1.11.2.2/Mon Jun 17 09:39:45 2002//TBUGZILLA-2_16_4
-/quicksearch.html/1.3/Mon Apr 15 02:47:55 2002//TBUGZILLA-2_16_4
-/quicksearch.js/1.9/Mon Dec 24 22:24:35 2001//TBUGZILLA-2_16_4
-/quicksearchhack.html/1.4/Mon Apr 15 02:47:55 2002//TBUGZILLA-2_16_4
-/quips.cgi/1.6.2.1/Mon Jun 17 09:39:46 2002//TBUGZILLA-2_16_4
-/relogin.cgi/1.18/Wed May  8 04:40:35 2002//TBUGZILLA-2_16_4
-/reports.cgi/1.54/Fri Apr 26 21:09:50 2002//TBUGZILLA-2_16_4
-/robots.txt/1.2/Wed Apr 24 18:11:00 2002//TBUGZILLA-2_16_4
-/runtests.pl/1.1.4.2/Mon Feb 17 02:33:31 2003//TBUGZILLA-2_16_4
-/runtests.sh/1.5/Fri Apr 12 21:15:45 2002//TBUGZILLA-2_16_4
-/sanitycheck.cgi/1.42/Thu Apr  4 04:19:58 2002//TBUGZILLA-2_16_4
-/show_activity.cgi/1.9/Wed Apr 24 07:24:49 2002//TBUGZILLA-2_16_4
-/show_bug.cgi/1.18/Sat Mar 23 17:58:36 2002//TBUGZILLA-2_16_4
-/showattachment.cgi/1.10/Wed Jan 30 14:14:12 2002//TBUGZILLA-2_16_4
-/showdependencygraph.cgi/1.18.2.3/Thu Apr 24 21:15:48 2003//TBUGZILLA-2_16_4
-/showdependencytree.cgi/1.17.2.1/Tue May 21 14:18:00 2002//TBUGZILLA-2_16_4
-/sidebar.cgi/1.4.2.2/Wed Jul 10 00:05:54 2002//TBUGZILLA-2_16_4
-/syncshadowdb/1.14/Sun Dec 23 23:23:22 2001//TBUGZILLA-2_16_4
-/token.cgi/1.7.2.1/Mon Jun 17 09:39:46 2002//TBUGZILLA-2_16_4
-/userprefs.cgi/1.35.2.3/Tue Aug 13 06:57:00 2002//TBUGZILLA-2_16_4
-/votehelp.html/1.10/Mon Apr 15 02:47:56 2002//TBUGZILLA-2_16_4
-/votes.cgi/1.3.2.1/Mon Nov  3 03:39:43 2003//TBUGZILLA-2_16_4
-/whineatnews.pl/1.7/Sun Feb 17 08:22:31 2002//TBUGZILLA-2_16_4
-/xml.cgi/1.6.2.1/Mon Jun 17 09:39:48 2002//TBUGZILLA-2_16_4
+/.cvsignore/1.5.2.1/Mon May 13 22:31:47 2002//TBUGZILLA-2_16_5
+/1x1.gif/1.1/Wed Aug 26 06:14:15 1998/-kb/TBUGZILLA-2_16_5
+/Attachment.pm/1.8/Sat Mar 23 17:58:36 2002//TBUGZILLA-2_16_5
+/Bug.pm/1.12.2.2/Sat Nov 15 07:38:59 2003//TBUGZILLA-2_16_5
+/CGI.pl/1.153.2.7/Sun Jan 18 02:53:33 2004//TBUGZILLA-2_16_5
+/README/1.50/Sat Aug 11 19:56:40 2001//TBUGZILLA-2_16_5
+/RelationSet.pm/1.7/Sat Nov  3 02:05:43 2001//TBUGZILLA-2_16_5
+/Token.pm/1.12.2.1/Tue Jul  9 02:17:28 2002//TBUGZILLA-2_16_5
+/UPGRADING/1.1/Fri Aug 10 22:35:21 2001//TBUGZILLA-2_16_5
+/UPGRADING-pre-2.8/1.2/Sun Dec 23 23:23:22 2001//TBUGZILLA-2_16_5
+/ant.jpg/1.2/Wed Aug 26 22:36:05 1998/-kb/TBUGZILLA-2_16_5
+/attachment.cgi/1.14/Wed Apr 24 07:24:43 2002//TBUGZILLA-2_16_5
+/bug_form.pl/1.93.2.4/Sat Nov 15 07:38:59 2003//TBUGZILLA-2_16_5
+/bug_status.html/1.13/Mon Apr 15 02:47:52 2002//TBUGZILLA-2_16_5
+/buglist.cgi/1.169.2.12/Sun Jan 18 02:53:33 2004//TBUGZILLA-2_16_5
+/bugwritinghelp.html/1.3/Mon Apr 15 02:47:53 2002//TBUGZILLA-2_16_5
+/bugzilla.dtd/1.5/Thu Apr  4 04:19:58 2002//TBUGZILLA-2_16_5
+/changepassword.cgi/1.21/Sun Jan 20 01:44:37 2002//TBUGZILLA-2_16_5
+/checksetup.pl/1.149.2.22/Fri Feb 27 11:01:51 2004//TBUGZILLA-2_16_5
+/colchange.cgi/1.24.2.3/Sun Jan 18 02:53:33 2004//TBUGZILLA-2_16_5
+/collectstats.pl/1.20.12.2/Mon Nov  3 03:44:38 2003//TBUGZILLA-2_16_5
+/confirmhelp.html/1.3/Mon Apr 15 02:47:53 2002//TBUGZILLA-2_16_5
+/createaccount.cgi/1.21.2.5/Fri Feb 27 10:50:27 2004//TBUGZILLA-2_16_5
+/defparams.pl/1.73.2.8/Sun Jan 18 02:47:45 2004//TBUGZILLA-2_16_5
+/describecomponents.cgi/1.11.2.2/Mon Jun 17 09:39:40 2002//TBUGZILLA-2_16_5
+/describekeywords.cgi/1.8/Wed Apr 24 07:24:45 2002//TBUGZILLA-2_16_5
+/doeditparams.cgi/1.17.2.1/Mon Jun 17 09:39:40 2002//TBUGZILLA-2_16_5
+/duplicates.cgi/1.19.2.1/Thu Apr 24 20:45:08 2003//TBUGZILLA-2_16_5
+/editattachstatuses.cgi/1.7/Mon Apr 29 19:32:27 2002//TBUGZILLA-2_16_5
+/editcomponents.cgi/1.22.2.3/Sun Mar 16 06:19:34 2003//TBUGZILLA-2_16_5
+/editgroups.cgi/1.16.2.1/Mon Jun 17 09:39:41 2002//TBUGZILLA-2_16_5
+/editkeywords.cgi/1.9.2.2/Mon Nov  3 03:46:55 2003//TBUGZILLA-2_16_5
+/editmilestones.cgi/1.8.2.1/Mon Jun 17 09:39:42 2002//TBUGZILLA-2_16_5
+/editparams.cgi/1.14.2.1/Mon Jun 17 09:39:42 2002//TBUGZILLA-2_16_5
+/editproducts.cgi/1.24.2.4/Mon Nov  3 03:50:40 2003//TBUGZILLA-2_16_5
+/editusers.cgi/1.35.2.2/Mon Jun 17 09:39:44 2002//TBUGZILLA-2_16_5
+/editversions.cgi/1.11.2.1/Mon Jun 17 09:39:44 2002//TBUGZILLA-2_16_5
+/enter_bug.cgi/1.66.2.3/Tue Jun 11 13:33:45 2002//TBUGZILLA-2_16_5
+/globals.pl/1.169.2.21/Wed Mar  3 07:28:16 2004//TBUGZILLA-2_16_5
+/help.html/1.5/Mon Apr 15 02:47:55 2002//TBUGZILLA-2_16_5
+/helpemailquery.html/1.2/Mon Apr 15 02:47:55 2002//TBUGZILLA-2_16_5
+/how_to_mail.html/1.3/Mon Apr 15 02:47:55 2002//TBUGZILLA-2_16_5
+/importxml.pl/1.23.2.2/Fri Apr 25 04:18:13 2003//TBUGZILLA-2_16_5
+/index.cgi/1.4.2.1/Sun Jun 23 17:36:00 2002//TBUGZILLA-2_16_5
+/localconfig.js/1.1/Wed Feb 28 23:07:25 2001//TBUGZILLA-2_16_5
+/long_list.cgi/1.26/Wed Apr 24 07:24:46 2002//TBUGZILLA-2_16_5
+/move.pl/1.11.2.1/Mon Jun 17 09:39:48 2002//TBUGZILLA-2_16_5
+/notargetmilestone.html/1.3/Mon Apr 15 02:47:55 2002//TBUGZILLA-2_16_5
+/post_bug.cgi/1.52.2.8/Sun Jan 18 02:53:34 2004//TBUGZILLA-2_16_5
+/process_bug.cgi/1.125.2.9/Sun Nov  9 03:56:32 2003//TBUGZILLA-2_16_5
+/processmail/1.81.2.1/Sun Sep 28 05:25:18 2003//TBUGZILLA-2_16_5
+/query.cgi/1.98.2.2/Sun Jan 18 02:53:34 2004//TBUGZILLA-2_16_5
+/queryhelp.cgi/1.11.2.2/Mon Jun 17 09:39:45 2002//TBUGZILLA-2_16_5
+/quicksearch.html/1.3/Mon Apr 15 02:47:55 2002//TBUGZILLA-2_16_5
+/quicksearch.js/1.9/Mon Dec 24 22:24:35 2001//TBUGZILLA-2_16_5
+/quicksearchhack.html/1.4/Mon Apr 15 02:47:55 2002//TBUGZILLA-2_16_5
+/quips.cgi/1.6.2.1/Mon Jun 17 09:39:46 2002//TBUGZILLA-2_16_5
+/relogin.cgi/1.18.2.1/Sun Jan 18 02:53:34 2004//TBUGZILLA-2_16_5
+/reports.cgi/1.54/Fri Apr 26 21:09:50 2002//TBUGZILLA-2_16_5
+/robots.txt/1.2/Wed Apr 24 18:11:00 2002//TBUGZILLA-2_16_5
+/runtests.pl/1.1.4.2/Mon Feb 17 02:33:31 2003//TBUGZILLA-2_16_5
+/runtests.sh/1.5/Fri Apr 12 21:15:45 2002//TBUGZILLA-2_16_5
+/sanitycheck.cgi/1.42/Thu Apr  4 04:19:58 2002//TBUGZILLA-2_16_5
+/show_activity.cgi/1.9/Wed Apr 24 07:24:49 2002//TBUGZILLA-2_16_5
+/show_bug.cgi/1.18/Sat Mar 23 17:58:36 2002//TBUGZILLA-2_16_5
+/showattachment.cgi/1.10/Wed Jan 30 14:14:12 2002//TBUGZILLA-2_16_5
+/showdependencygraph.cgi/1.18.2.3/Thu Apr 24 21:15:48 2003//TBUGZILLA-2_16_5
+/showdependencytree.cgi/1.17.2.1/Tue May 21 14:18:00 2002//TBUGZILLA-2_16_5
+/sidebar.cgi/1.4.2.2/Wed Jul 10 00:05:54 2002//TBUGZILLA-2_16_5
+/syncshadowdb/1.14/Sun Dec 23 23:23:22 2001//TBUGZILLA-2_16_5
+/token.cgi/1.7.2.1/Mon Jun 17 09:39:46 2002//TBUGZILLA-2_16_5
+/userprefs.cgi/1.35.2.4/Wed Mar  3 05:20:43 2004//TBUGZILLA-2_16_5
+/votehelp.html/1.10/Mon Apr 15 02:47:56 2002//TBUGZILLA-2_16_5
+/votes.cgi/1.3.2.1/Mon Nov  3 03:39:43 2003//TBUGZILLA-2_16_5
+/whineatnews.pl/1.7/Sun Feb 17 08:22:31 2002//TBUGZILLA-2_16_5
+/xml.cgi/1.6.2.1/Mon Jun 17 09:39:48 2002//TBUGZILLA-2_16_5
 D/contrib////
 D/css////
 D/docs////
diff --git a/CVS/Tag b/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/CVS/Tag
+++ b/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/bug_form.pl b/bug_form.pl
index 14e9147ba..68f4c9f3d 100644
--- a/bug_form.pl
+++ b/bug_form.pl
@@ -83,7 +83,7 @@ sub show_bug {
         bug_file_loc, short_desc, target_milestone, 
         qa_contact, status_whiteboard, 
         date_format(creation_ts,'%Y-%m-%d %H:%i'),
-        groupset, delta_ts, sum(votes.count)
+        groupset, delta_ts, ifnull(sum(votes.count),0)
     FROM bugs LEFT JOIN votes USING(bug_id)
     WHERE bugs.bug_id = $id
     GROUP BY bugs.bug_id";
diff --git a/buglist.cgi b/buglist.cgi
index f4cc0e723..8cec40d70 100755
--- a/buglist.cgi
+++ b/buglist.cgi
@@ -101,9 +101,10 @@ my $serverpush =
   exists $ENV{'HTTP_USER_AGENT'} 
     && $ENV{'HTTP_USER_AGENT'} =~ /Mozilla.[3-9]/ 
       && $ENV{'HTTP_USER_AGENT'} !~ /[Cc]ompatible/
-        && $format->{'extension'} eq "html"
-          && !defined($::FORM{'serverpush'})
-            || $::FORM{'serverpush'};
+        && $ENV{'HTTP_USER_AGENT'} !~ /WebKit/
+          && $format->{'extension'} eq "html"
+            && !defined($::FORM{'serverpush'})
+              || $::FORM{'serverpush'};
 
 my $order = $::FORM{'order'} || "";
 my $order_from_cookie = 0;  # True if $order set using $::COOKIE{'LASTORDER'}
@@ -1332,7 +1333,7 @@ if ($order) {
                               . "name <em>$qfragment</em>.";
                     if ($order_from_cookie) {
                         my $cookiepath = Param("cookiepath");
-                        print "Set-Cookie: LASTORDER= ; path=$cookiepath; expires=Sun, 30-Jun-80 00:00:00 GMT\n";
+                        print "Set-Cookie: LASTORDER= ; path=$cookiepath; expires=Tue, 15-Sep-1998 21:49:00 GMT\n";
                         $error =~ s/form submission/cookie/;
                         $error .= "  The cookie has been cleared.";
                     }
@@ -1575,15 +1576,15 @@ if ($format->{'extension'} eq "html") {
 
     if ($order) {
         my $qorder = url_quote($order);
-        print "Set-Cookie: LASTORDER=$qorder ; path=$cookiepath; expires=Sun, 30-Jun-2029 00:00:00 GMT\n";
+        print "Set-Cookie: LASTORDER=$qorder ; path=$cookiepath; expires=Sat, 30-Jun-2029 00:00:00 GMT\n";
     }
     my $bugids = join(":", map( $_->{'id'}, @bugs));
     # See also Bug 111999
     if (length($bugids) < 4000) {
-        print "Set-Cookie: BUGLIST=$bugids ; path=$cookiepath; expires=Sun, 30-Jun-2029 00:00:00 GMT\n";
+        print "Set-Cookie: BUGLIST=$bugids ; path=$cookiepath; expires=Sat, 30-Jun-2029 00:00:00 GMT\n";
     }
     else {
-        print "Set-Cookie: BUGLIST= ; path=$cookiepath; expires=Sun, 30-Jun-2029 00:00:00 GMT\n";
+        print "Set-Cookie: BUGLIST= ; path=$cookiepath; expires=Sat, 30-Jun-2029 00:00:00 GMT\n";
         $vars->{'toolong'} = 1;
     }
 }
diff --git a/checksetup.pl b/checksetup.pl
index b9fbf01a9..6b0f1d6fa 100755
--- a/checksetup.pl
+++ b/checksetup.pl
@@ -1610,8 +1610,15 @@ $table{tokens} =
 ###########################################################################
 
 # Get a list of the existing tables (if any) in the database
-my $sth = $dbh->table_info(undef, undef, undef, "TABLE");
-my @tables = @{$dbh->selectcol_arrayref($sth, { Columns => [3] })};
+my @tables;
+my $zz = $DBI::VERSION; # mention it to eliminate "used only once" warning on perl 5.00503
+if ($DBI::VERSION < 1.20) {
+    @tables = map { $_ =~ s/.*\.//; $_ } $dbh->tables;
+}
+else {
+    my $sth = $dbh->table_info(undef, undef, undef, "TABLE");
+    @tables = @{$dbh->selectcol_arrayref($sth, { Columns => [3] })};
+}
 #print 'Tables: ', join " ", @tables, "\n";
 
 # add lines here if you add more --LOCAL-- config vars that end up in the enums:
@@ -1907,7 +1914,7 @@ sub bailout {   # this is just in case we get interrupted while getting passwd
     exit 1;
 }
 
-$sth = $dbh->prepare(<<_End_Of_SQL_);
+my $sth = $dbh->prepare(<<_End_Of_SQL_);
   SELECT login_name
   FROM profiles
   WHERE groupset=9223372036854775807
@@ -2017,8 +2024,10 @@ _End_Of_SQL_
         chomp $pass1;
         if(! $pass1 ) {
           print "\n\nIt's just plain stupid to not have a password.  Try again!\n";
-        } elsif ( $pass1 !~ /^.{3,16}$/ ) {
-          print "The password must be 3-16 characters in length.";
+        } elsif ( $pass1 !~ /^[a-zA-Z0-9-_]{3,16}$/ ) {
+          print "\n\nThe password must be 3-16 characters in length, " .
+                "and it may\ncontain only letters, digits, " .
+                "underscores (_), and hyphens (-).\n";
         }
       }
       print "\nPlease retype the password to verify: ";
diff --git a/colchange.cgi b/colchange.cgi
index 64dd9c4a5..e5c15ba65 100755
--- a/colchange.cgi
+++ b/colchange.cgi
@@ -84,8 +84,8 @@ if (defined $::FORM{'rememberedquery'}) {
     my $list = join(" ", @collist);
     my $urlbase = Param("urlbase");
     my $cookiepath = Param("cookiepath");
-    print "Set-Cookie: COLUMNLIST=$list ; path=$cookiepath ; expires=Sun, 30-Jun-2029 00:00:00 GMT\n";
-    print "Set-Cookie: SPLITHEADER=$::FORM{'splitheader'} ; path=$cookiepath ; expires=Sun, 30-Jun-2029 00:00:00 GMT\n";
+    print "Set-Cookie: COLUMNLIST=$list ; path=$cookiepath ; expires=Sat, 30-Jun-2029 00:00:00 GMT\n";
+    print "Set-Cookie: SPLITHEADER=$::FORM{'splitheader'} ; path=$cookiepath ; expires=Sat, 30-Jun-2029 00:00:00 GMT\n";
     print "Refresh: 0; URL=buglist.cgi?$::FORM{'rememberedquery'}\n";
     print "\n";
     print "<META HTTP-EQUIV=Refresh CONTENT=\"1; URL=$urlbase"."buglist.cgi?$::FORM{'rememberedquery'}\">\n";
diff --git a/contrib/CVS/Entries b/contrib/CVS/Entries
index 87ab95527..3a32a12a5 100644
--- a/contrib/CVS/Entries
+++ b/contrib/CVS/Entries
@@ -1,13 +1,13 @@
-/BugzillaEmail.pm/1.1/Wed Mar 15 22:29:44 2000//TBUGZILLA-2_16_4
-/README/1.4/Sun Apr 22 18:13:40 2001//TBUGZILLA-2_16_4
-/README.Mailif/1.3/Wed Mar 15 23:39:03 2000//TBUGZILLA-2_16_4
-/bug_email.pl/1.9.12.2/Sat Aug 17 14:24:09 2002//TBUGZILLA-2_16_4
-/bugmail_help.html/1.1/Tue Mar  7 17:36:48 2000//TBUGZILLA-2_16_4
-/bugzilla.procmailrc/1.1/Wed Mar 15 23:39:09 2000//TBUGZILLA-2_16_4
-/bugzilla_email_append.pl/1.2.14.2/Tue Sep  3 06:39:06 2002//TBUGZILLA-2_16_4
-/cvs-update.sh/1.1/Wed Apr 18 18:01:28 2001//TBUGZILLA-2_16_4
-/gnats2bz.pl/1.6/Thu Jan 31 14:29:21 2002//TBUGZILLA-2_16_4
-/jb2bz.py/1.1/Wed Feb 13 14:59:30 2002//TBUGZILLA-2_16_4
-/mysqld-watcher.pl/1.2/Fri Jun  1 08:34:45 2001//TBUGZILLA-2_16_4
-/yp_nomail.sh/1.1/Tue Sep 12 23:50:31 2000//TBUGZILLA-2_16_4
+/BugzillaEmail.pm/1.1/Wed Mar 15 22:29:44 2000//TBUGZILLA-2_16_5
+/README/1.4/Sun Apr 22 18:13:40 2001//TBUGZILLA-2_16_5
+/README.Mailif/1.3/Wed Mar 15 23:39:03 2000//TBUGZILLA-2_16_5
+/bug_email.pl/1.9.12.2/Sat Aug 17 14:24:09 2002//TBUGZILLA-2_16_5
+/bugmail_help.html/1.1/Tue Mar  7 17:36:48 2000//TBUGZILLA-2_16_5
+/bugzilla.procmailrc/1.1/Wed Mar 15 23:39:09 2000//TBUGZILLA-2_16_5
+/bugzilla_email_append.pl/1.2.14.2/Tue Sep  3 06:39:06 2002//TBUGZILLA-2_16_5
+/cvs-update.sh/1.1/Wed Apr 18 18:01:28 2001//TBUGZILLA-2_16_5
+/gnats2bz.pl/1.6/Thu Jan 31 14:29:21 2002//TBUGZILLA-2_16_5
+/jb2bz.py/1.1/Wed Feb 13 14:59:30 2002//TBUGZILLA-2_16_5
+/mysqld-watcher.pl/1.2/Fri Jun  1 08:34:45 2001//TBUGZILLA-2_16_5
+/yp_nomail.sh/1.1/Tue Sep 12 23:50:31 2000//TBUGZILLA-2_16_5
 D/cmdline////
diff --git a/contrib/CVS/Entries.Log b/contrib/CVS/Entries.Log
index f3bfb8966..f5f25a699 100644
--- a/contrib/CVS/Entries.Log
+++ b/contrib/CVS/Entries.Log
@@ -1,2 +1,4 @@
 A D/bug-bugzilla////
+A D/bugzilla-submit////
+R D/bugzilla-submit////
 R D/bug-bugzilla////
diff --git a/contrib/CVS/Tag b/contrib/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/contrib/CVS/Tag
+++ b/contrib/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/contrib/cmdline/CVS/Entries b/contrib/cmdline/CVS/Entries
index da446cf80..ce051703c 100644
--- a/contrib/cmdline/CVS/Entries
+++ b/contrib/cmdline/CVS/Entries
@@ -1,4 +1,4 @@
-/buglist/1.1/Thu Nov 15 17:04:58 2001//TBUGZILLA-2_16_4
-/bugs/1.1/Thu Nov 15 17:04:58 2001//TBUGZILLA-2_16_4
-/query.conf/1.1/Thu Nov 15 17:04:58 2001//TBUGZILLA-2_16_4
+/buglist/1.1/Thu Nov 15 17:04:58 2001//TBUGZILLA-2_16_5
+/bugs/1.1/Thu Nov 15 17:04:58 2001//TBUGZILLA-2_16_5
+/query.conf/1.1/Thu Nov 15 17:04:58 2001//TBUGZILLA-2_16_5
 D
diff --git a/contrib/cmdline/CVS/Tag b/contrib/cmdline/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/contrib/cmdline/CVS/Tag
+++ b/contrib/cmdline/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/createaccount.cgi b/createaccount.cgi
index e409f28b8..e135de704 100755
--- a/createaccount.cgi
+++ b/createaccount.cgi
@@ -55,10 +55,8 @@ if(Param('useLDAP')) {
 # Clear out the login cookies.  Make people log in again if they create an
 # account; otherwise, they'll probably get confused.
 my $cookiepath = Param("cookiepath");
-print "Set-Cookie: Bugzilla_login= ; path=$cookiepath; expires=Sun, 30-Jun-80 00:00:00 GMT
-Set-Cookie: Bugzilla_logincookie= ; path=$cookiepath; expires=Sun, 30-Jun-80 00:00:00 GMT\n";
-
-print "Content-Type: text/html\n\n";
+print "Set-Cookie: Bugzilla_login= ; path=$cookiepath; expires=Tue, 15-Sep-1998 21:49:00 GMT
+Set-Cookie: Bugzilla_logincookie= ; path=$cookiepath; expires=Tue, 15-Sep-1998 21:49:00 GMT\n";
 
 my $login = $::FORM{'login'};
 
@@ -68,6 +66,8 @@ if (defined($login)) {
     CheckEmailSyntax($login);
     $vars->{'login'} = $login;
     
+    print "Content-Type: text/html\n\n";
+
     if (!ValidateNewUser($login)) {
         # Account already exists        
         $template->process("account/exists.html.tmpl", $vars)
@@ -84,6 +84,8 @@ if (defined($login)) {
     exit;
 }
 
+print "Content-Type: text/html\n\n";
+
 # Show the standard "would you like to create an account?" form.
 $template->process("account/create.html.tmpl", $vars)
   || ThrowTemplateError($template->error());
diff --git a/css/CVS/Entries b/css/CVS/Entries
index a7e15551e..8c532291a 100644
--- a/css/CVS/Entries
+++ b/css/CVS/Entries
@@ -1,3 +1,3 @@
-/buglist.css/1.1/Tue Mar 12 13:55:00 2002//TBUGZILLA-2_16_4
-/panel.css/1.1/Wed Dec 12 22:41:11 2001//TBUGZILLA-2_16_4
+/buglist.css/1.1/Tue Mar 12 13:55:00 2002//TBUGZILLA-2_16_5
+/panel.css/1.1/Wed Dec 12 22:41:11 2001//TBUGZILLA-2_16_5
 D
diff --git a/css/CVS/Tag b/css/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/css/CVS/Tag
+++ b/css/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/defparams.pl b/defparams.pl
index 4332b0eca..86fd9e479 100644
--- a/defparams.pl
+++ b/defparams.pl
@@ -93,6 +93,12 @@ sub check_numeric {
 sub check_shadowdb {
     my ($value) = (@_);
     $value = trim($value);
+    if ($value =~ /^([A-Za-z0-9_]+)$/) {
+        $value = $1;
+    }
+    else {
+        return "Invalid database name.  Database names must include only alphanumeric characters and underscores.";
+    }
     if ($value eq "") {
         return "";
     }
@@ -163,7 +169,7 @@ DefParam("usebuggroupsentry",
          0); 
 
 DefParam("shadowdb",
-         "If non-empty, then this is the name of another database in which Bugzilla will keep a shadow read-only copy of everything.  This is done so that long slow read-only operations can be used against this db, and not lock up things for everyone else.  Turning on this parameter will create the given database; be careful not to use the name of an existing database with useful data in it!",
+         "If non-empty, then this is the name of another database in which Bugzilla will keep a shadow read-only copy of everything.  This is done so that long slow read-only operations can be used against this db, and not lock up things for everyone else.  Turning on this parameter will create the given database; be careful not to use the name of an existing database with useful data in it! The db_user you defined in the localconfig file must already have permission to access and write to the new database name before entering the name here, or the database creation will fail.  The same permissions should be granted as for the primary database used by Bugzilla.",
          "t",
          "",
          \&check_shadowdb);
diff --git a/docs/CVS/Entries b/docs/CVS/Entries
index 77f249a7d..f98924f10 100644
--- a/docs/CVS/Entries
+++ b/docs/CVS/Entries
@@ -1,6 +1,6 @@
-/README.docs/1.6.2.3/Wed Apr 23 03:22:20 2003//TBUGZILLA-2_16_4
-/makedocs.pl/1.2.2.3/Fri Jun 13 16:36:28 2003//TBUGZILLA-2_16_4
-/rel_notes.txt/1.10.2.15/Mon Nov  3 03:35:23 2003//TBUGZILLA-2_16_4
+/README.docs/1.6.2.3/Wed Apr 23 03:22:20 2003//TBUGZILLA-2_16_5
+/makedocs.pl/1.2.2.3/Fri Jun 13 16:36:28 2003//TBUGZILLA-2_16_5
+/rel_notes.txt/1.10.2.17/Wed Mar  3 07:27:34 2004//TBUGZILLA-2_16_5
 D/html////
 D/images////
 D/txt////
diff --git a/docs/CVS/Tag b/docs/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/docs/CVS/Tag
+++ b/docs/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/docs/html/CVS/Entries b/docs/html/CVS/Entries
index 39cffc370..89e0daa1f 100644
--- a/docs/html/CVS/Entries
+++ b/docs/html/CVS/Entries
@@ -1,61 +1,61 @@
-/Bugzilla-Guide.html/1.15.2.9/Sun Nov  2 14:02:21 2003//TBUGZILLA-2_16_4
-/about.html/1.7.2.5/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_4
-/aboutthisguide.html/1.9/Wed May  8 21:16:36 2002//TBUGZILLA-2_16_4
-/administration.html/1.7.2.10/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_4
-/cmdline.html/1.7.2.7/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_4
-/conventions.html/1.8.2.9/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_4
-/copyright.html/1.9.2.8/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_4
-/credits.html/1.8.2.6/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_4
-/cust-templates.html/1.1.2.10/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_4
-/database.html/1.6.2.7/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_4
-/dbdoc.html/1.9.2.10/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_4
-/dbschema.html/1.7.2.5/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_4
-/disclaimer.html/1.7.2.5/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_4
-/extraconfig.html/1.1.2.10/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_4
-/faq.html/1.10.2.10/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_4
-/gfdl-0.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/gfdl-1.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/gfdl-10.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/gfdl-2.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/gfdl-3.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/gfdl-4.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/gfdl-5.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/gfdl-6.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/gfdl-7.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/gfdl-8.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/gfdl-9.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/gfdl-howto.html/1.3.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/gfdl.html/1.11.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/glossary.html/1.11.2.10/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/groups.html/1.1.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/hintsandtips.html/1.1.2.8/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/how.html/1.10.2.8/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/index.html/1.11.2.10/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/installation.html/1.10.2.10/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/integration.html/1.7.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/introduction.html/1.1.2.5/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/newversions.html/1.8.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/osx.html/1.3.2.8/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/parameters.html/1.1.2.5/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/patches.html/1.10.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/programadmin.html/1.10.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/rewrite.html/1.3.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/security.html/1.9.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/stepbystep.html/1.8.2.12/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/troubleshooting.html/1.1.2.9/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/upgrading.html/1.1.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/useradmin.html/1.8.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/userpreferences.html/1.1.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/using.html/1.8.2.9/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/variant-fenris.html/1.3.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/variant-issuezilla.html/1.3.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/variant-perforce.html/1.3.2.8/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/variant-redhat.html/1.1.2.3/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/variant-scarab.html/1.3.2.8/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/variant-sourceforge.html/1.3.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/variants.html/1.8.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/voting.html/1.1.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/whatis.html/1.8.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/why.html/1.7.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
-/win32.html/1.7.2.10/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_4
+/Bugzilla-Guide.html/1.15.2.9/Sun Nov  2 14:02:21 2003//TBUGZILLA-2_16_5
+/about.html/1.7.2.5/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_5
+/aboutthisguide.html/1.9/Wed May  8 21:16:36 2002//TBUGZILLA-2_16_5
+/administration.html/1.7.2.10/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_5
+/cmdline.html/1.7.2.7/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_5
+/conventions.html/1.8.2.9/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_5
+/copyright.html/1.9.2.8/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_5
+/credits.html/1.8.2.6/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_5
+/cust-templates.html/1.1.2.10/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_5
+/database.html/1.6.2.7/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_5
+/dbdoc.html/1.9.2.10/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_5
+/dbschema.html/1.7.2.5/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_5
+/disclaimer.html/1.7.2.5/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_5
+/extraconfig.html/1.1.2.10/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_5
+/faq.html/1.10.2.10/Sun Nov  2 14:02:22 2003//TBUGZILLA-2_16_5
+/gfdl-0.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/gfdl-1.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/gfdl-10.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/gfdl-2.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/gfdl-3.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/gfdl-4.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/gfdl-5.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/gfdl-6.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/gfdl-7.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/gfdl-8.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/gfdl-9.html/1.2.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/gfdl-howto.html/1.3.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/gfdl.html/1.11.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/glossary.html/1.11.2.10/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/groups.html/1.1.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/hintsandtips.html/1.1.2.8/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/how.html/1.10.2.8/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/index.html/1.11.2.10/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/installation.html/1.10.2.10/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/integration.html/1.7.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/introduction.html/1.1.2.5/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/newversions.html/1.8.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/osx.html/1.3.2.8/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/parameters.html/1.1.2.5/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/patches.html/1.10.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/programadmin.html/1.10.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/rewrite.html/1.3.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/security.html/1.9.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/stepbystep.html/1.8.2.12/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/troubleshooting.html/1.1.2.9/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/upgrading.html/1.1.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/useradmin.html/1.8.2.7/Mon Jan 19 19:38:10 2004//TBUGZILLA-2_16_5
+/userpreferences.html/1.1.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/using.html/1.8.2.9/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/variant-fenris.html/1.3.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/variant-issuezilla.html/1.3.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/variant-perforce.html/1.3.2.8/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/variant-redhat.html/1.1.2.3/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/variant-scarab.html/1.3.2.8/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/variant-sourceforge.html/1.3.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/variants.html/1.8.2.7/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/voting.html/1.1.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/whatis.html/1.8.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/why.html/1.7.2.6/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
+/win32.html/1.7.2.10/Sun Nov  2 14:02:23 2003//TBUGZILLA-2_16_5
 D
diff --git a/docs/html/CVS/Tag b/docs/html/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/docs/html/CVS/Tag
+++ b/docs/html/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/docs/html/useradmin.html b/docs/html/useradmin.html
index 15bb711a1..4cb83d061 100644
--- a/docs/html/useradmin.html
+++ b/docs/html/useradmin.html
@@ -139,7 +139,7 @@ CLASS="prompt"
 
             <B
 CLASS="command"
->&#13;              update profiles set groupset=0x7ffffffffffffff where login_name =
+>&#13;              update profiles set groupset=0x7fffffffffffffff where login_name =
               "(user's login name)";
             </B
 >
@@ -154,7 +154,7 @@ CLASS="command"
 ><P
 >Yes, that is 
         <EM
->fourteen</EM
+>fifteen</EM
 >
 
         <SPAN
@@ -545,4 +545,4 @@ VALIGN="top"
 ></DIV
 ></BODY
 ></HTML
->
\ No newline at end of file
+>
diff --git a/docs/images/CVS/Entries b/docs/images/CVS/Entries
index e6d198c07..bee91a7f0 100644
--- a/docs/images/CVS/Entries
+++ b/docs/images/CVS/Entries
@@ -1,7 +1,7 @@
-/caution.gif/1.2/Wed May  8 21:16:44 2002/-kb/TBUGZILLA-2_16_4
-/dbschema.jpg/1.1/Wed Aug 29 17:25:34 2001/-kb/TBUGZILLA-2_16_4
-/dbschema.ps/1.1/Wed Aug 29 17:25:34 2001/-kb/TBUGZILLA-2_16_4
-/note.gif/1.1/Thu Aug 23 14:30:18 2001/-kb/TBUGZILLA-2_16_4
-/tip.gif/1.2/Wed May  8 21:16:44 2002/-kb/TBUGZILLA-2_16_4
-/warning.gif/1.2/Wed May  8 21:16:44 2002/-kb/TBUGZILLA-2_16_4
+/caution.gif/1.2/Wed May  8 21:16:44 2002/-kb/TBUGZILLA-2_16_5
+/dbschema.jpg/1.1/Wed Aug 29 17:25:34 2001/-kb/TBUGZILLA-2_16_5
+/dbschema.ps/1.1/Wed Aug 29 17:25:34 2001/-kb/TBUGZILLA-2_16_5
+/note.gif/1.1/Thu Aug 23 14:30:18 2001/-kb/TBUGZILLA-2_16_5
+/tip.gif/1.2/Wed May  8 21:16:44 2002/-kb/TBUGZILLA-2_16_5
+/warning.gif/1.2/Wed May  8 21:16:44 2002/-kb/TBUGZILLA-2_16_5
 D
diff --git a/docs/images/CVS/Tag b/docs/images/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/docs/images/CVS/Tag
+++ b/docs/images/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/docs/rel_notes.txt b/docs/rel_notes.txt
index eab7286e6..b3eb0b2f7 100644
--- a/docs/rel_notes.txt
+++ b/docs/rel_notes.txt
@@ -1,4 +1,5 @@
-The 2.16.4 release fixes a few security issues and bugs in 2.16.3.
+The 2.16.5 release fixes several bugs in 2.16.4.  There are no
+security related issues fixed in this release.
 
 **************************
 *** ABOUT THIS VERSION ***
@@ -7,6 +8,8 @@ The 2.16.4 release fixes a few security issues and bugs in 2.16.3.
 Bug numbers referenced in this document are all on
 bugzilla.mozilla.org unless otherwise specified.
 
+Scroll down for change history.
+
 *** Recommended Practice For The Upgrade ***
 
 As always, please ensure you have run checksetup.pl after
@@ -43,88 +46,12 @@ AppConfig v1.52
 Template Toolkit v2.07
 Text::Wrap v20001.0131
 File::Spec v0.82
-File::Temp (any)   *** NEW in 2.16.3 ***
+File::Temp (any)
 Data::Dumper, Date::Parse, CGI::Carp (any)
 GD v1.19 (optional)
 Chart::Base v0.99 (optional)
 XML::Parser (any, optional)
 
-*********************************************************
-*** USERS UPGRADING FROM ALL VERSIONS PRIOR TO 2.16.4 ***
-*********************************************************
-
-*** SECURITY ISSUES RESOLVED ***
-
-- A user with 'editproducts' privileges (i.e. usually an administrator)
-  can select arbitrary SQL to be run by the nightly statistics cron job
-  (collectstats.pl), by giving a product a special name. (bug 214290)
-
-- A user with 'editkeywords' privileges (i.e. usually an administrator)
-  can inject arbitrary SQL via the URL used to edit an existing keyword.
-  (bug 219044)
-
-- When deleting products and the 'usebuggroups' parameter is on, the
-  privilege which allows someone to add people to the group which is
-  being deleted does not get removed, allowing people with that
-  privilege to get that privilege for the next group that is created
-  which reuses that group ID.  Note that this only allows someone who
-  had been granted privileges in the past to retain them. (bug 219690)
-
-- If you know the email address of someone who has voted on a secure
-  bug, you can access the summary of that bug even if you do not have
-  sufficient permissions to view the bug itself. (bug 209376)
-
-*** Bug fixes of note ***
-
-Perl 5.8.0 Compatibility fixes:
-
-- Two taint errors were fixed, one in process_bug.cgi, and 
-  another in post_bug.cgi (bugs 220332 and 177828)
-
-MySQL 4.0 Compatibility fixes:
-
-- A cosmetic fix was applied to votes.cgi (if there were no 
-  votes, the "0" was not displayed) due to a change in semantics 
-  in SUM() in MySQL 4.0 (bug 217422)
-
-DBD::mysql > 2.1026 Compatibility fixes:
-
-- DBD::mysql versions after 2.1026 return the table list quoted, which
-  broke the existing "table exists" check in checksetup.pl, which caused
-  the second and subsequent attempts to run checksetup.pl to fail. (bug
-  212095) 
-
-Miscellaneous bug fixes:
-
-- A Mozilla-specific reference was removed from one of the report
-  templates (bug 221626)
-
-- It was possible to enter a situation where you were unable to get to
-  editparams.cgi to turn the shutdownhtml param back off after you
-  turned it on when Apache was configured to run Bugzilla in suexec
-  mode. (bug 213384)
-
-- The processmail rescanall task would not send e-mails about more than
-  one bug to the same address (bug 219508)
-
-- If Bugzilla hadn't been accessed in the last hour when the
-  collectstats.pl or whineatnews.pl cron jobs ran, the versioncache
-  would get recreated with the file owner being the user the cron job
-  was running as (usually not the webserver user), causing subsequent
-  access to Bugzilla by the webserver to fail until the permissions were
-  fixed. Now if versioncache isn't readable when accessing from the
-  webserver, we pretend it doesn't exist and recreate it again (bug
-  219508).
-
-- The 'sendmailnow' param is now on by default in new installations
-  (this does not affect existing installations) (bug 219508).
-
-- The 008filter.t test would fail if you had multiple language packs
-  installed. It now properly tests all of the installed language packs
-  (bug 219508).
-
-A few minor documentation changes were committed.
-
 *** Deprecated Features ***
 
 - 2.16 is the last major release that will work with MySQL version
@@ -154,7 +81,8 @@ installation.
   "keyword cache" on bugs, and queries on keywords may not work
   properly, until you rebuild the cache on the sanity check page
   (sanitycheck.cgi).  The changer will receive a warning to do this when
-  altering the keyword.  (bug 69621)
+  altering the keyword.
+  (bug 69621)
 
 - Email notifications will not work out of the box if you are using
   Postfix, Exim or possibly other non-SendMail mail transfer agents, as
@@ -167,30 +95,102 @@ installation.
 - Users behind rotating transparent proxies or otherwise having an IP
   that changes each URL fetch may find they need to log in regularly.
   Note that a fix for this problem has been integrated to the
-  development (2.17) branch. (bug 20122)
+  development (2.17) branch.
+  (bug 20122)
 
 - If you search on any CC or added comments, as well as at least one
   other of CC, added comments, assignee, reporter, etc, then the search
   can be very slow.  This is because of limitations of the MySQL
-  optimiser.  (bug 96101)
+  optimiser.
+  (bug 96101)
 
 - It is recommended you use the high speed XS Stash of the Template
   Toolkit, in order to achieve best performance.  However, there are
   known problems with XS Stash and Perl 5.005_02 and lower.  If you wish
   to use these older versions of Perl, please use the regular stash.
   You are asked which stash you want to use at Template Toolkit
-  installation time.  (bug 140674)
+  installation time.
+  (bug 140674)
 
 - Querying on CC takes too long on big databases. This bug has also been
-  fixed on the development branch (bug 127200).
+  fixed on the development branch.
+  (bug 127200)
 
 - Attachment changes have no midair collision detection, unlike bug
-  changes. (bug 99215)
+  changes.
+  (bug 99215)
 
 - The email preferences option "Priority, status, severity, and/or
   milestone changes" does not actually report status changes.  You can
   however use the option "The bug is resolved or verified" to achieve
-  part of this.  (bug 146261)
+  part of this.
+  (bug 146261)
+
+*********************************************************
+*** USERS UPGRADING FROM ALL VERSIONS PRIOR TO 2.16.4 ***
+*********************************************************
+
+*** Bug fixes of note ***
+
+- Fix a "used only once" warning that ocurred only in perl 5.00503
+  (bug 2321691)
+
+- When a user is creating a new account and enters an invalid email
+  address, the error page sent the "Content-type" header twice, causing
+  the second one to be visible at the top of the page.
+  (bug 137121)
+
+- An HTML encoding issue which only affected Internet Explorer was
+  corrected in the "Change several bugs at once" page.
+  (bug 181106)
+ 
+- During initial setup, using invalid characters in the administrator
+  password would present an error message stating your password was
+  too long or too short instead of telling you it had invalid
+  characters.
+  (bug 166755)
+
+- When a user reset their own password via an emailed token, the new
+  password in the first field would be accepted if the second password
+  field was left blank.
+  (bug 123077)
+
+- Reopening bugs from the "change several bugs at once" page now works.
+  (bug 95430)
+
+- Fix a regression in xml.cgi caused by the previous bugfix for MySQL
+  SUM() changes.  The original fix didn't work properly either.
+  (bug 225474)
+
+- No longer use server push with the "Safari" browser, which claims to
+  use the Mozilla layout engine but doesn't.
+  (bug 188712)
+
+- Creating a shadow database no longer fails with taint mode errors.
+  (bug 227510)
+  
+- If you change your cookiepath setting at some stage (because you have
+  moved the directory Bugzilla resides on your webserver), users can
+  have login cookies with the old cookiepath, and their browsers will
+  send multiple logincookies.  Bugzilla now uses the first rather than
+  the last in order to get the most specific cookie which will be the
+  correct one.
+  (bug 121419)	
+  
+- Fixed a regression caused by the previous DBD::mysql fixes, that
+  caused older versions of DBD::mysql to break due to not supporting
+  the new DBI syntax.
+  (bug 224815)
+
+- Bugzilla no longer sends out invalid dates for cookie expiry.  This
+  bug had no known user visible ramifications.
+  (bug 228706)
+  
+- Update the shadow database parameters description to tell the user
+  about permissions requirements for creating a shadow database.
+  (bug 227513)
+
+- Various documentation updates.
 
 *********************************************************
 *** USERS UPGRADING FROM ALL VERSIONS PRIOR TO 2.16.3 ***
@@ -198,6 +198,91 @@ installation.
 
 *** SECURITY ISSUES RESOLVED ***
 
+- A user with 'editproducts' privileges (i.e. usually an administrator)
+  can select arbitrary SQL to be run by the nightly statistics cron job
+  (collectstats.pl), by giving a product a special name.
+  (bug 214290)
+
+- A user with 'editkeywords' privileges (i.e. usually an administrator)
+  can inject arbitrary SQL via the URL used to edit an existing keyword.
+  (bug 219044)
+
+- When deleting products and the 'usebuggroups' parameter is on, the
+  privilege which allows someone to add people to the group which is
+  being deleted does not get removed, allowing people with that
+  privilege to get that privilege for the next group that is created
+  which reuses that group ID.  Note that this only allows someone who
+  had been granted privileges in the past to retain them.
+  (bug 219690)
+
+- If you know the email address of someone who has voted on a secure
+  bug, you can access the summary of that bug even if you do not have
+  sufficient permissions to view the bug itself.
+  (bug 209376)
+
+*** Bug fixes of note ***
+
+Perl 5.8.0 Compatibility fixes:
+
+- Two taint errors were fixed, one in process_bug.cgi, and 
+  another in post_bug.cgi.
+  (bugs 220332 and 177828)
+
+MySQL 4.0 Compatibility fixes:
+
+- A cosmetic fix was applied to votes.cgi (if there were no 
+  votes, the "0" was not displayed) due to a change in semantics 
+  in SUM() in MySQL 4.0.
+  (bug 217422)
+
+DBD::mysql > 2.1026 Compatibility fixes:
+
+- DBD::mysql versions after 2.1026 return the table list quoted, which
+  broke the existing "table exists" check in checksetup.pl, which caused
+  the second and subsequent attempts to run checksetup.pl to fail.
+  (bug 212095) 
+
+Miscellaneous bug fixes:
+
+- A Mozilla-specific reference was removed from one of the report
+  templates.
+  (bug 221626)
+
+- It was possible to enter a situation where you were unable to get to
+  editparams.cgi to turn the shutdownhtml param back off after you
+  turned it on when Apache was configured to run Bugzilla in suexec
+  mode.
+  (bug 213384)
+  
+- The processmail rescanall task would not send e-mails about more than
+  one bug to the same address.
+  (bug 219508)
+
+- If Bugzilla hadn't been accessed in the last hour when the
+  collectstats.pl or whineatnews.pl cron jobs ran, the versioncache
+  would get recreated with the file owner being the user the cron job
+  was running as (usually not the webserver user), causing subsequent
+  access to Bugzilla by the webserver to fail until the permissions were
+  fixed. Now if versioncache isn't readable when accessing from the
+  webserver, we pretend it doesn't exist and recreate it again.
+  (bug 160422)
+
+- The 'sendmailnow' param is now on by default in new installations
+  (this does not affect existing installations).
+  (bug 146087)
+
+- The 008filter.t test would fail if you had multiple language packs
+  installed. It now properly tests all of the installed language packs.
+  (bug 203318)
+
+- A few minor documentation changes were committed.
+
+*********************************************************
+*** USERS UPGRADING FROM ALL VERSIONS PRIOR TO 2.16.2 ***
+*********************************************************
+
+*** SECURITY ISSUES RESOLVED ***
+
 - A cross site scripting (XSS) vulnerability was fixed in which bug 
   summaries were not properly filtered when a user viewed a dependency graph 
   allowing JavaScript to be embedded on that page.
@@ -206,7 +291,7 @@ installation.
 - Several XSS vulnerabilities were fixed in which user
   input was not escaped when being displayed. A new 
   test has been added to warn about unfiltered data in template
-  files (t/008filter.t)
+  files (t/008filter.t).
   (bug 192677)
 
 - An issue was fixed in which the QA contact was still treated as the QA
@@ -225,6 +310,10 @@ installation.
   using an older version of Perl you'll need to install it with CPAN.
   (bug 197153)
 
+** IMPORTANT CHANGES ***
+
+- New module requirement: File::Temp, as mentioned above.
+
 *** Bug fixes of note ***
 
 - An issue was fixed in which administrator rights could be removed from an
diff --git a/docs/txt/CVS/Entries b/docs/txt/CVS/Entries
index 1a7dd0303..e2209acd2 100644
--- a/docs/txt/CVS/Entries
+++ b/docs/txt/CVS/Entries
@@ -1,2 +1,2 @@
-/Bugzilla-Guide.txt/1.14.2.10/Sun Nov  2 14:02:27 2003//TBUGZILLA-2_16_4
+/Bugzilla-Guide.txt/1.14.2.10/Sun Nov  2 14:02:27 2003//TBUGZILLA-2_16_5
 D
diff --git a/docs/txt/CVS/Tag b/docs/txt/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/docs/txt/CVS/Tag
+++ b/docs/txt/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/docs/xml/CVS/Entries b/docs/xml/CVS/Entries
index 326dc95d5..3799021d2 100644
--- a/docs/xml/CVS/Entries
+++ b/docs/xml/CVS/Entries
@@ -1,19 +1,19 @@
-/Bugzilla-Guide.xml/1.11.2.9/Sun Nov  2 02:53:09 2003//TBUGZILLA-2_16_4
-/about.xml/1.6.2.5/Wed Apr 23 02:24:11 2003//TBUGZILLA-2_16_4
-/administration.xml/1.13.2.9/Wed Oct 22 02:31:07 2003//TBUGZILLA-2_16_4
-/conventions.xml/1.4.2.6/Wed Apr 23 02:24:13 2003//TBUGZILLA-2_16_4
-/database.xml/1.7.2.2/Wed Apr 23 02:24:13 2003//TBUGZILLA-2_16_4
-/dbschema.mysql/1.2/Wed May  8 23:19:09 2002//TBUGZILLA-2_16_4
-/faq.xml/1.8.2.8/Sat Nov  1 10:12:12 2003//TBUGZILLA-2_16_4
-/filetemp.patch/1.1.2.1/Wed Apr  2 00:44:11 2003//TBUGZILLA-2_16_4
-/gd-makefile.patch/1.1.2.1/Sun May 12 13:16:48 2002//TBUGZILLA-2_16_4
-/gfdl.xml/1.4.2.3/Wed Apr 23 02:24:14 2003//TBUGZILLA-2_16_4
-/glossary.xml/1.5.2.5/Wed Apr 23 02:24:15 2003//TBUGZILLA-2_16_4
-/index.xml/1.3.2.1/Wed Apr 23 02:24:16 2003//TBUGZILLA-2_16_4
-/installation.xml/1.18.2.13/Tue Oct  7 20:43:00 2003//TBUGZILLA-2_16_4
-/integration.xml/1.7.2.4/Wed Apr 23 02:24:19 2003//TBUGZILLA-2_16_4
-/introduction.xml/1.1.2.4/Wed Apr 23 02:24:19 2003//TBUGZILLA-2_16_4
-/patches.xml/1.13.2.4/Wed Apr 23 02:24:20 2003//TBUGZILLA-2_16_4
-/using.xml/1.10.2.6/Wed Apr 23 02:24:20 2003//TBUGZILLA-2_16_4
-/variants.xml/1.6.2.7/Wed Apr 23 02:24:20 2003//TBUGZILLA-2_16_4
+/Bugzilla-Guide.xml/1.11.2.9/Sun Nov  2 02:53:09 2003//TBUGZILLA-2_16_5
+/about.xml/1.6.2.5/Wed Apr 23 02:24:11 2003//TBUGZILLA-2_16_5
+/administration.xml/1.13.2.11/Mon Jan 19 19:36:03 2004//TBUGZILLA-2_16_5
+/conventions.xml/1.4.2.6/Wed Apr 23 02:24:13 2003//TBUGZILLA-2_16_5
+/database.xml/1.7.2.2/Wed Apr 23 02:24:13 2003//TBUGZILLA-2_16_5
+/dbschema.mysql/1.2/Wed May  8 23:19:09 2002//TBUGZILLA-2_16_5
+/faq.xml/1.8.2.8/Sat Nov  1 10:12:12 2003//TBUGZILLA-2_16_5
+/filetemp.patch/1.1.2.1/Wed Apr  2 00:44:11 2003//TBUGZILLA-2_16_5
+/gd-makefile.patch/1.1.2.1/Sun May 12 13:16:48 2002//TBUGZILLA-2_16_5
+/gfdl.xml/1.4.2.3/Wed Apr 23 02:24:14 2003//TBUGZILLA-2_16_5
+/glossary.xml/1.5.2.5/Wed Apr 23 02:24:15 2003//TBUGZILLA-2_16_5
+/index.xml/1.3.2.1/Wed Apr 23 02:24:16 2003//TBUGZILLA-2_16_5
+/installation.xml/1.18.2.13/Tue Oct  7 20:43:00 2003//TBUGZILLA-2_16_5
+/integration.xml/1.7.2.4/Wed Apr 23 02:24:19 2003//TBUGZILLA-2_16_5
+/introduction.xml/1.1.2.4/Wed Apr 23 02:24:19 2003//TBUGZILLA-2_16_5
+/patches.xml/1.13.2.4/Wed Apr 23 02:24:20 2003//TBUGZILLA-2_16_5
+/using.xml/1.10.2.6/Wed Apr 23 02:24:20 2003//TBUGZILLA-2_16_5
+/variants.xml/1.6.2.7/Wed Apr 23 02:24:20 2003//TBUGZILLA-2_16_5
 D
diff --git a/docs/xml/CVS/Tag b/docs/xml/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/docs/xml/CVS/Tag
+++ b/docs/xml/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/docs/xml/administration.xml b/docs/xml/administration.xml
index fe87d49a7..bbf409370 100644
--- a/docs/xml/administration.xml
+++ b/docs/xml/administration.xml
@@ -225,7 +225,7 @@
             <prompt>mysql&gt;</prompt>
 
             <command>
-              update profiles set groupset=0x7ffffffffffffff where login_name =
+              update profiles set groupset=0x7fffffffffffffff where login_name =
               "(user's login name)";
             </command>
           </member>
@@ -233,7 +233,7 @@
         </para>
 
         <para>Yes, that is 
-        <emphasis>fourteen</emphasis>
+        <emphasis>fifteen</emphasis>
 
         <quote>f</quote>
 
diff --git a/globals.pl b/globals.pl
index ca20265e3..1b78fe174 100644
--- a/globals.pl
+++ b/globals.pl
@@ -98,7 +98,7 @@ $::SIG{TERM} = 'IGNORE';
 $::SIG{PIPE} = 'IGNORE';
 
 # Contains the version string for the current running Bugzilla.
-$::param{'version'} = '2.16.4';
+$::param{'version'} = '2.16.5';
 
 $::dontchange = "--do_not_change--";
 $::chooseone = "--Choose_one:--";
@@ -856,7 +856,7 @@ sub ValidatePassword {
         return "The password is less than three characters long.  It must be at least three characters.";
     } elsif ( length($password) > 16 ) {
         return "The password is more than 16 characters long.  It must be no more than 16 characters.";
-    } elsif ( $matchpassword && $password ne $matchpassword ) { 
+    } elsif ( (defined $matchpassword) && ($password ne $matchpassword) ) { 
         return "The two passwords do not match.";
     }
 
diff --git a/post_bug.cgi b/post_bug.cgi
index 6f37b18bf..101d949b3 100755
--- a/post_bug.cgi
+++ b/post_bug.cgi
@@ -76,7 +76,7 @@ my $cookiepath = Param("cookiepath");
 if (exists $::FORM{'product'}) {
     if (exists $::FORM{'version'}) {           
         print "Set-Cookie: VERSION-$product=$::FORM{'version'} ; " .
-              "path=$cookiepath ; expires=Sun, 30-Jun-2029 00:00:00 GMT\n"; 
+              "path=$cookiepath ; expires=Sat, 30-Jun-2029 00:00:00 GMT\n"; 
     }
 }
 
diff --git a/process_bug.cgi b/process_bug.cgi
index 205b3f366..939e63236 100755
--- a/process_bug.cgi
+++ b/process_bug.cgi
@@ -657,12 +657,8 @@ SWITCH: for ($::FORM{'knob'}) {
         last SWITCH;
     };   
     /^reopen$/  && CheckonComment( "reopen" ) && do {
-                SendSQL("SELECT resolution FROM bugs WHERE bug_id = $::FORM{'id'}");
         ChangeStatus('REOPENED');
         ChangeResolution('');
-                if (FetchOneColumn() eq 'DUPLICATE') {
-                        SendSQL("DELETE FROM duplicates WHERE dupe = $::FORM{'id'}");
-                }
         last SWITCH;
     };
     /^verify$/ && CheckonComment( "verify" ) && do {
@@ -850,7 +846,7 @@ foreach my $id (@idlist) {
     my $write = "WRITE";        # Might want to make a param to control
                                 # whether we do LOW_PRIORITY ...
     SendSQL("LOCK TABLES bugs $write, bugs_activity $write, cc $write, " .
-            "cc AS selectVisible_cc $write, " .
+            "cc AS selectVisible_cc $write, duplicates $write, " .
             "profiles $write, dependencies $write, votes $write, " .
             "keywords $write, longdescs $write, fielddefs $write, " .
             "keyworddefs READ, groups READ, attachments READ, products READ");
@@ -1030,6 +1026,13 @@ foreach my $id (@idlist) {
     if ($::comma ne "") {
         SendSQL($query);
     }
+    # Check for duplicates if the bug is [re]open
+    SendSQL("SELECT resolution FROM bugs WHERE bug_id = $id");
+    my $resolution = FetchOneColumn();
+    if ($resolution eq '') {
+        SendSQL("DELETE FROM duplicates WHERE dupe = $id");
+    }
+    
     SendSQL("select now()");
     $timestamp = FetchOneColumn();
     
diff --git a/query.cgi b/query.cgi
index c75834c33..9c38831c3 100755
--- a/query.cgi
+++ b/query.cgi
@@ -89,7 +89,7 @@ if ($::userid) {
                 }
             }
             print "Set-Cookie: $cookiename= ; path=" . Param("cookiepath") . 
-                  "; expires=Sun, 30-Jun-1980 00:00:00 GMT\n";
+                  "; expires=Tue, 15-Sep-1998 21:49:00 GMT\n";
         }
     }
 }
diff --git a/relogin.cgi b/relogin.cgi
index d3023c850..326bf8029 100755
--- a/relogin.cgi
+++ b/relogin.cgi
@@ -51,8 +51,8 @@ if ($::userid) {
 }
 
 my $cookiepath = Param("cookiepath");
-print "Set-Cookie: Bugzilla_login= ; path=$cookiepath; expires=Sun, 30-Jun-80 00:00:00 GMT
-Set-Cookie: Bugzilla_logincookie= ; path=$cookiepath; expires=Sun, 30-Jun-80 00:00:00 GMT
+print "Set-Cookie: Bugzilla_login= ; path=$cookiepath; expires=Tue, 15-Sep-1998 21:49:00 GMT
+Set-Cookie: Bugzilla_logincookie= ; path=$cookiepath; expires=Tue, 15-Sep-1998 21:49:00 GMT
 ";
 
 delete $::COOKIE{"Bugzilla_login"};
diff --git a/t/CVS/Entries b/t/CVS/Entries
index 730757628..cdf3e7a88 100644
--- a/t/CVS/Entries
+++ b/t/CVS/Entries
@@ -1,7 +1,7 @@
-/001compile.t/1.8/Wed May  8 23:49:31 2002//TBUGZILLA-2_16_4
-/002goodperl.t/1.7/Wed May  8 23:49:31 2002//TBUGZILLA-2_16_4
-/003safesys.t/1.4/Wed May  8 23:49:31 2002//TBUGZILLA-2_16_4
-/004template.t/1.15.2.3/Mon Feb 17 02:35:54 2003//TBUGZILLA-2_16_4
-/005no_tabs.t/1.10/Wed May  8 23:49:32 2002//TBUGZILLA-2_16_4
-/008filter.t/1.1.2.2/Sat Apr 26 14:15:54 2003//TBUGZILLA-2_16_4
+/001compile.t/1.8/Wed May  8 23:49:31 2002//TBUGZILLA-2_16_5
+/002goodperl.t/1.7/Wed May  8 23:49:31 2002//TBUGZILLA-2_16_5
+/003safesys.t/1.4/Wed May  8 23:49:31 2002//TBUGZILLA-2_16_5
+/004template.t/1.15.2.3/Mon Feb 17 02:35:54 2003//TBUGZILLA-2_16_5
+/005no_tabs.t/1.10/Wed May  8 23:49:32 2002//TBUGZILLA-2_16_5
+/008filter.t/1.1.2.2/Sat Apr 26 14:15:54 2003//TBUGZILLA-2_16_5
 D/Support////
diff --git a/t/CVS/Tag b/t/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/t/CVS/Tag
+++ b/t/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/t/Support/CVS/Entries b/t/Support/CVS/Entries
index c9977f9b9..7bce8d194 100644
--- a/t/Support/CVS/Entries
+++ b/t/Support/CVS/Entries
@@ -1,4 +1,4 @@
-/Files.pm/1.9.6.2/Mon Feb 17 02:50:58 2003//TBUGZILLA-2_16_4
-/Systemexec.pm/1.2/Fri Oct 19 22:39:51 2001//TBUGZILLA-2_16_4
-/Templates.pm/1.9.2.1/Mon Feb 17 02:35:57 2003//TBUGZILLA-2_16_4
+/Files.pm/1.9.6.2/Mon Feb 17 02:50:58 2003//TBUGZILLA-2_16_5
+/Systemexec.pm/1.2/Fri Oct 19 22:39:51 2001//TBUGZILLA-2_16_5
+/Templates.pm/1.9.2.1/Mon Feb 17 02:35:57 2003//TBUGZILLA-2_16_5
 D
diff --git a/t/Support/CVS/Tag b/t/Support/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/t/Support/CVS/Tag
+++ b/t/Support/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/CVS/Entries b/template/CVS/Entries
index f235b1315..f4d2d2ea3 100644
--- a/template/CVS/Entries
+++ b/template/CVS/Entries
@@ -1,2 +1,2 @@
-/.cvsignore/1.3/Tue May  7 21:33:53 2002//TBUGZILLA-2_16_4
+/.cvsignore/1.3/Tue May  7 21:33:53 2002//TBUGZILLA-2_16_5
 D/en////
diff --git a/template/CVS/Tag b/template/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/CVS/Tag
+++ b/template/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/CVS/Entries b/template/en/CVS/Entries
index dc4c3e89e..3e4889919 100644
--- a/template/en/CVS/Entries
+++ b/template/en/CVS/Entries
@@ -1,2 +1,2 @@
-/.cvsignore/1.1/Wed Apr 24 07:29:49 2002//TBUGZILLA-2_16_4
+/.cvsignore/1.1/Wed Apr 24 07:29:49 2002//TBUGZILLA-2_16_5
 D/default////
diff --git a/template/en/CVS/Entries.Log b/template/en/CVS/Entries.Log
new file mode 100644
index 000000000..be8490ef0
--- /dev/null
+++ b/template/en/CVS/Entries.Log
@@ -0,0 +1,2 @@
+A D/extension////
+R D/extension////
diff --git a/template/en/CVS/Tag b/template/en/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/CVS/Tag
+++ b/template/en/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/CVS/Entries b/template/en/default/CVS/Entries
index f4ff430a4..3bb176804 100644
--- a/template/en/default/CVS/Entries
+++ b/template/en/default/CVS/Entries
@@ -1,6 +1,6 @@
-/filterexceptions.pl/1.1.2.1/Thu Apr 24 20:45:15 2003//TBUGZILLA-2_16_4
-/index.html.tmpl/1.4.2.2/Sun Jun 23 17:36:05 2002//TBUGZILLA-2_16_4
-/sidebar.xul.tmpl/1.3.2.1/Wed Jul 10 00:05:58 2002//TBUGZILLA-2_16_4
+/filterexceptions.pl/1.1.2.1/Thu Apr 24 20:45:15 2003//TBUGZILLA-2_16_5
+/index.html.tmpl/1.4.2.2/Sun Jun 23 17:36:05 2002//TBUGZILLA-2_16_5
+/sidebar.xul.tmpl/1.3.2.1/Wed Jul 10 00:05:58 2002//TBUGZILLA-2_16_5
 D/account////
 D/admin////
 D/attachment////
diff --git a/template/en/default/CVS/Tag b/template/en/default/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/CVS/Tag
+++ b/template/en/default/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/account/CVS/Entries b/template/en/default/account/CVS/Entries
index 8efc02444..0210aa8fe 100644
--- a/template/en/default/account/CVS/Entries
+++ b/template/en/default/account/CVS/Entries
@@ -1,7 +1,7 @@
-/cancel-token.txt.tmpl/1.1/Thu Apr 18 18:56:15 2002//TBUGZILLA-2_16_4
-/create.html.tmpl/1.3/Tue Apr 23 23:27:32 2002//TBUGZILLA-2_16_4
-/created.html.tmpl/1.4/Mon May  6 19:16:50 2002//TBUGZILLA-2_16_4
-/exists.html.tmpl/1.4.2.1/Thu May 23 08:13:49 2002//TBUGZILLA-2_16_4
+/cancel-token.txt.tmpl/1.1/Thu Apr 18 18:56:15 2002//TBUGZILLA-2_16_5
+/create.html.tmpl/1.3/Tue Apr 23 23:27:32 2002//TBUGZILLA-2_16_5
+/created.html.tmpl/1.4/Mon May  6 19:16:50 2002//TBUGZILLA-2_16_5
+/exists.html.tmpl/1.4.2.1/Thu May 23 08:13:49 2002//TBUGZILLA-2_16_5
 D/email////
 D/password////
 D/prefs////
diff --git a/template/en/default/account/CVS/Tag b/template/en/default/account/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/account/CVS/Tag
+++ b/template/en/default/account/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/account/email/CVS/Entries b/template/en/default/account/email/CVS/Entries
index 5077681c8..f57df8d49 100644
--- a/template/en/default/account/email/CVS/Entries
+++ b/template/en/default/account/email/CVS/Entries
@@ -1,4 +1,4 @@
-/change-new.txt.tmpl/1.3/Fri May  3 06:37:42 2002//TBUGZILLA-2_16_4
-/change-old.txt.tmpl/1.4/Mon May  6 19:16:46 2002//TBUGZILLA-2_16_4
-/confirm.html.tmpl/1.4.2.1/Thu May 23 08:13:51 2002//TBUGZILLA-2_16_4
+/change-new.txt.tmpl/1.3/Fri May  3 06:37:42 2002//TBUGZILLA-2_16_5
+/change-old.txt.tmpl/1.4/Mon May  6 19:16:46 2002//TBUGZILLA-2_16_5
+/confirm.html.tmpl/1.4.2.1/Thu May 23 08:13:51 2002//TBUGZILLA-2_16_5
 D
diff --git a/template/en/default/account/email/CVS/Tag b/template/en/default/account/email/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/account/email/CVS/Tag
+++ b/template/en/default/account/email/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/account/password/CVS/Entries b/template/en/default/account/password/CVS/Entries
index 0c50caa4e..aeed287fb 100644
--- a/template/en/default/account/password/CVS/Entries
+++ b/template/en/default/account/password/CVS/Entries
@@ -1,3 +1,3 @@
-/forgotten-password.txt.tmpl/1.2/Fri May  3 06:37:47 2002//TBUGZILLA-2_16_4
-/set-forgotten-password.html.tmpl/1.3.2.1/Thu May 23 08:13:56 2002//TBUGZILLA-2_16_4
+/forgotten-password.txt.tmpl/1.2/Fri May  3 06:37:47 2002//TBUGZILLA-2_16_5
+/set-forgotten-password.html.tmpl/1.3.2.1/Thu May 23 08:13:56 2002//TBUGZILLA-2_16_5
 D
diff --git a/template/en/default/account/password/CVS/Tag b/template/en/default/account/password/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/account/password/CVS/Tag
+++ b/template/en/default/account/password/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/account/prefs/CVS/Entries b/template/en/default/account/prefs/CVS/Entries
index 21a7163d4..a5614b022 100644
--- a/template/en/default/account/prefs/CVS/Entries
+++ b/template/en/default/account/prefs/CVS/Entries
@@ -1,6 +1,6 @@
-/account.html.tmpl/1.1.2.1/Thu May 23 08:13:58 2002//TBUGZILLA-2_16_4
-/email.html.tmpl/1.1.2.3/Wed Jul 17 18:28:37 2002//TBUGZILLA-2_16_4
-/footer.html.tmpl/1.1.2.1/Thu May 23 08:13:59 2002//TBUGZILLA-2_16_4
-/permissions.html.tmpl/1.1.2.1/Thu May 23 08:13:59 2002//TBUGZILLA-2_16_4
-/prefs.html.tmpl/1.4.2.2/Tue Aug 13 06:57:03 2002//TBUGZILLA-2_16_4
+/account.html.tmpl/1.1.2.1/Thu May 23 08:13:58 2002//TBUGZILLA-2_16_5
+/email.html.tmpl/1.1.2.3/Wed Jul 17 18:28:37 2002//TBUGZILLA-2_16_5
+/footer.html.tmpl/1.1.2.1/Thu May 23 08:13:59 2002//TBUGZILLA-2_16_5
+/permissions.html.tmpl/1.1.2.1/Thu May 23 08:13:59 2002//TBUGZILLA-2_16_5
+/prefs.html.tmpl/1.4.2.2/Tue Aug 13 06:57:03 2002//TBUGZILLA-2_16_5
 D
diff --git a/template/en/default/account/prefs/CVS/Tag b/template/en/default/account/prefs/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/account/prefs/CVS/Tag
+++ b/template/en/default/account/prefs/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/admin/CVS/Entries.Log b/template/en/default/admin/CVS/Entries.Log
index a61dcacb6..381c8a6ed 100644
--- a/template/en/default/admin/CVS/Entries.Log
+++ b/template/en/default/admin/CVS/Entries.Log
@@ -1,10 +1,12 @@
 A D/common////
 A D/flag-type////
+A D/groups////
 A D/keywords////
 A D/products////
 A D/request-type////
 R D/request-type////
 R D/products////
 R D/keywords////
+R D/groups////
 R D/flag-type////
 R D/common////
diff --git a/template/en/default/admin/CVS/Tag b/template/en/default/admin/CVS/Tag
index d861f2cc4..51d065a50 100644
--- a/template/en/default/admin/CVS/Tag
+++ b/template/en/default/admin/CVS/Tag
@@ -1 +1 @@
-TBUGZILLA-2_16_4
+TBUGZILLA-2_16_5
diff --git a/template/en/default/admin/attachstatus/CVS/Entries b/template/en/default/admin/attachstatus/CVS/Entries
index 7864e39b6..0041e4a3c 100644
--- a/template/en/default/admin/attachstatus/CVS/Entries
+++ b/template/en/default/admin/attachstatus/CVS/Entries
@@ -1,5 +1,5 @@
-/create.html.tmpl/1.3/Tue Apr 23 23:27:26 2002//TBUGZILLA-2_16_4
-/delete.html.tmpl/1.3/Tue Apr 23 23:27:25 2002//TBUGZILLA-2_16_4
-/edit.html.tmpl/1.4/Mon May  6 19:16:58 2002//TBUGZILLA-2_16_4
-/list.html.tmpl/1.4/Mon May  6 19:16:58 2002//TBUGZILLA-2_16_4
+/create.html.tmpl/1.3/Tue Apr 23 23:27:26 2002//TBUGZILLA-2_16_5
+/delete.html.tmpl/1.3/Tue Apr 23 23:27:25 2002//TBUGZILLA-2_16_5
+/edit.html.tmpl/1.4/Mon May  6 19:16:58 2002//TBUGZILLA-2_16_5
+/list.html.tmpl/1.4/Mon May  6 19:16:58 2002//TBUGZILLA-2_16_5
 D
diff --git a/template/en/default/admin/attachstatus/CVS/Tag b/template/en/default/admin/attachstatus/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/admin/attachstatus/CVS/Tag
+++ b/template/en/default/admin/attachstatus/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/attachment/CVS/Entries b/template/en/default/attachment/CVS/Entries
index 5d2c6a550..80177c6fe 100644
--- a/template/en/default/attachment/CVS/Entries
+++ b/template/en/default/attachment/CVS/Entries
@@ -1,8 +1,8 @@
-/content-types.html.tmpl/1.1/Thu Apr 18 18:56:29 2002//TBUGZILLA-2_16_4
-/create.html.tmpl/1.5.2.2/Tue Jun  4 22:56:38 2002//TBUGZILLA-2_16_4
-/created.html.tmpl/1.4.2.1/Thu May 23 08:14:02 2002//TBUGZILLA-2_16_4
-/edit.html.tmpl/1.4.2.3/Thu Apr 24 20:45:18 2003//TBUGZILLA-2_16_4
-/list.html.tmpl/1.1/Thu Apr 18 18:56:30 2002//TBUGZILLA-2_16_4
-/show-multiple.html.tmpl/1.3.2.1/Thu May 23 08:14:03 2002//TBUGZILLA-2_16_4
-/updated.html.tmpl/1.4.2.1/Thu May 23 08:14:03 2002//TBUGZILLA-2_16_4
+/content-types.html.tmpl/1.1/Thu Apr 18 18:56:29 2002//TBUGZILLA-2_16_5
+/create.html.tmpl/1.5.2.2/Tue Jun  4 22:56:38 2002//TBUGZILLA-2_16_5
+/created.html.tmpl/1.4.2.1/Thu May 23 08:14:02 2002//TBUGZILLA-2_16_5
+/edit.html.tmpl/1.4.2.3/Thu Apr 24 20:45:18 2003//TBUGZILLA-2_16_5
+/list.html.tmpl/1.1/Thu Apr 18 18:56:30 2002//TBUGZILLA-2_16_5
+/show-multiple.html.tmpl/1.3.2.1/Thu May 23 08:14:03 2002//TBUGZILLA-2_16_5
+/updated.html.tmpl/1.4.2.1/Thu May 23 08:14:03 2002//TBUGZILLA-2_16_5
 D
diff --git a/template/en/default/attachment/CVS/Tag b/template/en/default/attachment/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/attachment/CVS/Tag
+++ b/template/en/default/attachment/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/bug/CVS/Entries b/template/en/default/bug/CVS/Entries
index 39263024e..948cbcf80 100644
--- a/template/en/default/bug/CVS/Entries
+++ b/template/en/default/bug/CVS/Entries
@@ -1,11 +1,11 @@
-/choose-xml.html.tmpl/1.4.2.1/Thu May 23 08:14:05 2002//TBUGZILLA-2_16_4
-/choose.html.tmpl/1.3/Tue Apr 23 23:27:50 2002//TBUGZILLA-2_16_4
-/comments.html.tmpl/1.1.2.1/Sat Jun 22 21:03:21 2002//TBUGZILLA-2_16_4
-/dependency-graph.html.tmpl/1.5.2.1/Thu May 23 08:14:05 2002//TBUGZILLA-2_16_4
-/dependency-tree.html.tmpl/1.4.2.1/Mon May 13 06:24:20 2002//TBUGZILLA-2_16_4
-/edit.html.tmpl/1.7.2.5/Tue Jul  9 01:17:59 2002//TBUGZILLA-2_16_4
-/navigate.html.tmpl/1.1.2.1/Thu May  9 23:15:05 2002//TBUGZILLA-2_16_4
-/show-multiple.html.tmpl/1.3.2.2/Thu Apr 24 20:45:20 2003//TBUGZILLA-2_16_4
+/choose-xml.html.tmpl/1.4.2.1/Thu May 23 08:14:05 2002//TBUGZILLA-2_16_5
+/choose.html.tmpl/1.3/Tue Apr 23 23:27:50 2002//TBUGZILLA-2_16_5
+/comments.html.tmpl/1.1.2.1/Sat Jun 22 21:03:21 2002//TBUGZILLA-2_16_5
+/dependency-graph.html.tmpl/1.5.2.1/Thu May 23 08:14:05 2002//TBUGZILLA-2_16_5
+/dependency-tree.html.tmpl/1.4.2.1/Mon May 13 06:24:20 2002//TBUGZILLA-2_16_5
+/edit.html.tmpl/1.7.2.5/Tue Jul  9 01:17:59 2002//TBUGZILLA-2_16_5
+/navigate.html.tmpl/1.1.2.1/Thu May  9 23:15:05 2002//TBUGZILLA-2_16_5
+/show-multiple.html.tmpl/1.3.2.2/Thu Apr 24 20:45:20 2003//TBUGZILLA-2_16_5
 D/activity////
 D/create////
 D/process////
diff --git a/template/en/default/bug/CVS/Tag b/template/en/default/bug/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/bug/CVS/Tag
+++ b/template/en/default/bug/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/bug/activity/CVS/Entries b/template/en/default/bug/activity/CVS/Entries
index f1201d727..70f6fc4ef 100644
--- a/template/en/default/bug/activity/CVS/Entries
+++ b/template/en/default/bug/activity/CVS/Entries
@@ -1,3 +1,3 @@
-/show.html.tmpl/1.3.2.1/Thu May 23 08:14:07 2002//TBUGZILLA-2_16_4
-/table.html.tmpl/1.1/Thu Apr 18 18:56:38 2002//TBUGZILLA-2_16_4
+/show.html.tmpl/1.3.2.1/Thu May 23 08:14:07 2002//TBUGZILLA-2_16_5
+/table.html.tmpl/1.1/Thu Apr 18 18:56:38 2002//TBUGZILLA-2_16_5
 D
diff --git a/template/en/default/bug/activity/CVS/Tag b/template/en/default/bug/activity/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/bug/activity/CVS/Tag
+++ b/template/en/default/bug/activity/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/bug/create/CVS/Entries b/template/en/default/bug/create/CVS/Entries
index 82dbf5157..6dca18da2 100644
--- a/template/en/default/bug/create/CVS/Entries
+++ b/template/en/default/bug/create/CVS/Entries
@@ -1,6 +1,6 @@
-/comment.txt.tmpl/1.2/Mon May  6 19:17:06 2002//TBUGZILLA-2_16_4
-/create.html.tmpl/1.6.2.5/Thu Apr 24 20:45:22 2003//TBUGZILLA-2_16_4
-/created.html.tmpl/1.4/Wed May  1 19:00:46 2002//TBUGZILLA-2_16_4
-/make-template.html.tmpl/1.3.2.1/Thu Apr 24 20:45:24 2003//TBUGZILLA-2_16_4
-/user-message.html.tmpl/1.1.2.1/Wed Jun  5 03:42:23 2002//TBUGZILLA-2_16_4
+/comment.txt.tmpl/1.2/Mon May  6 19:17:06 2002//TBUGZILLA-2_16_5
+/create.html.tmpl/1.6.2.5/Thu Apr 24 20:45:22 2003//TBUGZILLA-2_16_5
+/created.html.tmpl/1.4/Wed May  1 19:00:46 2002//TBUGZILLA-2_16_5
+/make-template.html.tmpl/1.3.2.1/Thu Apr 24 20:45:24 2003//TBUGZILLA-2_16_5
+/user-message.html.tmpl/1.1.2.1/Wed Jun  5 03:42:23 2002//TBUGZILLA-2_16_5
 D
diff --git a/template/en/default/bug/create/CVS/Tag b/template/en/default/bug/create/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/bug/create/CVS/Tag
+++ b/template/en/default/bug/create/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/bug/process/CVS/Entries b/template/en/default/bug/process/CVS/Entries
index 0cc40b8b3..dab1c639b 100644
--- a/template/en/default/bug/process/CVS/Entries
+++ b/template/en/default/bug/process/CVS/Entries
@@ -1,6 +1,6 @@
-/confirm-duplicate.html.tmpl/1.2.2.1/Tue Sep  3 07:24:57 2002//TBUGZILLA-2_16_4
-/midair.html.tmpl/1.3.2.1/Tue Sep  3 07:24:58 2002//TBUGZILLA-2_16_4
-/next.html.tmpl/1.1/Sun Apr 21 21:30:21 2002//TBUGZILLA-2_16_4
-/results.html.tmpl/1.3/Wed May  1 19:00:49 2002//TBUGZILLA-2_16_4
-/verify-new-product.html.tmpl/1.3.2.5/Tue Sep  3 07:24:58 2002//TBUGZILLA-2_16_4
+/confirm-duplicate.html.tmpl/1.2.2.1/Tue Sep  3 07:24:57 2002//TBUGZILLA-2_16_5
+/midair.html.tmpl/1.3.2.1/Tue Sep  3 07:24:58 2002//TBUGZILLA-2_16_5
+/next.html.tmpl/1.1/Sun Apr 21 21:30:21 2002//TBUGZILLA-2_16_5
+/results.html.tmpl/1.3/Wed May  1 19:00:49 2002//TBUGZILLA-2_16_5
+/verify-new-product.html.tmpl/1.3.2.5/Tue Sep  3 07:24:58 2002//TBUGZILLA-2_16_5
 D
diff --git a/template/en/default/bug/process/CVS/Tag b/template/en/default/bug/process/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/bug/process/CVS/Tag
+++ b/template/en/default/bug/process/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/bug/votes/CVS/Entries b/template/en/default/bug/votes/CVS/Entries
index f09406467..d5e93f9e2 100644
--- a/template/en/default/bug/votes/CVS/Entries
+++ b/template/en/default/bug/votes/CVS/Entries
@@ -1,4 +1,4 @@
-/delete-all.html.tmpl/1.4/Mon May  6 19:17:09 2002//TBUGZILLA-2_16_4
-/list-for-bug.html.tmpl/1.4.2.3/Sat Jun 22 10:35:09 2002//TBUGZILLA-2_16_4
-/list-for-user.html.tmpl/1.6.2.1/Thu May 23 08:14:16 2002//TBUGZILLA-2_16_4
+/delete-all.html.tmpl/1.4/Mon May  6 19:17:09 2002//TBUGZILLA-2_16_5
+/list-for-bug.html.tmpl/1.4.2.3/Sat Jun 22 10:35:09 2002//TBUGZILLA-2_16_5
+/list-for-user.html.tmpl/1.6.2.1/Thu May 23 08:14:16 2002//TBUGZILLA-2_16_5
 D
diff --git a/template/en/default/bug/votes/CVS/Tag b/template/en/default/bug/votes/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/bug/votes/CVS/Tag
+++ b/template/en/default/bug/votes/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/global/CVS/Entries b/template/en/default/global/CVS/Entries
index adc63265e..ad3528219 100644
--- a/template/en/default/global/CVS/Entries
+++ b/template/en/default/global/CVS/Entries
@@ -1,11 +1,11 @@
-/banner.html.tmpl/1.1.2.1/Tue Jun  4 05:56:34 2002//TBUGZILLA-2_16_4
-/choose-product.html.tmpl/1.6.2.1/Thu Apr 24 20:45:26 2003//TBUGZILLA-2_16_4
-/code-error.html.tmpl/1.4.2.1/Thu Apr 24 20:45:26 2003//TBUGZILLA-2_16_4
-/footer.html.tmpl/1.6/Tue May  7 21:56:40 2002//TBUGZILLA-2_16_4
-/header.html.tmpl/1.5.2.7/Thu Jul  4 11:21:00 2002//TBUGZILLA-2_16_4
-/hidden-fields.html.tmpl/1.2.2.4/Thu Apr 24 20:45:26 2003//TBUGZILLA-2_16_4
-/message.html.tmpl/1.3.2.1/Thu Apr 24 20:45:26 2003//TBUGZILLA-2_16_4
-/select-menu.html.tmpl/1.1.2.1/Mon Jun  3 22:34:12 2002//TBUGZILLA-2_16_4
-/useful-links.html.tmpl/1.2.2.6/Wed Jul 10 00:06:00 2002//TBUGZILLA-2_16_4
-/user-error.html.tmpl/1.4/Mon May  6 19:17:12 2002//TBUGZILLA-2_16_4
+/banner.html.tmpl/1.1.2.1/Tue Jun  4 05:56:34 2002//TBUGZILLA-2_16_5
+/choose-product.html.tmpl/1.6.2.1/Thu Apr 24 20:45:26 2003//TBUGZILLA-2_16_5
+/code-error.html.tmpl/1.4.2.1/Thu Apr 24 20:45:26 2003//TBUGZILLA-2_16_5
+/footer.html.tmpl/1.6/Tue May  7 21:56:40 2002//TBUGZILLA-2_16_5
+/header.html.tmpl/1.5.2.7/Thu Jul  4 11:21:00 2002//TBUGZILLA-2_16_5
+/hidden-fields.html.tmpl/1.2.2.4/Thu Apr 24 20:45:26 2003//TBUGZILLA-2_16_5
+/message.html.tmpl/1.3.2.1/Thu Apr 24 20:45:26 2003//TBUGZILLA-2_16_5
+/select-menu.html.tmpl/1.1.2.1/Mon Jun  3 22:34:12 2002//TBUGZILLA-2_16_5
+/useful-links.html.tmpl/1.2.2.6/Wed Jul 10 00:06:00 2002//TBUGZILLA-2_16_5
+/user-error.html.tmpl/1.4/Mon May  6 19:17:12 2002//TBUGZILLA-2_16_5
 D
diff --git a/template/en/default/global/CVS/Tag b/template/en/default/global/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/global/CVS/Tag
+++ b/template/en/default/global/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/list/CVS/Entries b/template/en/default/list/CVS/Entries
index 927dd18fd..17367dd41 100644
--- a/template/en/default/list/CVS/Entries
+++ b/template/en/default/list/CVS/Entries
@@ -1,9 +1,9 @@
-/change-columns.html.tmpl/1.3.2.1/Thu Apr 24 20:45:29 2003//TBUGZILLA-2_16_4
-/edit-multiple.html.tmpl/1.4.2.2/Sun Jun 30 04:24:57 2002//TBUGZILLA-2_16_4
-/list-rdf.rdf.tmpl/1.1/Thu Apr 18 18:56:55 2002//TBUGZILLA-2_16_4
-/list-simple.html.tmpl/1.4.2.1/Thu May 23 08:14:22 2002//TBUGZILLA-2_16_4
-/list.html.tmpl/1.3.2.3/Thu Apr 24 20:45:29 2003//TBUGZILLA-2_16_4
-/quips.html.tmpl/1.4.2.2/Tue Nov 26 20:32:00 2002//TBUGZILLA-2_16_4
-/server-push.html.tmpl/1.2/Mon May  6 19:17:19 2002//TBUGZILLA-2_16_4
-/table.html.tmpl/1.4.2.3/Thu Apr 24 20:45:30 2003//TBUGZILLA-2_16_4
+/change-columns.html.tmpl/1.3.2.1/Thu Apr 24 20:45:29 2003//TBUGZILLA-2_16_5
+/edit-multiple.html.tmpl/1.4.2.3/Tue Feb 17 14:01:35 2004//TBUGZILLA-2_16_5
+/list-rdf.rdf.tmpl/1.1/Thu Apr 18 18:56:55 2002//TBUGZILLA-2_16_5
+/list-simple.html.tmpl/1.4.2.1/Thu May 23 08:14:22 2002//TBUGZILLA-2_16_5
+/list.html.tmpl/1.3.2.3/Thu Apr 24 20:45:29 2003//TBUGZILLA-2_16_5
+/quips.html.tmpl/1.4.2.2/Tue Nov 26 20:32:00 2002//TBUGZILLA-2_16_5
+/server-push.html.tmpl/1.2/Mon May  6 19:17:19 2002//TBUGZILLA-2_16_5
+/table.html.tmpl/1.4.2.3/Thu Apr 24 20:45:30 2003//TBUGZILLA-2_16_5
 D
diff --git a/template/en/default/list/CVS/Tag b/template/en/default/list/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/list/CVS/Tag
+++ b/template/en/default/list/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/list/edit-multiple.html.tmpl b/template/en/default/list/edit-multiple.html.tmpl
index c67154347..8286a3f52 100644
--- a/template/en/default/list/edit-multiple.html.tmpl
+++ b/template/en/default/list/edit-multiple.html.tmpl
@@ -170,7 +170,7 @@
   <b>Groupset:</b><br>
   <table border="1">
     <tr>
-      <th>Don&apos;t<br>change<br>this group<br>restriction</td>
+      <th>Don't<br>change<br>this group<br>restriction</td>
       <th>Remove<br>bugs<br>from this<br>group</td>
       <th>Add<br>bugs<br>to this<br>group</td>
       <th>Group Name:</td>
diff --git a/template/en/default/reports/CVS/Entries b/template/en/default/reports/CVS/Entries
index 586c0fb2e..10a8439b3 100644
--- a/template/en/default/reports/CVS/Entries
+++ b/template/en/default/reports/CVS/Entries
@@ -1,6 +1,6 @@
-/components.html.tmpl/1.4.2.2/Thu May 30 19:38:22 2002//TBUGZILLA-2_16_4
-/duplicates-simple.html.tmpl/1.1/Fri Apr 26 23:18:53 2002//TBUGZILLA-2_16_4
-/duplicates-table.html.tmpl/1.1.2.2/Thu Jun 13 22:22:32 2002//TBUGZILLA-2_16_4
-/duplicates.html.tmpl/1.4.2.3/Fri Oct 10 22:20:24 2003//TBUGZILLA-2_16_4
-/keywords.html.tmpl/1.4/Wed Apr 24 18:27:43 2002//TBUGZILLA-2_16_4
+/components.html.tmpl/1.4.2.2/Thu May 30 19:38:22 2002//TBUGZILLA-2_16_5
+/duplicates-simple.html.tmpl/1.1/Fri Apr 26 23:18:53 2002//TBUGZILLA-2_16_5
+/duplicates-table.html.tmpl/1.1.2.2/Thu Jun 13 22:22:32 2002//TBUGZILLA-2_16_5
+/duplicates.html.tmpl/1.4.2.3/Fri Oct 10 22:20:24 2003//TBUGZILLA-2_16_5
+/keywords.html.tmpl/1.4/Wed Apr 24 18:27:43 2002//TBUGZILLA-2_16_5
 D
diff --git a/template/en/default/reports/CVS/Tag b/template/en/default/reports/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/reports/CVS/Tag
+++ b/template/en/default/reports/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/template/en/default/search/CVS/Entries b/template/en/default/search/CVS/Entries
index 21e19651a..a9a793077 100644
--- a/template/en/default/search/CVS/Entries
+++ b/template/en/default/search/CVS/Entries
@@ -1,5 +1,5 @@
-/boolean-charts.html.tmpl/1.1/Fri Apr 26 20:03:08 2002//TBUGZILLA-2_16_4
-/form.html.tmpl/1.2.2.5/Thu Jul 11 19:28:05 2002//TBUGZILLA-2_16_4
-/knob.html.tmpl/1.2.2.2/Sat Jun 22 23:56:00 2002//TBUGZILLA-2_16_4
-/search.html.tmpl/1.8.2.1/Tue Jun  4 22:56:40 2002//TBUGZILLA-2_16_4
+/boolean-charts.html.tmpl/1.1/Fri Apr 26 20:03:08 2002//TBUGZILLA-2_16_5
+/form.html.tmpl/1.2.2.5/Thu Jul 11 19:28:05 2002//TBUGZILLA-2_16_5
+/knob.html.tmpl/1.2.2.2/Sat Jun 22 23:56:00 2002//TBUGZILLA-2_16_5
+/search.html.tmpl/1.8.2.1/Tue Jun  4 22:56:40 2002//TBUGZILLA-2_16_5
 D
diff --git a/template/en/default/search/CVS/Tag b/template/en/default/search/CVS/Tag
index c9f26db07..b05d167ac 100644
--- a/template/en/default/search/CVS/Tag
+++ b/template/en/default/search/CVS/Tag
@@ -1 +1 @@
-NBUGZILLA-2_16_4
+NBUGZILLA-2_16_5
diff --git a/userprefs.cgi b/userprefs.cgi
index 3a6a58463..d105ede52 100755
--- a/userprefs.cgi
+++ b/userprefs.cgi
@@ -108,15 +108,11 @@ sub SaveAccount {
 
         if ($pwd1 ne "" || $pwd2 ne "")
         {
-            if ($pwd1 ne $pwd2) {
-                DisplayError("The two passwords you entered did not match.");
-                exit;
-            }
             if ($::FORM{'new_password1'} eq '') {
                 DisplayError("You must enter a new password.");
                 exit;
             }
-            my $passworderror = ValidatePassword($pwd1);
+            my $passworderror = ValidatePassword($pwd1, $pwd2);
             (DisplayError($passworderror) && exit) if $passworderror;
         
             my $cryptedpassword = SqlQuote(Crypt($pwd1));
-- 
GitLab