[SCM] WebKit Debian packaging branch, webkit-1.3, updated. upstream/1.3.7-4207-g178b198
abarth at webkit.org
abarth at webkit.org
Mon Feb 21 00:06:20 UTC 2011
The following commit has been merged in the webkit-1.3 branch:
commit c568436291c6e2c2e9ed4acbfcc7b0d476880166
Author: abarth at webkit.org <abarth at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Fri Jan 28 02:20:47 2011 +0000
2011-01-27 Adam Barth <abarth at webkit.org>
Reviewed by Eric Seidel.
Add WTFString method to compare equality with Vector<UChar>
https://bugs.webkit.org/show_bug.cgi?id=53266
I'm planning to use this method in the new XSS filter implementation,
but it seems generally useful.
* wtf/text/StringImpl.h:
(WTF::equalIgnoringNullity):
* wtf/text/WTFString.h:
(WTF::equalIgnoringNullity):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76894 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/JavaScriptCore/ChangeLog b/Source/JavaScriptCore/ChangeLog
index 7007ec5..22e74c3 100644
--- a/Source/JavaScriptCore/ChangeLog
+++ b/Source/JavaScriptCore/ChangeLog
@@ -1,3 +1,18 @@
+2011-01-27 Adam Barth <abarth at webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Add WTFString method to compare equality with Vector<UChar>
+ https://bugs.webkit.org/show_bug.cgi?id=53266
+
+ I'm planning to use this method in the new XSS filter implementation,
+ but it seems generally useful.
+
+ * wtf/text/StringImpl.h:
+ (WTF::equalIgnoringNullity):
+ * wtf/text/WTFString.h:
+ (WTF::equalIgnoringNullity):
+
2011-01-27 Michael Saboff <msaboff at apple.com>
Potentially Unsafe HashSet of RuntimeObject* in RootObject definition
diff --git a/Source/JavaScriptCore/wtf/text/StringImpl.h b/Source/JavaScriptCore/wtf/text/StringImpl.h
index dc1dbb2..25411e1 100644
--- a/Source/JavaScriptCore/wtf/text/StringImpl.h
+++ b/Source/JavaScriptCore/wtf/text/StringImpl.h
@@ -354,6 +354,16 @@ inline bool equalIgnoringCase(const char* a, const UChar* b, unsigned length) {
bool equalIgnoringNullity(StringImpl*, StringImpl*);
+template<size_t inlineCapacity>
+bool equalIgnoringNullity(const Vector<UChar, inlineCapacity>& a, StringImpl* b)
+{
+ if (!b)
+ return !a.size();
+ if (a.size() != b->length())
+ return false;
+ return !memcmp(a.data(), b->characters(), b->length());
+}
+
int codePointCompare(const StringImpl*, const StringImpl*);
static inline bool isSpaceOrNewline(UChar c)
diff --git a/Source/JavaScriptCore/wtf/text/WTFString.h b/Source/JavaScriptCore/wtf/text/WTFString.h
index cb70b2d..0aee2ef 100644
--- a/Source/JavaScriptCore/wtf/text/WTFString.h
+++ b/Source/JavaScriptCore/wtf/text/WTFString.h
@@ -369,6 +369,9 @@ inline bool equalPossiblyIgnoringCase(const String& a, const String& b, bool ign
inline bool equalIgnoringNullity(const String& a, const String& b) { return equalIgnoringNullity(a.impl(), b.impl()); }
+template<size_t inlineCapacity>
+inline bool equalIgnoringNullity(const Vector<UChar, inlineCapacity>& a, const String& b) { return equalIgnoringNullity(a, b.impl()); }
+
inline bool operator!(const String& str) { return str.isNull(); }
inline void swap(String& a, String& b) { a.swap(b); }
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list