From 5bce423b494dfda559f4cf455f4d5609f1bd90c7 Mon Sep 17 00:00:00 2001
From: Alexander Rose <alex.rose@rcsb.org>
Date: Mon, 30 Sep 2019 17:38:05 -0700
Subject: [PATCH] fully mark carbohydrate terminal links from
 StructureElement.Loci

---
 .../structure/visual/carbohydrate-terminal-link-cylinder.ts | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.ts b/src/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.ts
index 7fa16c99b..96180e57a 100644
--- a/src/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.ts
+++ b/src/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.ts
@@ -136,7 +136,6 @@ function getTerminalLinkLoci(pickingId: PickingId, structure: Structure, id: num
     return EmptyLoci
 }
 
-// TODO for each link when both of the link elements are in a StructureElement.Loci
 function eachTerminalLink(loci: Loci, structure: Structure, apply: (interval: Interval) => boolean) {
     const { getTerminalLinkIndex } = structure.carbohydrates
     let changed = false
@@ -161,6 +160,11 @@ function eachTerminalLink(loci: Loci, structure: Structure, apply: (interval: In
                     for (let i = 0, il = indices.length; i < il; ++i) {
                         if (apply(Interval.ofSingleton(indices[i]))) changed = true
                     }
+                } else {
+                    const indices = getTerminalLinkIndices(e.unit, e.unit.elements[v])
+                    for (let i = 0, il = indices.length; i < il; ++i) {
+                        if (apply(Interval.ofSingleton(indices[i]))) changed = true
+                    }
                 }
             })
         }
-- 
GitLab