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