From d4c259efadfa9142b69ba1e6f3f7d2ebec16b28c Mon Sep 17 00:00:00 2001 From: "dbaron%fas.harvard.edu" Date: Tue, 22 May 2001 20:53:00 +0000 Subject: [PATCH] Work around crash by using nsSupportsArray::Clone instead of the buggy (82133) nsSupportsArray::AppendElements. Patch from glazman@netscape.com, r=dbaron, sr=attinasi, b=80057 git-svn-id: svn://10.0.0.236/trunk@95685 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/content/html/style/src/nsCSSStyleSheet.cpp | 9 +++------ mozilla/layout/style/nsCSSStyleSheet.cpp | 9 +++------ 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/mozilla/content/html/style/src/nsCSSStyleSheet.cpp b/mozilla/content/html/style/src/nsCSSStyleSheet.cpp index b38b8149a17..c581c62266c 100644 --- a/mozilla/content/html/style/src/nsCSSStyleSheet.cpp +++ b/mozilla/content/html/style/src/nsCSSStyleSheet.cpp @@ -1345,12 +1345,9 @@ CSSStyleSheetImpl::CSSStyleSheetImpl(const CSSStyleSheetImpl& aCopy) if (aCopy.mMedia) { nsCOMPtr tmp; - NS_NewISupportsArray(getter_AddRefs(tmp)); - if (tmp) { - tmp->AppendElements(NS_STATIC_CAST(nsISupportsArray *, aCopy.mMedia)); - mMedia = new DOMMediaListImpl(tmp, this); - NS_IF_ADDREF(mMedia); - } + (NS_STATIC_CAST(nsISupportsArray *, aCopy.mMedia))->Clone(getter_AddRefs(tmp)); + mMedia = new DOMMediaListImpl(tmp, this); + NS_IF_ADDREF(mMedia); } if (aCopy.mFirstChild) { diff --git a/mozilla/layout/style/nsCSSStyleSheet.cpp b/mozilla/layout/style/nsCSSStyleSheet.cpp index b38b8149a17..c581c62266c 100644 --- a/mozilla/layout/style/nsCSSStyleSheet.cpp +++ b/mozilla/layout/style/nsCSSStyleSheet.cpp @@ -1345,12 +1345,9 @@ CSSStyleSheetImpl::CSSStyleSheetImpl(const CSSStyleSheetImpl& aCopy) if (aCopy.mMedia) { nsCOMPtr tmp; - NS_NewISupportsArray(getter_AddRefs(tmp)); - if (tmp) { - tmp->AppendElements(NS_STATIC_CAST(nsISupportsArray *, aCopy.mMedia)); - mMedia = new DOMMediaListImpl(tmp, this); - NS_IF_ADDREF(mMedia); - } + (NS_STATIC_CAST(nsISupportsArray *, aCopy.mMedia))->Clone(getter_AddRefs(tmp)); + mMedia = new DOMMediaListImpl(tmp, this); + NS_IF_ADDREF(mMedia); } if (aCopy.mFirstChild) {