Commit 7f6e632e authored by Hub Figuière's avatar Hub Figuière
Browse files

Bug 672504 - Don't keep pointer to weak presshell in accessible. r=surkov

parent a018805d
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -162,9 +162,9 @@ mai_atk_socket_get_extents(AtkComponent* aComponent,
}

AtkSocketAccessible::AtkSocketAccessible(nsIContent* aContent,
                                         nsIWeakReference* aShell,
                                         nsDocAccessible* aDoc,
                                         const nsCString& aPlugId) :
  nsAccessibleWrap(aContent, aShell)
  nsAccessibleWrap(aContent, aDoc)
{
  mAtkObject = mai_atk_socket_new(this);
  if (!mAtkObject)
+1 −1
Original line number Diff line number Diff line
@@ -72,7 +72,7 @@ public:
   */
  static bool gCanEmbed;

  AtkSocketAccessible(nsIContent* aContent, nsIWeakReference* aShell,
  AtkSocketAccessible(nsIContent* aContent, nsDocAccessible* aDoc,
                      const nsCString& aPlugId);

  // nsAccessNode
+2 −2
Original line number Diff line number Diff line
@@ -55,8 +55,8 @@
//-----------------------------------------------------

nsAccessNodeWrap::
    nsAccessNodeWrap(nsIContent *aContent, nsIWeakReference *aShell) :
    nsAccessNode(aContent, aShell)
  nsAccessNodeWrap(nsIContent* aContent, nsDocAccessible* aDoc) :
  nsAccessNode(aContent, aDoc)
{
}

+4 −5
Original line number Diff line number Diff line
@@ -49,12 +49,11 @@
class nsAccessNodeWrap :  public nsAccessNode
{
public: // construction, destruction
    nsAccessNodeWrap(nsIContent *aContent, nsIWeakReference *aShell);
  nsAccessNodeWrap(nsIContent* aContent, nsDocAccessible* aDoc);
  virtual ~nsAccessNodeWrap();

  static void InitAccessibility();
  static void ShutdownAccessibility();

};

#endif
+3 −3
Original line number Diff line number Diff line
@@ -281,8 +281,8 @@ PRInt32 nsAccessibleWrap::mAccWrapDeleted = 0;
#endif

nsAccessibleWrap::
    nsAccessibleWrap(nsIContent *aContent, nsIWeakReference *aShell) :
    nsAccessible(aContent, aShell), mAtkObject(nsnull)
  nsAccessibleWrap(nsIContent* aContent, nsDocAccessible* aDoc) :
  nsAccessible(aContent, aDoc), mAtkObject(nsnull)
{
#ifdef MAI_LOGGING
    ++mAccWrapCreated;
@@ -362,7 +362,7 @@ NS_IMETHODIMP nsAccessibleWrap::GetNativeInterface(void **aOutAccessible)
    *aOutAccessible = nsnull;

    if (!mAtkObject) {
        if (!mWeakShell || !nsAccUtils::IsEmbeddedObject(this)) {
        if (IsDefunct() || !nsAccUtils::IsEmbeddedObject(this)) {
            // We don't create ATK objects for node which has been shutdown, or
            // nsIAccessible plain text leaves
            return NS_ERROR_FAILURE;
Loading