<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>35019</bug_id>
          
          <creation_ts>2010-02-16 23:39:40 -0800</creation_ts>
          <short_desc>Can&apos;t cross-compile Qt/ARM anymore since r54616 (PluginViewNone.cpp vs. PluginView.cpp)</short_desc>
          <delta_ts>2010-04-26 03:54:13 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>36621</dup_id>
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt</keywords>
          <priority>P2</priority>
          <bug_severity>Blocker</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Mirko Scavazzin">mscavazzin</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>jhoneycutt</cc>
    
    <cc>jturcotte</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>190911</commentid>
    <comment_count>0</comment_count>
    <who name="Mirko Scavazzin">mscavazzin</who>
    <bug_when>2010-02-16 23:39:40 -0800</bug_when>
    <thetext>Hi,
I can&apos;t cross-compile anymore for Qt/ARM target since the &quot;void PluginView::keepAlive(NPP)&quot; stuff was added in r54614 (http://svnsearch.org/svnsearch/repos/WEBKIT/search?filename=PluginView.cpp#546141117471) 

I get this error at link :

obj/release/PluginViewNone.o: In function `WebCore::PluginView::keepAlive(_NPP*)&apos;:
PluginViewNone.cpp:(.text._ZN7WebCore10PluginView9keepAliveEP4_NPP+0x0): multiple definition of `WebCore::PluginView::keepAlive(_NPP*)&apos;
obj/release/PluginView.o:PluginView.cpp:(.text._ZN7WebCore10PluginView9keepAliveEP4_NPP+0x0): first defined here
collect2: ld returned 1 exit status
make[1]: *** [../lib/libQtWebKit.so.4.5.2] Error 1
make[1]: Leaving directory `/localdisk/working/WebKit/WebKitBuild/Release/WebCore&apos;
make: *** [sub-WebCore-make_default-ordered] Error 2


Looks like it happens when ENABLE_NETSCAPE_PLUGIN_API=0</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>192451</commentid>
    <comment_count>1</comment_count>
    <who name="Mirko Scavazzin">mscavazzin</who>
    <bug_when>2010-02-22 06:38:02 -0800</bug_when>
    <thetext>I suggest to change PluginView::keepAlive definition in PluginView.cpp within ENABLE(NETSCAPE_PLUGIN_API) like this below (it works for me) :

#if ENABLE(NETSCAPE_PLUGIN_API)
void PluginView::keepAlive(NPP instance)
{
    PluginView* view = instanceMap().get(instance);
    if (!view)
        return;

    view-&gt;keepAlive();
}
#endif</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>198095</commentid>
    <comment_count>2</comment_count>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2010-03-10 06:41:26 -0800</bug_when>
    <thetext>
Please follow the QtWebKit bug reporting guidelines when reporting bugs.

See http://trac.webkit.org/wiki/QtWebKitBugs

Specifically:

  - The &apos;QtWebKit&apos; component should only be used for bugs/features in the
    public QtWebKit API layer, not to signify that the bug is specific to
    the Qt port of WebKit

      http://trac.webkit.org/wiki/QtWebKitBugs#Component

  - Add the keyword &apos;Qt&apos; to signal that it&apos;s a Qt-related bug

      http://trac.webkit.org/wiki/QtWebKitBugs#Keywords</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>198127</commentid>
    <comment_count>3</comment_count>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2010-03-10 07:34:10 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; I suggest to change PluginView::keepAlive definition in PluginView.cpp within
&gt; ENABLE(NETSCAPE_PLUGIN_API) like this below (it works for me) :
&gt; 
&gt; #if ENABLE(NETSCAPE_PLUGIN_API)
&gt; void PluginView::keepAlive(NPP instance)
&gt; {
&gt;     PluginView* view = instanceMap().get(instance);
&gt;     if (!view)
&gt;         return;
&gt; 
&gt;     view-&gt;keepAlive();
&gt; }
&gt; #endif

This change seems to be in trunk already. Please reopen if still valid.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212767</commentid>
    <comment_count>4</comment_count>
    <who name="Mirko Scavazzin">mscavazzin</who>
    <bug_when>2010-04-14 23:53:20 -0700</bug_when>
    <thetext>I get still the same problems.

into PluginView.cpp
please change from this :
-----------------------------------------------------------------------------------------------
#if ENABLE(NETSCAPE_PLUGIN_API)
void PluginView::keepAlive(NPP instance)
{
    PluginView* view = instanceMap().get(instance);
    if (!view)
        return;

    view-&gt;keepAlive();
}
#endif

NPError PluginView::getValueStatic(NPNVariable variable, void* value)
{
    LOG(Plugins, &quot;PluginView::getValueStatic(%s)&quot;, prettyNameForNPNVariable(variable).data());

    NPError result;
    if (platformGetValueStatic(variable, value, &amp;result))
        return result;

    return NPERR_GENERIC_ERROR;
}
-----------------------------------------------------------------------------------------------




to this:
-----------------------------------------------------------------------------------------------
#if ENABLE(NETSCAPE_PLUGIN_API)
void PluginView::keepAlive(NPP instance)
{
    PluginView* view = instanceMap().get(instance);
    if (!view)
        return;

    view-&gt;keepAlive();
}

NPError PluginView::getValueStatic(NPNVariable variable, void* value)
{
    LOG(Plugins, &quot;PluginView::getValueStatic(%s)&quot;, prettyNameForNPNVariable(variable).data());

    NPError result;
    if (platformGetValueStatic(variable, value, &amp;result))
        return result;

    return NPERR_GENERIC_ERROR;
}
#endif
-----------------------------------------------------------------------------------------------












and into PluginViewNone.cpp
please change from this :
-----------------------------------------------------------------------------------------------
#if ENABLE(NETSCAPE_PLUGIN_API)
void PluginView::keepAlive(NPP)
{
}
#endif

void PluginView::privateBrowsingStateChanged(bool)
{
}

void PluginView::setJavaScriptPaused(bool)
{
}
-----------------------------------------------------------------------------------------------




to this:
-----------------------------------------------------------------------------------------------
#if ENABLE(NETSCAPE_PLUGIN_API)
void PluginView::keepAlive(NPP)
{
}

void PluginView::privateBrowsingStateChanged(bool)
{
}

void PluginView::setJavaScriptPaused(bool)
{
}
#endif
-----------------------------------------------------------------------------------------------</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212769</commentid>
    <comment_count>5</comment_count>
    <who name="Mirko Scavazzin">mscavazzin</who>
    <bug_when>2010-04-14 23:59:10 -0700</bug_when>
    <thetext>I get still the same problems.

into PluginView.cpp
please change from this :
-----------------------------------------------------------------------------------------------
#if ENABLE(NETSCAPE_PLUGIN_API)
void PluginView::keepAlive(NPP instance)
{
    PluginView* view = instanceMap().get(instance);
    if (!view)
        return;

    view-&gt;keepAlive();
}
#endif

NPError PluginView::getValueStatic(NPNVariable variable, void* value)
{
    LOG(Plugins, &quot;PluginView::getValueStatic(%s)&quot;, prettyNameForNPNVariable(variable).data());

    NPError result;
    if (platformGetValueStatic(variable, value, &amp;result))
        return result;

    return NPERR_GENERIC_ERROR;
}
-----------------------------------------------------------------------------------------------




to this:
-----------------------------------------------------------------------------------------------
#if ENABLE(NETSCAPE_PLUGIN_API)
void PluginView::keepAlive(NPP instance)
{
    PluginView* view = instanceMap().get(instance);
    if (!view)
        return;

    view-&gt;keepAlive();
}

NPError PluginView::getValueStatic(NPNVariable variable, void* value)
{
    LOG(Plugins, &quot;PluginView::getValueStatic(%s)&quot;, prettyNameForNPNVariable(variable).data());

    NPError result;
    if (platformGetValueStatic(variable, value, &amp;result))
        return result;

    return NPERR_GENERIC_ERROR;
}
#endif
-----------------------------------------------------------------------------------------------












and into PluginViewNone.cpp
please change from this :
-----------------------------------------------------------------------------------------------
#if ENABLE(NETSCAPE_PLUGIN_API)
void PluginView::keepAlive(NPP)
{
}
#endif

void PluginView::privateBrowsingStateChanged(bool)
{
}

void PluginView::setJavaScriptPaused(bool)
{
}
-----------------------------------------------------------------------------------------------




to this:
-----------------------------------------------------------------------------------------------
#if ENABLE(NETSCAPE_PLUGIN_API)
void PluginView::keepAlive(NPP)
{
}

void PluginView::privateBrowsingStateChanged(bool)
{
}

void PluginView::setJavaScriptPaused(bool)
{
}
#endif
-----------------------------------------------------------------------------------------------</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216983</commentid>
    <comment_count>6</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2010-04-26 03:54:13 -0700</bug_when>
    <thetext>A patch related to this got landed lately.
Please tell if you still have problems compiling.

*** This bug has been marked as a duplicate of bug 36621 ***</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>