From 00e7ca4f6ce3fdc83f2e6ac826bbe608ca3ec707 Mon Sep 17 00:00:00 2001
From: fvogel <fvogelnew1@free.fr>
Date: Sun, 8 Feb 2015 19:11:43 +0000
Subject: Stop panic (Bad tag priority being toggled on) - Bug [382da038c9]

---
 generic/tkTextBTree.c | 14 --------------
 tests/textBTree.test  | 10 ++++++++++
 2 files changed, 10 insertions(+), 14 deletions(-)

diff --git a/generic/tkTextBTree.c b/generic/tkTextBTree.c
index 92164fc..36f0ef3 100644
--- a/generic/tkTextBTree.c
+++ b/generic/tkTextBTree.c
@@ -3615,20 +3615,6 @@ TkTextIsElided(
     infoPtr->elidePriority = -1;
     for (i = infoPtr->numTags-1; i >=0; i--) {
 	if (infoPtr->tagCnts[i] & 1) {
-	    /*
-	     * Who would make the selection elided?
-	     */
-
-	    if ((tagPtr == textPtr->selTagPtr)
-		    && !(textPtr->flags & GOT_FOCUS)
-		    && (textPtr->inactiveSelBorder == NULL
-#ifdef MAC_OSX_TK
-		    /* Don't show inactive selection in disabled widgets. */
-		    || textPtr->state == TK_TEXT_STATE_DISABLED
-#endif
-	    )) {
-		continue;
-	    }
 	    infoPtr->elide = infoPtr->tagPtrs[i]->elide;
 
 	    /*
diff --git a/tests/textBTree.test b/tests/textBTree.test
index 3a89e55..1eb7c75 100644
--- a/tests/textBTree.test
+++ b/tests/textBTree.test
@@ -664,6 +664,16 @@ test btree-14.1 {check tag presence} {
     .t tag add x 141.3
     .t tag names 141.1
 } {x y z}
+test btree-14.2 {TkTextIsElided} {
+    .t delete 1.0 end
+    .t tag config hidden -elide 1
+    .t insert end "Line1\nLine2\nLine3\n"
+    .t tag add hidden 2.0 3.0
+    .t tag add sel 1.2 3.2
+    # next line used to panic because of "Bad tag priority being toggled on"
+    # (see bug [382da038c9])
+    .t index "2.0 - 1 display line linestart"
+} {1.0}
 
 test btree-15.1 {rebalance with empty node} {
     catch {destroy .t}
-- 
cgit v0.12