Restrict AVD and VD parsing to the current element instead of the whole document
am: 1f859716a8
Change-Id: Ic2fe385089997f89675be8f8a1559db979387dbb
This commit is contained in:
@@ -455,7 +455,11 @@ public class AnimatedVectorDrawable extends Drawable implements Animatable2 {
|
||||
|
||||
int eventType = parser.getEventType();
|
||||
float pathErrorScale = 1;
|
||||
while (eventType != XmlPullParser.END_DOCUMENT) {
|
||||
final int innerDepth = parser.getDepth() + 1;
|
||||
|
||||
// Parse everything until the end of the animated-vector element.
|
||||
while (eventType != XmlPullParser.END_DOCUMENT
|
||||
&& (parser.getDepth() >= innerDepth || eventType != XmlPullParser.END_TAG)) {
|
||||
if (eventType == XmlPullParser.START_TAG) {
|
||||
final String tagName = parser.getName();
|
||||
if (ANIMATED_VECTOR.equals(tagName)) {
|
||||
|
||||
@@ -744,7 +744,11 @@ public class VectorDrawable extends Drawable {
|
||||
groupStack.push(state.mRootGroup);
|
||||
|
||||
int eventType = parser.getEventType();
|
||||
while (eventType != XmlPullParser.END_DOCUMENT) {
|
||||
final int innerDepth = parser.getDepth() + 1;
|
||||
|
||||
// Parse everything until the end of the vector element.
|
||||
while (eventType != XmlPullParser.END_DOCUMENT
|
||||
&& (parser.getDepth() >= innerDepth || eventType != XmlPullParser.END_TAG)) {
|
||||
if (eventType == XmlPullParser.START_TAG) {
|
||||
final String tagName = parser.getName();
|
||||
final VGroup currentGroup = groupStack.peek();
|
||||
|
||||
Reference in New Issue
Block a user