if (NS_OK == inst->GetPeer(&peer)) { if (NS_OK == peer->QueryInterface(kIWindowlessPluginInstancePeerIID, (void **)&wpeer)) {  wpeer->InvalidateRect((nsPluginRect *)invalidRect); NS_RELEASE(wpeer); }
nsIPluginInstancePeer *peer; nsIWindowlessPluginInstancePeer *wpeer;
_invalidaterect(NPP npp, NPRect *invalidRect){	if(!npp)		return;    nsIPluginInstance *inst = (nsIPluginInstance *) npp->ndata;    NS_ASSERTION(inst != NULL, "null instance");    if (inst == NULL)        return;    nsIPluginInstancePeer *peer;    nsIWindowlessPluginInstancePeer *wpeer;    if (NS_OK == inst->GetPeer(&peer))    {      if (NS_OK == peer->QueryInterface(kIWindowlessPluginInstancePeerIID, (void **)&wpeer))      {        // XXX nsRect & NPRect are structurally equivalent        wpeer->InvalidateRect((nsPluginRect *)invalidRect);        NS_RELEASE(wpeer);      }      NS_RELEASE(peer);    }}