CSSStyleSheetImpl::CSSStyleSheetImpl(const CSSStyleSheetImpl& aCopy)
CSSStyleSheetImpl::CSSStyleSheetImpl()
CSSStyleSheetImpl::CSSStyleSheetImpl(const CSSStyleSheetImpl& aCopy)  : nsICSSStyleSheet(),    mRefCnt(0),    mTitle(aCopy.mTitle),     mMedia(nsnull),    mFirstChild(nsnull),     mNext(nsnull),    mParent(aCopy.mParent),    mOwnerRule(aCopy.mOwnerRule),    mImportsCollection(nsnull), // re-created lazily    mRuleCollection(nsnull), // re-created lazily    mDocument(aCopy.mDocument),    mOwningNode(aCopy.mOwningNode),    mDisabled(aCopy.mDisabled),    mDirty(PR_FALSE),    mInner(aCopy.mInner),    mRuleProcessors(nsnull){  NS_INIT_ISUPPORTS();  mInner->AddSheet(this);  if (aCopy.mRuleCollection &&       aCopy.mRuleCollection->mRulesAccessed) {  // CSSOM's been there, force full copy now    EnsureUniqueInner();  }  if (aCopy.mMedia) {    nsCOMPtr<nsISupportsArray> tmp;    (NS_STATIC_CAST(nsISupportsArray *, aCopy.mMedia))->Clone(getter_AddRefs(tmp));    mMedia = new DOMMediaListImpl(tmp, this);    NS_IF_ADDREF(mMedia);  }  if (aCopy.mFirstChild) {    CSSStyleSheetImpl*  otherChild = aCopy.mFirstChild;    CSSStyleSheetImpl** ourSlot = &mFirstChild;    do {      CSSStyleSheetImpl* child = new CSSStyleSheetImpl(*otherChild);      if (child) {        NS_ADDREF(child);        (*ourSlot) = child;        ourSlot = &(child->mNext);      }      otherChild = otherChild->mNext;    }    while (otherChild && ourSlot);  }}