From 638aaf75a16aa7ad95fd6a129f52f3890274b2e9 Mon Sep 17 00:00:00 2001 From: Steve Block Date: Wed, 26 Oct 2011 18:37:23 +0100 Subject: Fix debug build - FrameLoaderClientAndroid::dispatchDidClearWindowObjectInWorld() FrameLoader::url() was removed in http://trac.webkit.org/changeset/76872. We should use Document::url() instead. - ImageBufferAndroid See http://trac.webkit.org/changeset/77286 and http://trac.webkit.org/changeset/77398 - Add PluginDebug.cpp to build - ChromiumIncludes.h Don't build Chromium code without NDEBUG set - Frame.cpp We should not include WebKit files from WebCore. WebViewCore.h introduces problems due to the change to ChromiumIncludes.h and is not required here. Bug: 5448972 Change-Id: I82c5c95591bf01fb65179282d03f865df4255c89 --- Source/WebCore/Android.mk | 1 + Source/WebCore/page/Frame.cpp | 4 ---- .../WebCore/platform/graphics/android/ImageBufferAndroid.cpp | 4 ++-- Source/WebKit/android/WebCoreSupport/ChromiumIncludes.h | 10 ++++++++++ .../WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp | 2 +- 5 files changed, 14 insertions(+), 7 deletions(-) diff --git a/Source/WebCore/Android.mk b/Source/WebCore/Android.mk index a516f48..c88e94b 100644 --- a/Source/WebCore/Android.mk +++ b/Source/WebCore/Android.mk @@ -811,6 +811,7 @@ LOCAL_SRC_FILES := $(LOCAL_SRC_FILES) \ plugins/DOMPluginArray.cpp \ plugins/PluginData.cpp \ plugins/PluginDatabase.cpp \ + plugins/PluginDebug.cpp \ plugins/PluginMainThreadScheduler.cpp \ plugins/PluginPackage.cpp \ plugins/PluginStream.cpp \ diff --git a/Source/WebCore/page/Frame.cpp b/Source/WebCore/page/Frame.cpp index 8a1ad69..049f08b 100644 --- a/Source/WebCore/page/Frame.cpp +++ b/Source/WebCore/page/Frame.cpp @@ -113,10 +113,6 @@ #include "WMLNames.h" #endif -#if PLATFORM(ANDROID) -#include "WebViewCore.h" -#endif - using namespace std; namespace WebCore { diff --git a/Source/WebCore/platform/graphics/android/ImageBufferAndroid.cpp b/Source/WebCore/platform/graphics/android/ImageBufferAndroid.cpp index 691fbca..439733b 100644 --- a/Source/WebCore/platform/graphics/android/ImageBufferAndroid.cpp +++ b/Source/WebCore/platform/graphics/android/ImageBufferAndroid.cpp @@ -195,7 +195,7 @@ void ImageBuffer::putUnmultipliedImageData(ByteArray* source, const IntSize& sou ASSERT(destx >= 0); ASSERT(destx < m_size.width()); ASSERT(originx >= 0); - ASSERT(originx <= sourceRect.right()); + ASSERT(originx <= sourceRect.maxX()); int endx = destPoint.x() + sourceRect.maxX(); ASSERT(endx <= m_size.width()); @@ -207,7 +207,7 @@ void ImageBuffer::putUnmultipliedImageData(ByteArray* source, const IntSize& sou ASSERT(desty >= 0); ASSERT(desty < m_size.height()); ASSERT(originy >= 0); - ASSERT(originy <= sourceRect.bottom()); + ASSERT(originy <= sourceRect.maxY()); int endy = destPoint.y() + sourceRect.maxY(); ASSERT(endy <= m_size.height()); diff --git a/Source/WebKit/android/WebCoreSupport/ChromiumIncludes.h b/Source/WebKit/android/WebCoreSupport/ChromiumIncludes.h index 022511a..5dd1cac 100644 --- a/Source/WebKit/android/WebCoreSupport/ChromiumIncludes.h +++ b/Source/WebKit/android/WebCoreSupport/ChromiumIncludes.h @@ -45,6 +45,16 @@ #undef LOG_ASSERT #endif +// Chromium won't build without NDEBUG set, so we set it for all source files +// that use Chromium code. This means that if NDEBUG was previously unset, we +// have to redefine ASSERT() to a no-op, as this is enabled in debug builds. +// Unfortunately, ASSERT() is defined from config.h, so we can't get in first. +#ifndef NDEBUG +#define NDEBUG 1 +#undef ASSERT +#define ASSERT(assertion) (void(0)) +#endif + #include #include #include diff --git a/Source/WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp b/Source/WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp index 8cf0131..d26d523 100644 --- a/Source/WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp +++ b/Source/WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp @@ -1332,7 +1332,7 @@ void FrameLoaderClientAndroid::dispatchDidClearWindowObjectInWorld(DOMWrapperWor ASSERT(m_frame); ALOGV("::WebCore:: windowObjectCleared called on frame %p for %s\n", - m_frame, m_frame->loader()->url().string().ascii().data()); + m_frame, m_frame->document()->url().string().ascii().data()); m_webFrame->windowObjectCleared(m_frame); } -- cgit v1.1