[Webkit-unassigned] [Bug 45145] [Qt] V8 port for QT platform: v8 binding changes
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Sep 3 11:39:13 PDT 2010
https://bugs.webkit.org/show_bug.cgi?id=45145
--- Comment #4 from Vlad <vladbph at gmail.com> 2010-09-03 11:39:13 PST ---
(In reply to comment #3)
> (From update of attachment 66438 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=66438&action=prettypatch
This should be fixed by changing inclusion order. At the time of the port it was a problem.
>
> > WebCore/bindings/v8/npruntime_internal.h:30
> > -#include "npapi.h"
> > +#if PLATFORM(QT)
> > +#include <bridge/npapi.h>
> > +#endif
> Why is this PLATFORM(QT) guard added here? (the ChangeLog doesn't explain)
>
OK
> Won't the missing inclusion break the Chromium build?
>
> > WebCore/bindings/v8/NPV8Object.cpp:254
> > +#if PLATFORM(QT)
> > + bool popupsAllowed = false;
> > +#else
> It looks like this is at least missing a FIXME.
>
> Then again, maybe it's not too difficult to fix. What about this?
>
> PluginView* view = pluginViewForInstance(npp);
> bool popupsAllowed = view ? view->arePopupsAllowed() : false;
Comment from Chromium says: // We don't use WebKit's page caching, so this implementation is just a stub.
I chose to use caching :)
>
> > WebCore/bindings/v8/ScriptCachedFrameData.h:54
> > +#elif PLATFORM(ANDROID) || PLATFORM(QT)
> Any explanation why this is needed for the Qt port but not for Chromium for example? (I'm just curious :)
Original code crashes at runtime. Most likely wrong constructor is called. This is again may be related to CString.h inclusion. Will check it if #ifdef can be removed now.
>
> > WebCore/bindings/v8/V8Binding.cpp:75
> > +#if !PLATFORM(QT)
> > : m_plainString(string)
> > , m_atomicString(string)
> > +#endif
> > {
> > #ifndef NDEBUG
> > m_threadId = WTF::currentThread();
> > #endif
> > +#if PLATFORM(QT)
> > + m_plainString = string;
> > + m_atomicString = string;
> > +#endif
> Why is the initialization done different for the Qt port?
>
> Or is this not actually Qt specific but specific to rvct?
Compilation errors appear on maemo. Will double check this.
>
> > WebCore/config.h:190
> > +#if PLATFORM(QT)
> > +#include <bridge/npruntime_internal.h>
> > +#endif
> What compile errors did you encounter?
>
> I'm going to say r- because I think some of the #ifdefs are not correct (such as the string init one) and there's a little bit of context missing for some of the changes.
>
> In general it looks good though.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list