From aec9e75ecb98fee850cf0f39363cdaadce4a957c Mon Sep 17 00:00:00 2001 From: Nathan Sobo Date: Sun, 26 Jan 2014 15:00:58 -0700 Subject: [PATCH] Send more info on errors converting buffer positions to screen positions We've gotten one rogue error but I have no idea how to reproduce it. This will tell us if soft wrap is enabled and if any folds are present so hopefully we can start narrowing these down. --- src/display-buffer.coffee | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/display-buffer.coffee b/src/display-buffer.coffee index 2479101d7..3c835863b 100644 --- a/src/display-buffer.coffee +++ b/src/display-buffer.coffee @@ -297,8 +297,12 @@ class DisplayBuffer extends Model [startScreenRow, endScreenRow] = @rowMap.screenRowRangeForBufferRow(row) for screenRow in [startScreenRow...endScreenRow] unless screenLine = @screenLines[screenRow] - throw new Error("No screen line exists for screen row #{screenRow}, converted from buffer position (#{row}, #{column})") - + throw new Error """ + No screen line exists for screen row #{screenRow}, converted from buffer position (#{row}, #{column}) + Soft wrap enabled: #{@getSoftWrap()} + Fold count: #{@findFoldMarkers().length} + Last buffer row: #{@getLastRow()} + """ maxBufferColumn = screenLine.getMaxBufferColumn() if screenLine.isSoftWrapped() and column > maxBufferColumn continue