diff options
author | Stephen Boyd <bebarino@gmail.com> | 2009-11-19 11:44:46 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2009-11-19 23:02:30 -0800 |
commit | e42a05f75c9ff5d10d0b8f6784fc244873818a99 (patch) | |
tree | 7d3dca9a525b76d5dae38dc4b7ac93261f6b5818 | |
parent | gitweb: Minify gitweb.js if JSMIN is defined (diff) | |
download | tgif-e42a05f75c9ff5d10d0b8f6784fc244873818a99.tar.xz |
gitweb.js: fix null object exception in initials calculation
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>
-rw-r--r-- | gitweb/gitweb.js | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gitweb/gitweb.js b/gitweb/gitweb.js index 91b766e336..f1ba9ae52b 100644 --- a/gitweb/gitweb.js +++ b/gitweb/gitweb.js @@ -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); |