Title: [92693] trunk/Source/WebCore
Revision
92693
Author
stevebl...@google.com
Date
2011-08-09 11:36:47 -0700 (Tue, 09 Aug 2011)

Log Message

JavaString is not needed by V8
https://bugs.webkit.org/show_bug.cgi?id=65909

Removes the JavaString wrapper class, moves the JSC implementation
to JavaStringJSC.h and removes the V8 implementation.

Reviewed by Alexey Proskuryakov.

No new tests, refactoring only.

* GNUmakefile.list.am:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* bridge/jni/JavaString.h: Removed.
* bridge/jni/jni_jsobject.mm:
* bridge/jni/jsc/JavaFieldJSC.h:
* bridge/jni/jsc/JavaInstanceJSC.cpp:
* bridge/jni/jsc/JavaMethodJSC.h:
* bridge/jni/jsc/JavaStringJSC.h:
(JSC::Bindings::JavaString::JavaString):
(JSC::Bindings::JavaString::~JavaString):
(JSC::Bindings::JavaString::init):
* bridge/jni/v8/JavaStringV8.h: Removed.

Modified Paths

Removed Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (92692 => 92693)


--- trunk/Source/WebCore/ChangeLog	2011-08-09 18:18:36 UTC (rev 92692)
+++ trunk/Source/WebCore/ChangeLog	2011-08-09 18:36:47 UTC (rev 92693)
@@ -1,3 +1,29 @@
+2011-08-09  Steve Block  <stevebl...@google.com>
+
+        JavaString is not needed by V8
+        https://bugs.webkit.org/show_bug.cgi?id=65909
+
+        Removes the JavaString wrapper class, moves the JSC implementation
+        to JavaStringJSC.h and removes the V8 implementation.
+
+        Reviewed by Alexey Proskuryakov.
+
+        No new tests, refactoring only.
+
+        * GNUmakefile.list.am:
+        * WebCore.gypi:
+        * WebCore.xcodeproj/project.pbxproj:
+        * bridge/jni/JavaString.h: Removed.
+        * bridge/jni/jni_jsobject.mm:
+        * bridge/jni/jsc/JavaFieldJSC.h:
+        * bridge/jni/jsc/JavaInstanceJSC.cpp:
+        * bridge/jni/jsc/JavaMethodJSC.h:
+        * bridge/jni/jsc/JavaStringJSC.h:
+        (JSC::Bindings::JavaString::JavaString):
+        (JSC::Bindings::JavaString::~JavaString):
+        (JSC::Bindings::JavaString::init):
+        * bridge/jni/v8/JavaStringV8.h: Removed.
+
 2011-08-09  Abhishek Arya  <infe...@chromium.org>
 
         Regression(83075): Fix updateAlwaysCreateLineBoxes on information 

Modified: trunk/Source/WebCore/GNUmakefile.list.am (92692 => 92693)


--- trunk/Source/WebCore/GNUmakefile.list.am	2011-08-09 18:18:36 UTC (rev 92692)
+++ trunk/Source/WebCore/GNUmakefile.list.am	2011-08-09 18:36:47 UTC (rev 92693)
@@ -884,7 +884,6 @@
 	Source/WebCore/bridge/IdentifierRep.cpp \
 	Source/WebCore/bridge/IdentifierRep.h \
 	Source/WebCore/bridge/jni/JNIUtility.h \
-	Source/WebCore/bridge/jni/JavaString.h \
 	Source/WebCore/bridge/jni/JavaType.h \
 	Source/WebCore/bridge/jni/jni_jsobject.h \
 	Source/WebCore/bridge/jni/jsc/JavaArrayJSC.h \

Modified: trunk/Source/WebCore/WebCore.gypi (92692 => 92693)


--- trunk/Source/WebCore/WebCore.gypi	2011-08-09 18:18:36 UTC (rev 92692)
+++ trunk/Source/WebCore/WebCore.gypi	2011-08-09 18:36:47 UTC (rev 92693)
@@ -2232,7 +2232,6 @@
             'bridge/c/c_utility.cpp',
             'bridge/c/c_utility.h',
             'bridge/jni/JNIUtility.cpp',
-            'bridge/jni/JavaString.h',
             'bridge/jni/JavaType.h',
             'bridge/jni/JobjectWrapper.cpp',
             'bridge/jni/JobjectWrapper.h',
@@ -2261,7 +2260,6 @@
             'bridge/jni/v8/JavaMethodV8.h',
             'bridge/jni/v8/JavaNPObjectV8.cpp',
             'bridge/jni/v8/JavaNPObjectV8.h',
-            'bridge/jni/v8/JavaStringV8.h',
             'bridge/jni/v8/JavaValueV8.h',
             'bridge/jsc/BridgeJSC.cpp',
             'bridge/npruntime.cpp',

Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (92692 => 92693)


--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2011-08-09 18:18:36 UTC (rev 92692)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2011-08-09 18:36:47 UTC (rev 92693)
@@ -1503,7 +1503,6 @@
 		5913A24213D49EBA00F5B05C /* IdentifiersFactory.h in Headers */ = {isa = PBXBuildFile; fileRef = 5913A24013D49EBA00F5B05C /* IdentifiersFactory.h */; };
 		59309A1111F4AE5800250603 /* DeviceOrientationClientMock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 59309A1011F4AE5800250603 /* DeviceOrientationClientMock.cpp */; };
 		59309A1311F4AE6A00250603 /* DeviceOrientationClientMock.h in Headers */ = {isa = PBXBuildFile; fileRef = 59309A1211F4AE6A00250603 /* DeviceOrientationClientMock.h */; settings = {ATTRIBUTES = (Private, ); }; };
-		593D3EB1132532950057E7EE /* JavaString.h in Headers */ = {isa = PBXBuildFile; fileRef = 593D3EB0132532950057E7EE /* JavaString.h */; };
 		596950821321059900C3ED18 /* JobjectWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 596950811321059900C3ED18 /* JobjectWrapper.h */; };
 		59695084132105A500C3ED18 /* JobjectWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 59695083132105A500C3ED18 /* JobjectWrapper.cpp */; };
 		598365DD1355F557001B185D /* JSPositionCallback.h in Headers */ = {isa = PBXBuildFile; fileRef = 598365DC1355F53C001B185D /* JSPositionCallback.h */; };
@@ -8120,7 +8119,6 @@
 		59309A1211F4AE6A00250603 /* DeviceOrientationClientMock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DeviceOrientationClientMock.h; path = mock/DeviceOrientationClientMock.h; sourceTree = "<group>"; };
 		593AB6971355CD9200FC8211 /* PositionCallback.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PositionCallback.idl; sourceTree = "<group>"; };
 		593AB6991355CDAE00FC8211 /* PositionErrorCallback.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = PositionErrorCallback.idl; sourceTree = "<group>"; };
-		593D3EB0132532950057E7EE /* JavaString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JavaString.h; sourceTree = "<group>"; };
 		5958F1CB1343917C0080B31F /* XMLViewer.css */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.css; path = XMLViewer.css; sourceTree = "<group>"; };
 		5958F1CC1343917C0080B31F /* XMLViewer.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode._javascript_; path = XMLViewer.js; sourceTree = "<group>"; };
 		596950811321059900C3ED18 /* JobjectWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JobjectWrapper.h; sourceTree = "<group>"; };
@@ -13247,7 +13245,6 @@
 		1A569CCE0D7E2B82007C3983 /* jni */ = {
 			isa = PBXGroup;
 			children = (
-				593D3EB0132532950057E7EE /* JavaString.h */,
 				59B0EEA6132A6F2A004331C7 /* JavaType.h */,
 				1A569CD40D7E2B82007C3983 /* jni_jsobject.h */,
 				1A569CD30D7E2B82007C3983 /* jni_jsobject.mm */,
@@ -21755,7 +21752,6 @@
 				E16982681134680700894115 /* JavaRuntimeObject.h in Headers */,
 				FD31603612B0267600C1A359 /* _javascript_AudioNode.h in Headers */,
 				1C81BA0A0E97348300266E07 /* _javascript_CallFrame.h in Headers */,
-				593D3EB1132532950057E7EE /* JavaString.h in Headers */,
 				59BC393F11054A1300FD85DB /* JavaStringJSC.h in Headers */,
 				59B0EEA7132A6F2A004331C7 /* JavaType.h in Headers */,
 				1A569D040D7E2B82007C3983 /* jni_jsobject.h in Headers */,

Deleted: trunk/Source/WebCore/bridge/jni/JavaString.h (92692 => 92693)


--- trunk/Source/WebCore/bridge/jni/JavaString.h	2011-08-09 18:18:36 UTC (rev 92692)
+++ trunk/Source/WebCore/bridge/jni/JavaString.h	2011-08-09 18:36:47 UTC (rev 92693)
@@ -1,75 +0,0 @@
-/*
- * Copyright (C) 2003, 2004, 2005, 2007, 2009, 2010 Apple Inc. All rights reserved.
- * Copyright 2010, The Android Open Source Project
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef JavaString_h
-#define JavaString_h
-
-#if ENABLE(JAVA_BRIDGE)
-
-#include <wtf/text/WTFString.h>
-
-#if USE(JSC)
-#include "JavaStringJSC.h"
-#elif USE(V8)
-#include "JavaStringV8.h"
-#endif
-
-namespace JSC {
-
-namespace Bindings {
-
-class JavaString {
-public:
-    JavaString()
-    {
-        m_impl.init();
-    }
-
-    JavaString(JNIEnv* e, jstring s)
-    {
-        m_impl.init(e, s);
-    }
-
-    JavaString(jstring s)
-    {
-        m_impl.init(getJNIEnv(), s);
-    }
-
-    const char* utf8() const { return m_impl.utf8(); }
-    int length() const { return m_impl.length(); }
-    StringImpl* impl() const { return m_impl.impl(); }
-
-private:
-    JavaStringImpl m_impl;
-};
-
-} // namespace Bindings
-
-} // namespace JSC
-
-#endif // ENABLE(JAVA_BRIDGE)
-
-#endif // JavaString_h

Modified: trunk/Source/WebCore/bridge/jni/jni_jsobject.mm (92692 => 92693)


--- trunk/Source/WebCore/bridge/jni/jni_jsobject.mm	2011-08-09 18:18:36 UTC (rev 92692)
+++ trunk/Source/WebCore/bridge/jni/jni_jsobject.mm	2011-08-09 18:36:47 UTC (rev 92693)
@@ -33,7 +33,7 @@
 #include "JNIUtilityPrivate.h"
 #include "JSDOMBinding.h"
 #include "JavaRuntimeObject.h"
-#include "JavaString.h"
+#include "JavaStringJSC.h"
 #include "Logging.h"
 #include "ScriptController.h"
 #include "StringSourceProvider.h"

Modified: trunk/Source/WebCore/bridge/jni/jsc/JavaFieldJSC.h (92692 => 92693)


--- trunk/Source/WebCore/bridge/jni/jsc/JavaFieldJSC.h	2011-08-09 18:18:36 UTC (rev 92692)
+++ trunk/Source/WebCore/bridge/jni/jsc/JavaFieldJSC.h	2011-08-09 18:36:47 UTC (rev 92693)
@@ -32,7 +32,7 @@
 #include "BridgeJSC.h"
 #include "JNIUtility.h"
 #include "JavaMethodJSC.h"
-#include "JavaString.h"
+#include "JavaStringJSC.h"
 #include "JobjectWrapper.h"
 
 namespace JSC {

Modified: trunk/Source/WebCore/bridge/jni/jsc/JavaInstanceJSC.cpp (92692 => 92693)


--- trunk/Source/WebCore/bridge/jni/jsc/JavaInstanceJSC.cpp	2011-08-09 18:18:36 UTC (rev 92692)
+++ trunk/Source/WebCore/bridge/jni/jsc/JavaInstanceJSC.cpp	2011-08-09 18:36:47 UTC (rev 92693)
@@ -34,7 +34,7 @@
 #include "JavaArrayJSC.h"
 #include "JavaClassJSC.h"
 #include "JavaMethodJSC.h"
-#include "JavaString.h"
+#include "JavaStringJSC.h"
 #include "Logging.h"
 #include "jni_jsobject.h"
 #include "runtime_method.h"

Modified: trunk/Source/WebCore/bridge/jni/jsc/JavaMethodJSC.h (92692 => 92693)


--- trunk/Source/WebCore/bridge/jni/jsc/JavaMethodJSC.h	2011-08-09 18:18:36 UTC (rev 92692)
+++ trunk/Source/WebCore/bridge/jni/jsc/JavaMethodJSC.h	2011-08-09 18:36:47 UTC (rev 92693)
@@ -30,7 +30,7 @@
 #if ENABLE(JAVA_BRIDGE)
 
 #include "Bridge.h"
-#include "JavaString.h"
+#include "JavaStringJSC.h"
 #include "JavaType.h"
 
 namespace JSC {

Modified: trunk/Source/WebCore/bridge/jni/jsc/JavaStringJSC.h (92692 => 92693)


--- trunk/Source/WebCore/bridge/jni/jsc/JavaStringJSC.h	2011-08-09 18:18:36 UTC (rev 92692)
+++ trunk/Source/WebCore/bridge/jni/jsc/JavaStringJSC.h	2011-08-09 18:36:47 UTC (rev 92693)
@@ -1,5 +1,6 @@
 /*
- * Copyright (C) 2010 Apple Computer, Inc.  All rights reserved.
+ * Copyright (C) 2003, 2004, 2005, 2007, 2009, 2010 Apple Inc. All rights reserved.
+ * Copyright 2010, The Android Open Source Project
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -37,29 +38,28 @@
 
 namespace Bindings {
 
-class JavaStringImpl {
+class JavaString {
 public:
-    ~JavaStringImpl()
+    JavaString(JNIEnv* e, jstring s)
     {
-        JSLock lock(SilenceAssertionsOnly);
-        m_impl = 0;
+        init(e, s);
     }
 
-    void init()
+    JavaString(jstring s)
     {
+        init(getJNIEnv(), s);
+    }
+
+    JavaString()
+    {
         JSLock lock(SilenceAssertionsOnly);
         m_impl = UString().impl();
     }
 
-    void init(JNIEnv* e, jstring s)
+    ~JavaString()
     {
-        int size = e->GetStringLength(s);
-        const jchar* uc = getUCharactersFromJStringInEnv(e, s);
-        {
-            JSLock lock(SilenceAssertionsOnly);
-            m_impl = UString(reinterpret_cast<const UChar*>(uc), size).impl();
-        }
-        releaseUCharactersForJStringInEnv(e, s, uc);
+        JSLock lock(SilenceAssertionsOnly);
+        m_impl = 0;
     }
 
     const char* utf8() const
@@ -74,6 +74,17 @@
     StringImpl* impl() const { return m_impl.get(); }
 
 private:
+    void init(JNIEnv* e, jstring s)
+    {
+        int size = e->GetStringLength(s);
+        const jchar* uc = getUCharactersFromJStringInEnv(e, s);
+        {
+            JSLock lock(SilenceAssertionsOnly);
+            m_impl = UString(reinterpret_cast<const UChar*>(uc), size).impl();
+        }
+        releaseUCharactersForJStringInEnv(e, s, uc);
+    }
+
     RefPtr<StringImpl> m_impl;
     mutable CString m_utf8String;
 };

Deleted: trunk/Source/WebCore/bridge/jni/v8/JavaStringV8.h (92692 => 92693)


--- trunk/Source/WebCore/bridge/jni/v8/JavaStringV8.h	2011-08-09 18:18:36 UTC (rev 92692)
+++ trunk/Source/WebCore/bridge/jni/v8/JavaStringV8.h	2011-08-09 18:36:47 UTC (rev 92693)
@@ -1,69 +0,0 @@
-/*
- * Copyright 2010, The Android Open Source Project
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef JavaStringV8_h
-#define JavaStringV8_h
-
-#include "JNIUtility.h"
-
-#include <wtf/text/CString.h>
-#include <wtf/text/WTFString.h>
-
-
-namespace JSC {
-
-namespace Bindings {
-
-class JavaStringImpl {
-public:
-    void init() {}
-
-    void init(JNIEnv* env, jstring string)
-    {
-        int size = env->GetStringLength(string);
-        const jchar* jChars = getUCharactersFromJStringInEnv(env, string);
-        m_impl = StringImpl::create(jChars, size);
-        releaseUCharactersForJStringInEnv(env, string, jChars);
-    }
-
-    const char* utf8() const
-    {
-        if (!m_utf8String.data())
-            m_utf8String = String(m_impl).utf8();
-        return m_utf8String.data();
-    }
-    int length() const { return m_utf8String.length(); }
-    StringImpl* impl() const { return m_impl.get(); }
-
-private:
-    RefPtr<StringImpl> m_impl;
-    mutable CString m_utf8String;
-};
-
-} // namespace Bindings
-
-} // namespace JSC
-
-#endif // JavaStringV8_h
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to