Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Side by Side Diff: third_party/WebKit/Source/modules/accessibility/AXSVGRoot.cpp

Issue 1207613004: Fix leaking AXNodeObjects when sub document detaches (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: rebased Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Apple Inc. All rights reserved. 2 * Copyright (C) 2012 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 // Only update the parent to another objcet if it wasn't already set to 52 // Only update the parent to another objcet if it wasn't already set to
53 // something. Multiple elements in an HTML document can reference 53 // something. Multiple elements in an HTML document can reference
54 // the same remote SVG document, and in that case the parent should just 54 // the same remote SVG document, and in that case the parent should just
55 // stay with the first one. 55 // stay with the first one.
56 if (!m_parent || !parent) 56 if (!m_parent || !parent)
57 m_parent = parent; 57 m_parent = parent;
58 } 58 }
59 59
60 AXObject* AXSVGRoot::computeParent() const 60 AXObject* AXSVGRoot::computeParent() const
61 { 61 {
62 ASSERT(!isDetached());
62 // If a parent was set because this is a remote SVG resource, use that 63 // If a parent was set because this is a remote SVG resource, use that
63 // but otherwise, we should rely on the standard layout tree for the parent. 64 // but otherwise, we should rely on the standard layout tree for the parent.
64 if (m_parent) 65 if (m_parent)
65 return m_parent; 66 return m_parent;
66 67
67 return AXLayoutObject::computeParent(); 68 return AXLayoutObject::computeParent();
68 } 69 }
69 70
70 71
71 } // namespace blink 72 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698