summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2017-11-14 10:50:31 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2018-05-23 13:31:33 +0200
commit075942d7d6cbde6d48240d74dee453c5b5d67c10 (patch)
treeae43a6620c7b3d14a074f800d7cdef528f30ea11
parent61c4da42add6d1822234ea15c534ec0d2ebd4f26 (diff)
Fix assert with devtools
Qualified names are read from two different threads in debug mode, so the strings they return must be safe to access from the current thread. Change-Id: I071c057e4fd2c215b36a0897058499c678250668 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
-rw-r--r--chromium/third_party/blink/renderer/core/dom/qualified_name.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/chromium/third_party/blink/renderer/core/dom/qualified_name.cc b/chromium/third_party/blink/renderer/core/dom/qualified_name.cc
index 259d89d3c93..c588875ee3c 100644
--- a/chromium/third_party/blink/renderer/core/dom/qualified_name.cc
+++ b/chromium/third_party/blink/renderer/core/dom/qualified_name.cc
@@ -106,9 +106,13 @@ QualifiedName::QualifiedNameImpl::~QualifiedNameImpl() {
}
String QualifiedName::ToString() const {
- String local = LocalName();
+ const String& local = LocalName().GetString();
if (HasPrefix())
return Prefix().GetString() + ":" + local;
+#if !defined(NDEBUG)
+ if (!local.IsSafeToSendToAnotherThread())
+ return local.IsolatedCopy();
+#endif
return local;
}