Title: [98903] trunk/Source/_javascript_Core
Revision
98903
Author
[email protected]
Date
2011-10-31 16:18:49 -0700 (Mon, 31 Oct 2011)

Log Message

WTF::StringImpl::create(const char*, unsigned) calls itself
https://bugs.webkit.org/show_bug.cgi?id=71206

The original implementation just calls itself, causing infinite recursion.
Cast the first parameter to const LChar* to fix that.

Patch by Xianzhu Wang <[email protected]> on 2011-10-31
Reviewed by Ryosuke Niwa.

* wtf/text/StringImpl.h:
(WTF::StringImpl::create):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (98902 => 98903)


--- trunk/Source/_javascript_Core/ChangeLog	2011-10-31 23:18:13 UTC (rev 98902)
+++ trunk/Source/_javascript_Core/ChangeLog	2011-10-31 23:18:49 UTC (rev 98903)
@@ -1,3 +1,16 @@
+2011-10-31  Xianzhu Wang  <[email protected]>
+
+        WTF::StringImpl::create(const char*, unsigned) calls itself
+        https://bugs.webkit.org/show_bug.cgi?id=71206
+
+        The original implementation just calls itself, causing infinite recursion.
+        Cast the first parameter to const LChar* to fix that.
+
+        Reviewed by Ryosuke Niwa.
+
+        * wtf/text/StringImpl.h:
+        (WTF::StringImpl::create):
+
 2011-10-31  Andy Wingo  <[email protected]>
 
         Fix DFG JIT compilation on Linux targets.

Modified: trunk/Source/_javascript_Core/wtf/text/StringImpl.h (98902 => 98903)


--- trunk/Source/_javascript_Core/wtf/text/StringImpl.h	2011-10-31 23:18:13 UTC (rev 98902)
+++ trunk/Source/_javascript_Core/wtf/text/StringImpl.h	2011-10-31 23:18:49 UTC (rev 98903)
@@ -182,9 +182,9 @@
 
     static PassRefPtr<StringImpl> create(const UChar*, unsigned length);
     static PassRefPtr<StringImpl> create(const LChar*, unsigned length);
-    ALWAYS_INLINE static PassRefPtr<StringImpl> create(const char* s, unsigned length) { return create(s, length); };
+    ALWAYS_INLINE static PassRefPtr<StringImpl> create(const char* s, unsigned length) { return create(reinterpret_cast<const LChar*>(s), length); }
     static PassRefPtr<StringImpl> create(const LChar*);
-    ALWAYS_INLINE static PassRefPtr<StringImpl> create(const char* s) { return create(reinterpret_cast<const LChar*>(s)); };
+    ALWAYS_INLINE static PassRefPtr<StringImpl> create(const char* s) { return create(reinterpret_cast<const LChar*>(s)); }
 
     static ALWAYS_INLINE PassRefPtr<StringImpl> create8(PassRefPtr<StringImpl> rep, unsigned offset, unsigned length)
     {
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to