Fix potential NPE in manifest editor when switching SDKs
The UiElementNode depends on the target to compute the description and it's entirely possible for the target to be null while the SDK is being unloaded/reloaded. SDK BUG 2196260 Change-Id: I4151529ea3b6a65eade47d03e55fc93cad8596d9
This commit is contained in:
@@ -21,6 +21,7 @@ import com.android.ide.eclipse.adt.internal.editors.manifest.descriptors.Android
|
||||
import com.android.ide.eclipse.adt.internal.editors.manifest.descriptors.ManifestElementDescriptor;
|
||||
import com.android.ide.eclipse.adt.internal.editors.uimodel.UiAttributeNode;
|
||||
import com.android.ide.eclipse.adt.internal.editors.uimodel.UiElementNode;
|
||||
import com.android.ide.eclipse.adt.internal.sdk.AndroidTargetData;
|
||||
import com.android.sdklib.SdkConstants;
|
||||
|
||||
import org.w3c.dom.Element;
|
||||
@@ -60,12 +61,17 @@ public final class UiManifestElementNode extends UiElementNode {
|
||||
*/
|
||||
@Override
|
||||
public String getShortDescription() {
|
||||
if (getXmlNode() != null &&
|
||||
AndroidTargetData target = getAndroidTarget();
|
||||
AndroidManifestDescriptors manifestDescriptors = null;
|
||||
if (target != null) {
|
||||
manifestDescriptors = target.getManifestDescriptors();
|
||||
}
|
||||
|
||||
if (manifestDescriptors != null &&
|
||||
getXmlNode() != null &&
|
||||
getXmlNode() instanceof Element &&
|
||||
getXmlNode().hasAttributes()) {
|
||||
|
||||
AndroidManifestDescriptors manifestDescriptors =
|
||||
getAndroidTarget().getManifestDescriptors();
|
||||
|
||||
// Application and Manifest nodes have a special treatment: they are unique nodes
|
||||
// so we don't bother trying to differentiate their strings and we fall back to
|
||||
|
||||
Reference in New Issue
Block a user