From dda29feda14f76708bfd555b947d1c2006594422 Mon Sep 17 00:00:00 2001 From: ccd0 Date: Sat, 7 May 2016 09:14:01 -0700 Subject: [PATCH] Fix shortening of filenames containing surrogate pairs. --- src/General/Build.coffee | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/General/Build.coffee b/src/General/Build.coffee index 5a18e8a19..0d86800aa 100644 --- a/src/General/Build.coffee +++ b/src/General/Build.coffee @@ -9,10 +9,9 @@ Build = {'&': '&', ''': "'", '"': '"', '<': '<', '>': '>', ',': ','}[c] shortFilename: (filename) -> - threshold = 30 ext = filename.match(/\.?[^\.]*$/)[0] - if filename.length - ext.length > threshold - "#{filename[...threshold - 5]}(...)#{ext}" + if filename.length - ext.length > 30 + "#{filename.match(/(?:[\uD800-\uDBFF][\uDC00-\uDFFF]|[^]){0,25}/)[0]}(...)#{ext}" else filename