[webkit-reviews] review denied: [Bug 35607] Allow building smoothly on win32 and win64 using GCC : [Attachment 52433] patch with fixes required by QtWebkit for mingw64 -WebCore
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Apr 15 12:14:15 PDT 2010
Adam Roben (aroben) <aroben at apple.com> has denied vanboxem.ruben at gmail.com's
request for review:
Bug 35607: Allow building smoothly on win32 and win64 using GCC
https://bugs.webkit.org/show_bug.cgi?id=35607
Attachment 52433: patch with fixes required by QtWebkit for mingw64 -WebCore
https://bugs.webkit.org/attachment.cgi?id=52433&action=review
------- Additional Comments from Adam Roben (aroben) <aroben at apple.com>
> +++ WebCore/ChangeLog (working copy)
> @@ -23807,6 +23807,26 @@
> (WebCore::GraphicsContext::fillRect): Ditto
> (WebCore::GraphicsContext::strokeRect): Ditto
>
> +2010-03-25 Ruben Van Boxem <vanboxem.ruben at gmail.com>
> +
> + Reviewed by NOBODY (OOPS!).
> +
> + Mingw-w64 fixes for WebCore
> + https://bugs.webkit.org/show_bug.cgi?id=35607
> +
> + No new tests.
> +
> + * platform/Arena.h: fix pointer precision loss error with mingw-w64
> + * platform/graphics/transforms/TransformationMatrix.h: let mingw64
use msvc codepath
> + * platform/text/TextStream.cpp: let mingw-w64 use msvc codepath
> + * platform/text/TextStream.h: let mingw-w64 use msvc codepath
> + * plugins/PluginView.cpp: fix pointer precision loss error with
mingw-w64
> + (WebCore::PluginView::stop):
> + * plugins/win/PluginViewWin.cpp: let mingw-w64 use msvc codepath
> + (WebCore::PluginView::paintIntoTransformedContext):
> + (WebCore::PluginView::setNPWindowRect):
> + (WebCore::PluginView::platformStart):
> +
You should put your entry at the top of the ChangeLog file, and update the
date.
> +++ WebCore/platform/Arena.h (working copy)
> @@ -44,7 +44,7 @@
>
> namespace WebCore {
>
> -typedef unsigned long uword;
> +typedef uintptr_t uword;
I know that some uses of uword are meant to hold pointers, but what about
ArenaPool::mask?
> -#if OS(WINDOWS) && PLATFORM(X86_64) && COMPILER(MSVC)
> +#if OS(WINDOWS) && CPU(X86_64)
> TextStream& TextStream::operator<<(__int64 i)
> {
> char buffer[printBufferSize];
> Index: WebCore/platform/text/TextStream.h
> ===================================================================
> --- WebCore/platform/text/TextStream.h (revision 56567)
> +++ WebCore/platform/text/TextStream.h (working copy)
> @@ -45,7 +45,7 @@ public:
> TextStream& operator<<(const char*);
> TextStream& operator<<(void*);
> TextStream& operator<<(const String&);
> -#if OS(WINDOWS) && PLATFORM(X86_64) && COMPILER(MSVC)
> +#if OS(WINDOWS) && CPU(X86_64)
> TextStream& operator<<(unsigned __int64);
> TextStream& operator<<(__int64);
> #endif
Will this screw up the 64-bit Qt Windows build? (Is there such a thing?)
> @@ -544,7 +544,7 @@ void PluginView::paintIntoTransformedCon
>
> NPEvent npEvent;
> npEvent.event = WM_WINDOWPOSCHANGED;
> - npEvent.lParam = reinterpret_cast<uint32>(&windowpos);
> + npEvent.lParam = reinterpret_cast<uintptr_t>(&windowpos);
> npEvent.wParam = 0;
>
> dispatchNPEvent(npEvent);
> @@ -552,7 +552,7 @@ void PluginView::paintIntoTransformedCon
> setNPWindowRect(frameRect());
>
> npEvent.event = WM_PAINT;
> - npEvent.wParam = reinterpret_cast<uint32>(hdc);
> + npEvent.wParam = reinterpret_cast<uintptr_t>(hdc);
These fields are declared to be of type uint32, so these casts look wrong.
> @@ -829,7 +829,7 @@ void PluginView::setNPWindowRect(const I
> #else
> WNDPROC currentWndProc =
(WNDPROC)GetWindowLongPtr(platformPluginWidget(), GWLP_WNDPROC);
> if (currentWndProc != PluginViewWndProc)
> - m_pluginWndProc =
(WNDPROC)SetWindowLongPtr(platformPluginWidget(), GWLP_WNDPROC,
(LONG)PluginViewWndProc);
> + m_pluginWndProc =
(WNDPROC)SetWindowLongPtr(platformPluginWidget(), GWLP_WNDPROC,
(intptr_t)PluginViewWndProc);
That should be LONG_PTR, not intptr_t.
More information about the webkit-reviews
mailing list