From: Stephen Boyd Date: Wed, 25 Nov 2009 03:51:40 +0000 (-0800) Subject: gitweb.js: fix padLeftStr() and its usage X-Git-Url: https://git.ladys.computer/Gitweb/commitdiff_plain/67c4b962f002a1cec72af35bfbec00455d8a9b0e2c250d9c0717f9c29f371bfd?ds=sidebyside gitweb.js: fix padLeftStr() and its usage It seems that in Firefox-3.5 inserting   with javascript inserts the literal   instead of a space. Fix this by inserting the unicode representation for   instead. Also fix the off-by-one error in the padding calculation that was causing one less space to be inserted than was requested by the caller. Signed-off-by: Stephen Boyd Cc: Jakub Narebski Signed-off-by: Junio C Hamano --- diff --git a/gitweb.js b/gitweb.js index ff2d533..0c0b6a6 100644 --- a/gitweb.js +++ b/gitweb.js @@ -64,19 +64,19 @@ function fixLinks() { /** * pad number N with nonbreakable spaces on the left, to WIDTH characters - * example: padLeftStr(12, 3, ' ') == ' 12' - * (' ' is nonbreakable space) + * example: padLeftStr(12, 3, '\u00A0') == '\u00A012' + * ('\u00A0' is nonbreakable space) * * @param {Number|String} input: number to pad * @param {Number} width: visible width of output - * @param {String} str: string to prefix to string, e.g. ' ' + * @param {String} str: string to prefix to string, e.g. '\u00A0' * @returns {String} INPUT prefixed with (WIDTH - INPUT.length) x STR */ function padLeftStr(input, width, str) { var prefix = ''; width -= input.toString().length; - while (width > 1) { + while (width > 0) { prefix += str; width--; } @@ -192,7 +192,7 @@ function updateProgressInfo() { if (div_progress_info) { div_progress_info.firstChild.data = blamedLines + ' / ' + totalLines + - ' (' + padLeftStr(percentage, 3, ' ') + '%)'; + ' (' + padLeftStr(percentage, 3, '\u00A0') + '%)'; } if (div_progress_bar) {