Bug 817442 Part 4: Remove nsIDOMSVGPathSegList r=bz, jwatt
authorDavid Zbarsky <dzbarsky@gmail.com>
Sat, 22 Dec 2012 23:54:23 -0500
changeset 126029 8b53a620ef9e34ef9fbd215a9a51670ae9d89cee
parent 126028 71dba2dc956c81e8fbc14f49b7a9c5360a894bc2
child 126030 bda6cac90251c863f3acc8e5bfbf531345b96cea
push id2151
push userlsblakk@mozilla.com
push dateTue, 19 Feb 2013 18:06:57 +0000
treeherdermozilla-beta@4952e88741ec [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbz, jwatt
bugs817442
milestone20.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 817442 Part 4: Remove nsIDOMSVGPathSegList r=bz, jwatt
content/svg/content/src/DOMSVGPathSegList.cpp
content/svg/content/src/DOMSVGPathSegList.h
content/svg/content/src/SVGMotionSMILType.cpp
content/svg/content/src/nsSVGPathElement.cpp
dom/base/nsDOMClassInfo.cpp
dom/base/nsDOMClassInfo.h
dom/base/nsDOMClassInfoClasses.h
dom/interfaces/svg/Makefile.in
dom/interfaces/svg/nsIDOMSVGAnimatedPathData.idl
dom/interfaces/svg/nsIDOMSVGPathSegList.idl
--- a/content/svg/content/src/DOMSVGPathSegList.cpp
+++ b/content/svg/content/src/DOMSVGPathSegList.cpp
@@ -33,25 +33,19 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(
 NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
 NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(DOMSVGPathSegList)
   NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER
 NS_IMPL_CYCLE_COLLECTION_TRACE_END
 
 NS_IMPL_CYCLE_COLLECTING_ADDREF(DOMSVGPathSegList)
 NS_IMPL_CYCLE_COLLECTING_RELEASE(DOMSVGPathSegList)
 
-} // namespace mozilla
-DOMCI_DATA(SVGPathSegList, mozilla::DOMSVGPathSegList)
-namespace mozilla {
-
 NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(DOMSVGPathSegList)
   NS_WRAPPERCACHE_INTERFACE_MAP_ENTRY
-  NS_INTERFACE_MAP_ENTRY(nsIDOMSVGPathSegList)
   NS_INTERFACE_MAP_ENTRY(nsISupports)
-  NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO(SVGPathSegList)
 NS_INTERFACE_MAP_END
 
 
 /* static */ already_AddRefed<DOMSVGPathSegList>
 DOMSVGPathSegList::GetDOMWrapper(void *aList,
                                  nsSVGElement *aElement,
                                  bool aIsAnimValList)
 {
@@ -189,17 +183,19 @@ DOMSVGPathSegList::InternalListWillChang
       if (mItems.Length() &&
           mItems.Length() - 1 > DOMSVGPathSeg::MaxListIndex()) {
         // It's safe to get out of sync with our internal list as long as we
         // have FEWER items than it does.
         return;
       }
       if (!mItems.AppendElement(ItemProxy(nullptr, dataIndex))) {
         // OOM
-        Clear();
+        ErrorResult rv;
+        Clear(rv);
+        MOZ_ASSERT(!rv.Failed());
         return;
       }
       dataIndex += 1 + SVGPathSegUtils::ArgCountForType(SVGPathSegUtils::DecodeType(aNewValue.mData[dataIndex]));
     }
   }
 
   NS_ABORT_IF_FALSE(dataIndex == dataLength, "Serious processing error");
   NS_ABORT_IF_FALSE(index == length, "Serious counting error");
@@ -223,23 +219,16 @@ DOMSVGPathSegList::InternalAList() const
 {
   NS_ABORT_IF_FALSE(mElement->GetAnimPathSegList(), "Internal error");
   return *mElement->GetAnimPathSegList();
 }
 
 // ----------------------------------------------------------------------------
 // nsIDOMSVGPathSegList implementation:
 
-NS_IMETHODIMP
-DOMSVGPathSegList::GetNumberOfItems(uint32_t *aNumberOfItems)
-{
-  *aNumberOfItems = NumberOfItems();
-  return NS_OK;
-}
-
 void
 DOMSVGPathSegList::Clear(ErrorResult& aError)
 {
   if (IsAnimValList()) {
     aError.Throw(NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR);
     return;
   }
 
@@ -263,24 +252,16 @@ DOMSVGPathSegList::Clear(ErrorResult& aE
     InternalList().Clear();
     Element()->DidChangePathSegList(emptyOrOldValue);
     if (AttrIsAnimating()) {
       Element()->AnimationNeedsResample();
     }
   }
 }
 
-NS_IMETHODIMP
-DOMSVGPathSegList::Clear()
-{
-  ErrorResult rv;
-  Clear(rv);
-  return rv.ErrorCode();
-}
-
 already_AddRefed<DOMSVGPathSeg>
 DOMSVGPathSegList::Initialize(DOMSVGPathSeg& aNewItem, ErrorResult& aError)
 {
   if (IsAnimValList()) {
     aError.Throw(NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR);
     return nullptr;
   }
 
@@ -297,54 +278,31 @@ DOMSVGPathSegList::Initialize(DOMSVGPath
     domItem = aNewItem.Clone();
   }
 
   Clear(aError);
   MOZ_ASSERT(!aError.Failed(), "How could this fail?");
   return InsertItemBefore(*domItem, 0, aError);
 }
 
-NS_IMETHODIMP
-DOMSVGPathSegList::Initialize(nsIDOMSVGPathSeg *newItem,
-                              nsIDOMSVGPathSeg **_retval)
-{
-  nsCOMPtr<DOMSVGPathSeg> domItem = do_QueryInterface(newItem);
-  if (!domItem) {
-    *_retval = nullptr;
-    return NS_ERROR_DOM_SVG_WRONG_TYPE_ERR;
-  }
-   ErrorResult rv;
-  *_retval = Initialize(*domItem, rv).get();
-  return rv.ErrorCode();
-}
-
 DOMSVGPathSeg*
 DOMSVGPathSegList::IndexedGetter(uint32_t aIndex, bool& aFound,
                                  ErrorResult& aError)
 {
   if (IsAnimValList()) {
     Element()->FlushAnimations();
   }
   aFound = aIndex < LengthNoFlush();
   if (aFound) {
     EnsureItemAt(aIndex);
     return ItemAt(aIndex);
   }
   return nullptr;
 }
 
-NS_IMETHODIMP
-DOMSVGPathSegList::GetItem(uint32_t aIndex,
-                           nsIDOMSVGPathSeg **_retval)
-{
-  ErrorResult rv;
-  NS_IF_ADDREF(*_retval = GetItem(aIndex, rv));
-  return rv.ErrorCode();
-}
-
 already_AddRefed<DOMSVGPathSeg>
 DOMSVGPathSegList::InsertItemBefore(DOMSVGPathSeg& aNewItem,
                                     uint32_t aIndex,
                                     ErrorResult& aError)
 {
   if (IsAnimValList()) {
     aError.Throw(NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR);
     return nullptr;
@@ -395,31 +353,16 @@ DOMSVGPathSegList::InsertItemBefore(DOMS
 
   Element()->DidChangePathSegList(emptyOrOldValue);
   if (AttrIsAnimating()) {
     Element()->AnimationNeedsResample();
   }
   return domItem.forget();
 }
 
-NS_IMETHODIMP
-DOMSVGPathSegList::InsertItemBefore(nsIDOMSVGPathSeg *aNewItem,
-                                    uint32_t aIndex,
-                                    nsIDOMSVGPathSeg **_retval)
-{
-  nsCOMPtr<DOMSVGPathSeg> domItem = do_QueryInterface(aNewItem);
-  if (!domItem) {
-    *_retval = nullptr;
-    return NS_ERROR_DOM_SVG_WRONG_TYPE_ERR;
-  }
-   ErrorResult rv;
-  *_retval = InsertItemBefore(*domItem, aIndex, rv).get();
-  return rv.ErrorCode();
-}
-
 already_AddRefed<DOMSVGPathSeg>
 DOMSVGPathSegList::ReplaceItem(DOMSVGPathSeg& aNewItem,
                                uint32_t aIndex,
                                ErrorResult& aError)
 {
   if (IsAnimValList()) {
     aError.Throw(NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR);
     return nullptr;
@@ -474,31 +417,16 @@ DOMSVGPathSegList::ReplaceItem(DOMSVGPat
 
   Element()->DidChangePathSegList(emptyOrOldValue);
   if (AttrIsAnimating()) {
     Element()->AnimationNeedsResample();
   }
   return domItem.forget();
 }
 
-NS_IMETHODIMP
-DOMSVGPathSegList::ReplaceItem(nsIDOMSVGPathSeg *aNewItem,
-                               uint32_t aIndex,
-                               nsIDOMSVGPathSeg **_retval)
-{
-  nsCOMPtr<DOMSVGPathSeg> domItem = do_QueryInterface(aNewItem);
-  if (!domItem) {
-    *_retval = nullptr;
-    return NS_ERROR_DOM_SVG_WRONG_TYPE_ERR;
-  }
-  ErrorResult rv;
-  *_retval = ReplaceItem(*domItem, aIndex, rv).get();
-  return rv.ErrorCode();
-}
-
 already_AddRefed<DOMSVGPathSeg>
 DOMSVGPathSegList::RemoveItem(uint32_t aIndex,
                               ErrorResult& aError)
 {
   if (IsAnimValList()) {
     aError.Throw(NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR);
     return nullptr;
   }
@@ -532,45 +460,16 @@ DOMSVGPathSegList::RemoveItem(uint32_t a
 
   Element()->DidChangePathSegList(emptyOrOldValue);
   if (AttrIsAnimating()) {
     Element()->AnimationNeedsResample();
   }
   return result.forget();
 }
 
-NS_IMETHODIMP
-DOMSVGPathSegList::RemoveItem(uint32_t aIndex,
-                              nsIDOMSVGPathSeg **_retval)
-{
-  ErrorResult rv;
-  *_retval = RemoveItem(aIndex, rv).get();
-  return rv.ErrorCode();
-}
-
-NS_IMETHODIMP
-DOMSVGPathSegList::AppendItem(nsIDOMSVGPathSeg *aNewItem,
-                              nsIDOMSVGPathSeg **_retval)
-{
-  nsCOMPtr<DOMSVGPathSeg> domItem = do_QueryInterface(aNewItem);
-  if (!domItem) {
-    *_retval = nullptr;
-    return NS_ERROR_DOM_SVG_WRONG_TYPE_ERR;
-  }
-  ErrorResult rv;
-  *_retval = AppendItem(*domItem, rv).get();
-  return rv.ErrorCode();
-}
-
-NS_IMETHODIMP
-DOMSVGPathSegList::GetLength(uint32_t *aNumberOfItems)
-{
-  return GetNumberOfItems(aNumberOfItems);
-}
-
 void
 DOMSVGPathSegList::EnsureItemAt(uint32_t aIndex)
 {
   if (!ItemAt(aIndex)) {
     ItemAt(aIndex) = DOMSVGPathSeg::CreateFor(this, aIndex, IsAnimValList());
   }
 }
 
--- a/content/svg/content/src/DOMSVGPathSegList.h
+++ b/content/svg/content/src/DOMSVGPathSegList.h
@@ -5,17 +5,16 @@
 
 #ifndef MOZILLA_DOMSVGPATHSEGLIST_H__
 #define MOZILLA_DOMSVGPATHSEGLIST_H__
 
 #include "nsAutoPtr.h"
 #include "nsCOMPtr.h"
 #include "nsCycleCollectionParticipant.h"
 #include "nsDebug.h"
-#include "nsIDOMSVGPathSegList.h"
 #include "nsSVGElement.h"
 #include "nsTArray.h"
 #include "SVGPathData.h" // IWYU pragma: keep
 #include "mozilla/Attributes.h"
 #include "mozilla/ErrorResult.h"
 
 namespace mozilla {
 
@@ -42,25 +41,24 @@ class SVGAnimatedPathSegList;
  * DOMSVGAnimatedLengthList) is contained in this class.
  *
  * This class is strongly intertwined with DOMSVGPathSeg. Our DOMSVGPathSeg
  * items are friends of us and responsible for nulling out our pointers to
  * them when they die.
  *
  * Our DOM items are created lazily on demand as and when script requests them.
  */
-class DOMSVGPathSegList MOZ_FINAL : public nsIDOMSVGPathSegList,
+class DOMSVGPathSegList MOZ_FINAL : public nsISupports,
                                     public nsWrapperCache
 {
   friend class DOMSVGPathSeg;
 
 public:
   NS_DECL_CYCLE_COLLECTING_ISUPPORTS
   NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DOMSVGPathSegList)
-  NS_DECL_NSIDOMSVGPATHSEGLIST
 
   virtual JSObject* WrapObject(JSContext *cx, JSObject *scope,
                                bool *triedToWrap);
 
   nsISupports* GetParentObject()
   {
     return static_cast<nsIContent*>(mElement);
   }
--- a/content/svg/content/src/SVGMotionSMILType.cpp
+++ b/content/svg/content/src/SVGMotionSMILType.cpp
@@ -6,17 +6,16 @@
 /* implementation of nsISMILType for use by <animateMotion> element */
 
 #include "SVGMotionSMILType.h"
 #include "nsSMILValue.h"
 #include "nsDebug.h"
 #include "nsSVGAngle.h"
 #include "nsIDOMSVGAngle.h"
 #include "nsSVGPathElement.h"
-#include "nsIDOMSVGPathSegList.h"
 #include "nsMathUtils.h"
 #include <math.h>
 
 namespace mozilla {
 
 /*static*/ SVGMotionSMILType SVGMotionSMILType::sSingleton;
 
 
--- a/content/svg/content/src/nsSVGPathElement.cpp
+++ b/content/svg/content/src/nsSVGPathElement.cpp
@@ -313,41 +313,41 @@ nsSVGElement::NumberAttributesInfo
 nsSVGPathElement::GetNumberInfo()
 {
   return NumberAttributesInfo(&mPathLength, &sNumberInfo, 1);
 }
 
 //----------------------------------------------------------------------
 // nsIDOMSVGAnimatedPathData methods:
 
-/* readonly attribute nsIDOMSVGPathSegList pathSegList; */
-NS_IMETHODIMP nsSVGPathElement::GetPathSegList(nsIDOMSVGPathSegList * *aPathSegList)
+/* readonly attribute DOMSVGPathSegList pathSegList; */
+NS_IMETHODIMP nsSVGPathElement::GetPathSegList(nsISupports * *aPathSegList)
 {
   void *key = mD.GetBaseValKey();
   *aPathSegList = DOMSVGPathSegList::GetDOMWrapper(key, this, false).get();
   return *aPathSegList ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute nsIDOMSVGPathSegList normalizedPathSegList; */
-NS_IMETHODIMP nsSVGPathElement::GetNormalizedPathSegList(nsIDOMSVGPathSegList * *aNormalizedPathSegList)
+/* readonly attribute DOMSVGPathSegList normalizedPathSegList; */
+NS_IMETHODIMP nsSVGPathElement::GetNormalizedPathSegList(nsISupports * *aNormalizedPathSegList)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* readonly attribute nsIDOMSVGPathSegList animatedPathSegList; */
-NS_IMETHODIMP nsSVGPathElement::GetAnimatedPathSegList(nsIDOMSVGPathSegList * *aAnimatedPathSegList)
+/* readonly attribute DOMSVGPathSegList animatedPathSegList; */
+NS_IMETHODIMP nsSVGPathElement::GetAnimatedPathSegList(nsISupports * *aAnimatedPathSegList)
 {
   void *key = mD.GetAnimValKey();
   *aAnimatedPathSegList =
     DOMSVGPathSegList::GetDOMWrapper(key, this, true).get();
   return *aAnimatedPathSegList ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute nsIDOMSVGPathSegList animatedNormalizedPathSegList; */
-NS_IMETHODIMP nsSVGPathElement::GetAnimatedNormalizedPathSegList(nsIDOMSVGPathSegList * *aAnimatedNormalizedPathSegList)
+/* readonly attribute DOMSVGPathSegList animatedNormalizedPathSegList; */
+NS_IMETHODIMP nsSVGPathElement::GetAnimatedNormalizedPathSegList(nsISupports * *aAnimatedNormalizedPathSegList)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
 //----------------------------------------------------------------------
 // nsIContent methods
 
 NS_IMETHODIMP_(bool)
--- a/dom/base/nsDOMClassInfo.cpp
+++ b/dom/base/nsDOMClassInfo.cpp
@@ -354,17 +354,16 @@
 #include "nsIDOMSVGLocatable.h"
 #include "nsIDOMSVGMarkerElement.h"
 #include "nsIDOMSVGMaskElement.h"
 #include "nsIDOMSVGMatrix.h"
 #include "nsIDOMSVGMetadataElement.h"
 #include "nsIDOMSVGNumber.h"
 #include "nsIDOMSVGNumberList.h"
 #include "nsIDOMSVGPathElement.h"
-#include "nsIDOMSVGPathSegList.h"
 #include "nsIDOMSVGPatternElement.h"
 #include "nsIDOMSVGPoint.h"
 #include "nsIDOMSVGPolygonElement.h"
 #include "nsIDOMSVGPolylineElement.h"
 #include "nsIDOMSVGRect.h"
 #include "nsIDOMSVGRectElement.h"
 #include "nsIDOMSVGScriptElement.h"
 #include "nsIDOMSVGStopElement.h"
@@ -1252,18 +1251,16 @@ static nsDOMClassInfoData sClassInfoData
   NS_DEFINE_CLASSINFO_DATA(SVGLengthList, nsDOMGenericSH,
                            DOM_DEFAULT_SCRIPTABLE_FLAGS)
   NS_DEFINE_CLASSINFO_DATA(SVGMatrix, nsDOMGenericSH,
                            DOM_DEFAULT_SCRIPTABLE_FLAGS)
   NS_DEFINE_CLASSINFO_DATA(SVGNumber, nsDOMGenericSH,
                            DOM_DEFAULT_SCRIPTABLE_FLAGS)
   NS_DEFINE_CLASSINFO_DATA(SVGNumberList, nsDOMGenericSH,
                            DOM_DEFAULT_SCRIPTABLE_FLAGS)
-  NS_DEFINE_CLASSINFO_DATA(SVGPathSegList, nsDOMGenericSH,
-                           DOM_DEFAULT_SCRIPTABLE_FLAGS)
   NS_DEFINE_CLASSINFO_DATA(SVGPoint, nsDOMGenericSH,
                            DOM_DEFAULT_SCRIPTABLE_FLAGS)
   NS_DEFINE_CLASSINFO_DATA(SVGRect, nsDOMGenericSH,
                            DOM_DEFAULT_SCRIPTABLE_FLAGS)
   NS_DEFINE_CLASSINFO_DATA(SVGStringList, nsSVGStringListSH,
                            ARRAY_SCRIPTABLE_FLAGS)    
   NS_DEFINE_CLASSINFO_DATA(SVGTransform, nsDOMGenericSH,
                            DOM_DEFAULT_SCRIPTABLE_FLAGS)
@@ -3563,20 +3560,16 @@ nsDOMClassInfo::Init()
   DOM_CLASSINFO_MAP_BEGIN(SVGNumber, nsIDOMSVGNumber)
     DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGNumber)
   DOM_CLASSINFO_MAP_END
 
   DOM_CLASSINFO_MAP_BEGIN(SVGNumberList, nsIDOMSVGNumberList)
     DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGNumberList)
   DOM_CLASSINFO_MAP_END
 
-  DOM_CLASSINFO_MAP_BEGIN(SVGPathSegList, nsIDOMSVGPathSegList)
-    DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGPathSegList)
-  DOM_CLASSINFO_MAP_END
-
   DOM_CLASSINFO_MAP_BEGIN(SVGPoint, nsIDOMSVGPoint)
     DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGPoint)
   DOM_CLASSINFO_MAP_END
 
   DOM_CLASSINFO_MAP_BEGIN(SVGRect, nsIDOMSVGRect)
     DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGRect)
   DOM_CLASSINFO_MAP_END
 
--- a/dom/base/nsDOMClassInfo.h
+++ b/dom/base/nsDOMClassInfo.h
@@ -32,17 +32,16 @@ class DOMSVGTransformList;
 class nsContentList;
 class nsGlobalWindow;
 class nsICanvasRenderingContextInternal;
 class nsIDOMHTMLOptionsCollection;
 class nsIDOMSVGLength;
 class nsIDOMSVGLengthList;
 class nsIDOMSVGNumber;
 class nsIDOMSVGNumberList;
-class nsIDOMSVGPathSegList;
 class nsIDOMSVGPoint;
 class nsIDOMSVGStringList;
 class nsIDOMSVGTests;
 class nsIDOMSVGTransform;
 class nsIDOMSVGTransformList;
 class nsIDOMWindow;
 class nsIForm;
 class nsIHTMLDocument;
--- a/dom/base/nsDOMClassInfoClasses.h
+++ b/dom/base/nsDOMClassInfoClasses.h
@@ -267,17 +267,16 @@ DOMCI_CLASS(SVGAnimatedRect)
 DOMCI_CLASS(SVGAnimatedString)
 DOMCI_CLASS(SVGAnimatedTransformList)
 DOMCI_CLASS(SVGEvent)
 DOMCI_CLASS(SVGLength)
 DOMCI_CLASS(SVGLengthList)
 DOMCI_CLASS(SVGMatrix)
 DOMCI_CLASS(SVGNumber)
 DOMCI_CLASS(SVGNumberList)
-DOMCI_CLASS(SVGPathSegList)
 DOMCI_CLASS(SVGPoint)
 DOMCI_CLASS(SVGRect)
 DOMCI_CLASS(SVGStringList)
 DOMCI_CLASS(SVGTransform)
 DOMCI_CLASS(SVGTransformList)
 DOMCI_CLASS(SVGZoomEvent)
 
 // Canvas
--- a/dom/interfaces/svg/Makefile.in
+++ b/dom/interfaces/svg/Makefile.in
@@ -58,17 +58,16 @@ XPIDLSRCS	= \
 		nsIDOMSVGMarkerElement.idl \
 		nsIDOMSVGMaskElement.idl \
 		nsIDOMSVGMatrix.idl \
 		nsIDOMSVGMetadataElement.idl \
 		nsIDOMSVGMpathElement.idl \
 		nsIDOMSVGNumber.idl \
 		nsIDOMSVGNumberList.idl \
 		nsIDOMSVGPathElement.idl \
-		nsIDOMSVGPathSegList.idl \
 		nsIDOMSVGPatternElement.idl \
 		nsIDOMSVGPoint.idl \
 		nsIDOMSVGPolygonElement.idl \
 		nsIDOMSVGPolylineElement.idl \
 		nsIDOMSVGRect.idl \
 		nsIDOMSVGRectElement.idl \
 		nsIDOMSVGScriptElement.idl \
 		nsIDOMSVGSetElement.idl \
--- a/dom/interfaces/svg/nsIDOMSVGAnimatedPathData.idl
+++ b/dom/interfaces/svg/nsIDOMSVGAnimatedPathData.idl
@@ -1,18 +1,16 @@
 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 #include "domstubs.idl"
 
-interface nsIDOMSVGPathSegList;
-
 [scriptable, uuid(6ef2b400-dbf4-4c12-8787-fe15caac5648)]
 interface nsIDOMSVGAnimatedPathData : nsISupports
-{   
-  readonly attribute nsIDOMSVGPathSegList   pathSegList;
-  readonly attribute nsIDOMSVGPathSegList   normalizedPathSegList;
-  readonly attribute nsIDOMSVGPathSegList   animatedPathSegList;
-  readonly attribute nsIDOMSVGPathSegList   animatedNormalizedPathSegList;
+{
+  readonly attribute nsISupports   pathSegList;
+  readonly attribute nsISupports   normalizedPathSegList;
+  readonly attribute nsISupports   animatedPathSegList;
+  readonly attribute nsISupports   animatedNormalizedPathSegList;
 };
 
deleted file mode 100644
--- a/dom/interfaces/svg/nsIDOMSVGPathSegList.idl
+++ /dev/null
@@ -1,30 +0,0 @@
-/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-/* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-
-#include "domstubs.idl"
-
-interface nsIDOMSVGPathSeg;
-
-[scriptable, uuid(24bc0498-ebfd-4966-a1c7-524e939308c9)]
-interface nsIDOMSVGPathSegList : nsISupports
-{ 
-  readonly attribute unsigned long numberOfItems;
-  readonly attribute unsigned long length;  // synonym for numberOfItems
-
-  void clear();
-          // raises(nsIDOMDOMException);
-  nsIDOMSVGPathSeg initialize(in nsIDOMSVGPathSeg newItem );
-                    // raises(nsIDOMDOMException, nsIDOMSVGException);
-  nsIDOMSVGPathSeg getItem(in unsigned long index);
-                    // raises(nsIDOMDOMException);
-  nsIDOMSVGPathSeg insertItemBefore(in nsIDOMSVGPathSeg newItem, in unsigned long index);
-                    // raises(nsIDOMDOMException, nsIDOMSVGException);
-  nsIDOMSVGPathSeg replaceItem(in nsIDOMSVGPathSeg newItem, in unsigned long index);
-                    // raises(nsIDOMDOMException, nsIDOMSVGException);
-  nsIDOMSVGPathSeg removeItem(in unsigned long index);
-                    // raises(nsIDOMDOMException);
-  nsIDOMSVGPathSeg appendItem(in nsIDOMSVGPathSeg newItem);
-                    // raises(nsIDOMDOMException, nsIDOMSVGException);
-};