Firefox · DOM
CVE-2024-9936
Logic Error in DOM
Overview
High
Severity
—
CVSS
No
Exploited ITW
Fixed
Fix Status
Files Changed
dom/base/Selection.cpp
Patch
diff --git a/dom/base/Selection.cpp b/dom/base/Selection.cpp
index b080f98ebbc..0ad66b0882b 100644
--- a/dom/base/Selection.cpp
+++ b/dom/base/Selection.cpp
@@ -331,6 +331,13 @@ const nsTHashSet<const nsINode*>& SelectionNodeCache::MaybeCollect(
nsTHashSet<const nsINode*> fullySelectedNodes;
for (size_t rangeIndex = 0; rangeIndex < sel->RangeCount(); ++rangeIndex) {
AbstractRange* range = sel->GetAbstractRangeAt(rangeIndex);
+ MOZ_ASSERT(range);
+ if (range->Collapsed()) {
+ continue;
+ }
+ if (range->IsStaticRange() && !range->AsStaticRange()->IsValid()) {
+ continue;
+ }
const RangeBoundary& startRef = range->MayCrossShadowBoundaryStartRef();
const RangeBoundary& endRef = range->MayCrossShadowBoundaryEndRef();
Loading diff…
References
On This Page