Code

gitweb.js: fix null object exception in initials calculation
authorStephen Boyd <bebarino@gmail.com>
Thu, 19 Nov 2009 19:44:46 +0000 (11:44 -0800)
committerJunio C Hamano <gitster@pobox.com>
Fri, 20 Nov 2009 07:02:30 +0000 (23:02 -0800)
Currently handleLine() assumes that a commit author name will always
start with a capital letter. It's possible that the author name is
user@example.com and therefore calling a match() on the name will fail
to return any matches. Subsequently joining these matches will cause an
exception. Fix by checking that we have a match before trying to join
the results into a set of initials for the author.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Acked-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
gitweb/gitweb.js

index 91b766e33641b7957fbaac4865458c28cd67e7ac..f1ba9ae52bcb5f998069e37810b0a87836fd205a 100644 (file)
@@ -566,8 +566,11 @@ function handleLine(commit, group) {
                        if (group.numlines >= 2) {
                                var fragment = document.createDocumentFragment();
                                var br   = document.createElement("br");
-                               var text = document.createTextNode(
-                                       commit.author.match(/\b([A-Z])\B/g).join(''));
+                               var match = commit.author.match(/\b([A-Z])\B/g);
+                               if (match) {
+                                       var text = document.createTextNode(
+                                                       match.join(''));
+                               }
                                if (br && text) {
                                        var elem = fragment || td_sha1;
                                        elem.appendChild(br);