aboutsummaryrefslogtreecommitdiffstats
path: root/sdkmanager/libs/sdklib
diff options
context:
space:
mode:
authorRaphael <raphael@google.com>2011-10-13 22:43:49 -0700
committerRaphael <raphael@google.com>2011-10-13 22:43:49 -0700
commita0fcdd03d2a6475d59441443ec21888043514ca9 (patch)
tree1a69d958e8437e8765ba5aa1c822f70dff24937c /sdkmanager/libs/sdklib
parentd0babf526623d775506553f28972d05064856960 (diff)
downloadsdk-a0fcdd03d2a6475d59441443ec21888043514ca9.zip
sdk-a0fcdd03d2a6475d59441443ec21888043514ca9.tar.gz
sdk-a0fcdd03d2a6475d59441443ec21888043514ca9.tar.bz2
SDK Manager: fix duplicated Extra Packages.
Change-Id: I0518515a2095b63099cb69d67d110330b148d5a2
Diffstat (limited to 'sdkmanager/libs/sdklib')
-rwxr-xr-xsdkmanager/libs/sdklib/src/com/android/sdklib/internal/repository/Package.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/sdkmanager/libs/sdklib/src/com/android/sdklib/internal/repository/Package.java b/sdkmanager/libs/sdklib/src/com/android/sdklib/internal/repository/Package.java
index 57de740..b99da5c 100755
--- a/sdkmanager/libs/sdklib/src/com/android/sdklib/internal/repository/Package.java
+++ b/sdkmanager/libs/sdklib/src/com/android/sdklib/internal/repository/Package.java
@@ -23,6 +23,7 @@ import com.android.sdklib.SdkManager;
import com.android.sdklib.internal.repository.Archive.Arch;
import com.android.sdklib.internal.repository.Archive.Os;
import com.android.sdklib.repository.PkgProps;
+import com.android.sdklib.repository.SdkAddonConstants;
import com.android.sdklib.repository.SdkRepoConstants;
import org.w3c.dom.Node;
@@ -139,7 +140,11 @@ public abstract class Package implements IDescription, Comparable<Package> {
// a package comes from.
String srcUrl = getProperty(props, PkgProps.PKG_SOURCE_URL, null);
if (props != null && source == null && srcUrl != null) {
- if (this instanceof AddonPackage) {
+ // Both Addon and Extra packages can come from an addon source.
+ // For Extras, we can tell by looking at the source URL.
+ if (this instanceof AddonPackage ||
+ ((this instanceof ExtraPackage) &&
+ srcUrl.endsWith(SdkAddonConstants.URL_DEFAULT_FILENAME))) {
source = new SdkAddonSource(srcUrl, null /*uiName*/);
} else {
source = new SdkRepoSource(srcUrl, null /*uiName*/);