(! SelectorMatchesTree(data->mPresContext, data->mParentContent, selector))) {
(! SelectorMatchesTree(*data, selector))) {
static void PseudoEnumFunc(nsICSSStyleRule* aRule, void* aData){  PseudoEnumData* data = (PseudoEnumData*)aData;  nsCSSSelector* selector = aRule->FirstSelector();  if (selector->mTag == data->mPseudoTag) {    selector = selector->mNext;    if (selector) { // test next selector specially      if (PRUnichar('+') == selector->mOperator) {        return; // not valid here, can't match      }      if (SelectorMatches(data->mPresContext, selector, data->mParentContent, PR_TRUE)) {        selector = selector->mNext;      }      else {        if (PRUnichar('>') == selector->mOperator) {          return; // immediate parent didn't match        }      }    }    if (selector &&         (! SelectorMatchesTree(data->mPresContext, data->mParentContent, selector))) {      return; // remaining selectors didn't match    }    nsIStyleRule* iRule;    if (NS_OK == aRule->QueryInterface(NS_GET_IID(nsIStyleRule), (void**)&iRule)) {      data->mResults->AppendElement(iRule);      NS_RELEASE(iRule);      iRule = aRule->GetImportantRule();      if (nsnull != iRule) {        data->mResults->AppendElement(iRule);        NS_RELEASE(iRule);      }    }  }}