From a96621c6ecde24be740e7237507c48f72236cd65 Mon Sep 17 00:00:00 2001 From: Dimitri Rusin Date: Thu, 12 Jul 2018 20:34:55 +0000 Subject: [PATCH] renamed to additional_repos.xml, now collects them on all custom partitions --- .../java/org/fdroid/fdroid/data/DBHelper.java | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/org/fdroid/fdroid/data/DBHelper.java b/app/src/main/java/org/fdroid/fdroid/data/DBHelper.java index 405efedec..564ed0186 100644 --- a/app/src/main/java/org/fdroid/fdroid/data/DBHelper.java +++ b/app/src/main/java/org/fdroid/fdroid/data/DBHelper.java @@ -57,7 +57,6 @@ import org.xmlpull.v1.*; public class DBHelper extends SQLiteOpenHelper { private static final String TAG = "DBHelper"; - public static final int REPO_XML_ARG_COUNT = 8; private static DBHelper instance; @@ -245,6 +244,7 @@ public class DBHelper extends SQLiteOpenHelper { @Override public void onCreate(SQLiteDatabase db) { + db.execSQL(CREATE_TABLE_PACKAGE); db.execSQL(CREATE_TABLE_APP_METADATA); db.execSQL(CREATE_TABLE_APK); @@ -290,20 +290,19 @@ public class DBHelper extends SQLiteOpenHelper { } /* - * Look for external repositories under { "/oem", "/odm", "/vendor", "/system" } in this order and only load the first one. + * Look for external repositories under { "/oem", "/odm", "/vendor", "/system" } * If ROOT is one of those paths and 'packageName' is the name of the package - * that contains this class, then we look under 'root'/etc/'packageName'/default_repos.xml + * that contains this class, then we look under 'root'/etc/'packageName'/additional_repos.xml */ private List loadDefaultReposExternal() { + List externalRepos = new LinkedList<>(); final String packageName = context.getPackageName(); for (String root : Arrays.asList("/oem", "/odm", "/vendor", "/system")) { - String defaultReposPath = root + "/etc/" + packageName + "/default_repos.xml"; + String defaultReposPath = root + "/etc/" + packageName + "/additional_repos.xml"; try { File defaultReposFile = new File(defaultReposPath); - - // Only try loading external repos once. Even if this one fails, we will not try the other roots if (defaultReposFile.exists() && defaultReposFile.isFile()) { - return parseXmlRepos(defaultReposFile); + externalRepos.addAll(parseXmlRepos(defaultReposFile)); } } catch (Exception e) { Utils.debugLog(TAG, "Error loading " + defaultReposPath); @@ -311,7 +310,7 @@ public class DBHelper extends SQLiteOpenHelper { break; } } - return new LinkedList<>(); + return externalRepos; } private List parseXmlRepos(File defaultReposFile) throws IOException, XmlPullParserException {