Title: [128303] trunk/Source/WebCore
- Revision
- 128303
- Author
- par...@webkit.org
- Date
- 2012-09-12 06:51:02 -0700 (Wed, 12 Sep 2012)
Log Message
Remove last call to numberToString() from WebCore code
https://bugs.webkit.org/show_bug.cgi?id=96484
Reviewed by Kentaro Hara.
Replace WTF::numberToString() with String::numberToStringECMAScript() to remove duplicated
code. Using the new function allows us to improve and/or remove numberToString() without
changing all caller sides later. Also remove an unneeded strlen() in the touched code.
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::setNamedHiddenReference):
* bindings/v8/V8DependentRetained.h:
(WebCore::V8DependentRetained::createPropertyName):
* bindings/v8/V8HiddenPropertyName.cpp:
(WebCore::V8HiddenPropertyName::hiddenReferenceName):
* bindings/v8/V8HiddenPropertyName.h:
(V8HiddenPropertyName):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (128302 => 128303)
--- trunk/Source/WebCore/ChangeLog 2012-09-12 13:17:15 UTC (rev 128302)
+++ trunk/Source/WebCore/ChangeLog 2012-09-12 13:51:02 UTC (rev 128303)
@@ -1,3 +1,23 @@
+2012-09-12 Patrick Gansterer <par...@webkit.org>
+
+ Remove last call to numberToString() from WebCore code
+ https://bugs.webkit.org/show_bug.cgi?id=96484
+
+ Reviewed by Kentaro Hara.
+
+ Replace WTF::numberToString() with String::numberToStringECMAScript() to remove duplicated
+ code. Using the new function allows us to improve and/or remove numberToString() without
+ changing all caller sides later. Also remove an unneeded strlen() in the touched code.
+
+ * bindings/v8/V8DOMWrapper.cpp:
+ (WebCore::V8DOMWrapper::setNamedHiddenReference):
+ * bindings/v8/V8DependentRetained.h:
+ (WebCore::V8DependentRetained::createPropertyName):
+ * bindings/v8/V8HiddenPropertyName.cpp:
+ (WebCore::V8HiddenPropertyName::hiddenReferenceName):
+ * bindings/v8/V8HiddenPropertyName.h:
+ (V8HiddenPropertyName):
+
2012-09-12 Sheriff Bot <webkit.review....@gmail.com>
Unreviewed, rolling out r128221.
Modified: trunk/Source/WebCore/bindings/v8/V8DOMWrapper.cpp (128302 => 128303)
--- trunk/Source/WebCore/bindings/v8/V8DOMWrapper.cpp 2012-09-12 13:17:15 UTC (rev 128302)
+++ trunk/Source/WebCore/bindings/v8/V8DOMWrapper.cpp 2012-09-12 13:51:02 UTC (rev 128303)
@@ -118,7 +118,8 @@
void V8DOMWrapper::setNamedHiddenReference(v8::Handle<v8::Object> parent, const char* name, v8::Handle<v8::Value> child)
{
- parent->SetHiddenValue(V8HiddenPropertyName::hiddenReferenceName(name), child);
+ ASSERT(name);
+ parent->SetHiddenValue(V8HiddenPropertyName::hiddenReferenceName(name, strlen(name)), child);
}
WrapperTypeInfo* V8DOMWrapper::domWrapperType(v8::Handle<v8::Object> object)
Modified: trunk/Source/WebCore/bindings/v8/V8DependentRetained.h (128302 => 128303)
--- trunk/Source/WebCore/bindings/v8/V8DependentRetained.h 2012-09-12 13:17:15 UTC (rev 128302)
+++ trunk/Source/WebCore/bindings/v8/V8DependentRetained.h 2012-09-12 13:51:02 UTC (rev 128303)
@@ -76,13 +76,10 @@
private:
static v8::Handle<v8::String> createPropertyName()
{
- static const char* prefix = "V8DependentRetained";
- NumberToStringBuffer buffer;
- Vector<char, 64> name;
- const char* id = numberToString(V8PerIsolateData::current()->nextDependentRetainedId(), buffer);
- name.append(prefix, sizeof(prefix) - 1);
- name.append(id, strlen(id) + 1);
- return V8HiddenPropertyName::hiddenReferenceName(name.data(), NewString);
+ StringBuilder name;
+ name.appendLiteral("V8DependentRetained");
+ name.append(String::numberToStringECMAScript(V8PerIsolateData::current()->nextDependentRetainedId()));
+ return V8HiddenPropertyName::hiddenReferenceName(reinterpret_cast<const char*>(name.characters8()), name.length(), NewString);
}
static void ownerWeakCallback(v8::Persistent<v8::Value> object, void* parameter)
Modified: trunk/Source/WebCore/bindings/v8/V8HiddenPropertyName.cpp (128302 => 128303)
--- trunk/Source/WebCore/bindings/v8/V8HiddenPropertyName.cpp 2012-09-12 13:17:15 UTC (rev 128302)
+++ trunk/Source/WebCore/bindings/v8/V8HiddenPropertyName.cpp 2012-09-12 13:51:02 UTC (rev 128303)
@@ -55,12 +55,12 @@
V8_HIDDEN_PROPERTIES(V8_DEFINE_HIDDEN_PROPERTY);
-v8::Handle<v8::String> V8HiddenPropertyName::hiddenReferenceName(const char* name, V8HiddenPropertyCreationType type)
+v8::Handle<v8::String> V8HiddenPropertyName::hiddenReferenceName(const char* name, unsigned length, V8HiddenPropertyCreationType type)
{
- ASSERT(name && strlen(name));
+ ASSERT(length);
Vector<char, 64> prefixedName;
prefixedName.append(V8_HIDDEN_PROPERTY_PREFIX, sizeof(V8_HIDDEN_PROPERTY_PREFIX) - 1);
- prefixedName.append(name, strlen(name));
+ prefixedName.append(name, length);
switch (type) {
case NewSymbol:
return v8::String::NewSymbol(prefixedName.data(), static_cast<int>(prefixedName.size()));
Modified: trunk/Source/WebCore/bindings/v8/V8HiddenPropertyName.h (128302 => 128303)
--- trunk/Source/WebCore/bindings/v8/V8HiddenPropertyName.h 2012-09-12 13:17:15 UTC (rev 128302)
+++ trunk/Source/WebCore/bindings/v8/V8HiddenPropertyName.h 2012-09-12 13:51:02 UTC (rev 128303)
@@ -60,7 +60,7 @@
V8_HIDDEN_PROPERTIES(V8_DECLARE_PROPERTY);
#undef V8_DECLARE_PROPERTY
- static v8::Handle<v8::String> hiddenReferenceName(const char*, V8HiddenPropertyCreationType = NewSymbol);
+ static v8::Handle<v8::String> hiddenReferenceName(const char*, unsigned, V8HiddenPropertyCreationType = NewSymbol);
private:
static v8::Persistent<v8::String> createString(const char* key);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes