Title: [113209] trunk/Source/_javascript_Core
Revision
113209
Author
gga...@apple.com
Date
2012-04-04 10:17:32 -0700 (Wed, 04 Apr 2012)

Log Message

[Qt] REGRESSION(r113141): All tests assert on 32 bit debug mode
https://bugs.webkit.org/show_bug.cgi?id=83139

Reviewed by Sam Weinig.

* heap/PassWeak.h:
(JSC::::get): 32-bit JSValue treats JSValue(nullptr).asCell() as an error,
so work around that here. (Long-term, we should make 32-bit and 64-bit
agree on the right behavior.)

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (113208 => 113209)


--- trunk/Source/_javascript_Core/ChangeLog	2012-04-04 17:13:16 UTC (rev 113208)
+++ trunk/Source/_javascript_Core/ChangeLog	2012-04-04 17:17:32 UTC (rev 113209)
@@ -1,3 +1,15 @@
+2012-04-04  Geoffrey Garen  <gga...@apple.com>
+
+        [Qt] REGRESSION(r113141): All tests assert on 32 bit debug mode
+        https://bugs.webkit.org/show_bug.cgi?id=83139
+
+        Reviewed by Sam Weinig.
+
+        * heap/PassWeak.h:
+        (JSC::::get): 32-bit JSValue treats JSValue(nullptr).asCell() as an error,
+        so work around that here. (Long-term, we should make 32-bit and 64-bit
+        agree on the right behavior.)
+
 2012-04-03  Geoffrey Garen  <gga...@apple.com>
 
         Updated JSC expected test results to reflect recent bug fixes <disapproving look>.

Modified: trunk/Source/_javascript_Core/heap/PassWeak.h (113208 => 113209)


--- trunk/Source/_javascript_Core/heap/PassWeak.h	2012-04-04 17:13:16 UTC (rev 113208)
+++ trunk/Source/_javascript_Core/heap/PassWeak.h	2012-04-04 17:17:32 UTC (rev 113209)
@@ -105,7 +105,7 @@
 
 template<typename Base, typename T> inline typename WeakImplAccessor<Base, T>::GetType WeakImplAccessor<Base, T>::get() const
 {
-    if (!static_cast<const Base*>(this)->m_impl || static_cast<const Base*>(this)->m_impl->state() != WeakImpl::Live)
+    if (!static_cast<const Base*>(this)->m_impl || static_cast<const Base*>(this)->m_impl->state() != WeakImpl::Live || !static_cast<const Base*>(this)->m_impl->jsValue())
         return GetType();
     return jsCast<T*>(static_cast<const Base*>(this)->m_impl->jsValue().asCell());
 }
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to