aboutsummaryrefslogtreecommitdiffstats
path: root/eclipse/plugins/com.android.ide.eclipse.adt/src
diff options
context:
space:
mode:
authorTor Norbye <tnorbye@google.com>2014-03-14 17:58:15 -0700
committerTor Norbye <tnorbye@google.com>2014-03-14 17:59:48 -0700
commit6a168b825681fe8d7ed07591fa9f6d92733576c7 (patch)
tree14880eff647d1345e1d800f34831b609c0548b58 /eclipse/plugins/com.android.ide.eclipse.adt/src
parenta713337b7c6a895885f57efbb774e5cb5c388e9c (diff)
downloadsdk-6a168b825681fe8d7ed07591fa9f6d92733576c7.zip
sdk-6a168b825681fe8d7ed07591fa9f6d92733576c7.tar.gz
sdk-6a168b825681fe8d7ed07591fa9f6d92733576c7.tar.bz2
67140: Custom view rendering no longer working (with sandboxing enabled)
Change-Id: I79ef603244bd2373fae8b57d6316e415e821a933
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src')
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/ProjectCallback.java45
1 files changed, 30 insertions, 15 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/ProjectCallback.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/ProjectCallback.java
index 5a09758..28b1689 100644
--- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/ProjectCallback.java
+++ b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/ProjectCallback.java
@@ -289,10 +289,15 @@ public final class ProjectCallback extends LegacyCallback {
@Override
public String getNamespace() {
if (mNamespace == null) {
- ManifestData manifestData = AndroidManifestHelper.parseForData(mProject);
- if (manifestData != null) {
- String javaPackage = manifestData.getPackage();
- mNamespace = String.format(AdtConstants.NS_CUSTOM_RESOURCES, javaPackage);
+ boolean token = RenderSecurityManager.enterSafeRegion(mCredential);
+ try {
+ ManifestData manifestData = AndroidManifestHelper.parseForData(mProject);
+ if (manifestData != null) {
+ String javaPackage = manifestData.getPackage();
+ mNamespace = String.format(AdtConstants.NS_CUSTOM_RESOURCES, javaPackage);
+ }
+ } finally {
+ RenderSecurityManager.exitSafeRegion(token);
}
}
@@ -440,23 +445,33 @@ public final class ProjectCallback extends LegacyCallback {
@Override
public ILayoutPullParser getParser(String layoutName) {
- // Try to compute the ResourceValue for this layout since layoutlib
- // must be an older version which doesn't pass the value:
- if (mResourceResolver != null) {
- ResourceValue value = mResourceResolver.getProjectResource(ResourceType.LAYOUT,
- layoutName);
- if (value != null) {
- return getParser(value);
+ boolean token = RenderSecurityManager.enterSafeRegion(mCredential);
+ try {
+ // Try to compute the ResourceValue for this layout since layoutlib
+ // must be an older version which doesn't pass the value:
+ if (mResourceResolver != null) {
+ ResourceValue value = mResourceResolver.getProjectResource(ResourceType.LAYOUT,
+ layoutName);
+ if (value != null) {
+ return getParser(value);
+ }
}
- }
- return getParser(layoutName, null);
+ return getParser(layoutName, null);
+ } finally {
+ RenderSecurityManager.exitSafeRegion(token);
+ }
}
@Override
public ILayoutPullParser getParser(ResourceValue layoutResource) {
- return getParser(layoutResource.getName(),
- new File(layoutResource.getValue()));
+ boolean token = RenderSecurityManager.enterSafeRegion(mCredential);
+ try {
+ return getParser(layoutResource.getName(),
+ new File(layoutResource.getValue()));
+ } finally {
+ RenderSecurityManager.exitSafeRegion(token);
+ }
}
private ILayoutPullParser getParser(String layoutName, File xml) {