The same, but clearer and less code?
This commit is contained in:
parent
95bca18bd3
commit
f5d8419d69
@ -223,8 +223,10 @@ public class RepoXMLHandler extends DefaultHandler {
|
||||
|
||||
public static boolean doUpdates(Context ctx, DB db) {
|
||||
long startTime = System.currentTimeMillis();
|
||||
boolean success = true;
|
||||
boolean success = false;
|
||||
db.beginUpdate();
|
||||
try
|
||||
{
|
||||
Vector<DB.Repo> repos = db.getRepos();
|
||||
for (DB.Repo repo : repos) {
|
||||
if (repo.inuse) {
|
||||
@ -263,12 +265,12 @@ public class RepoXMLHandler extends DefaultHandler {
|
||||
jar.close();
|
||||
if (certs == null) {
|
||||
Log.d("FDroid", "No signature found in index");
|
||||
return success = false;
|
||||
return false;
|
||||
}
|
||||
if (certs.length != 1) {
|
||||
Log.d("FDroid", "Expected one signature - found "
|
||||
+ certs.length);
|
||||
return success = false;
|
||||
return false;
|
||||
}
|
||||
|
||||
byte[] sig = certs[0].getEncoded();
|
||||
@ -286,7 +288,7 @@ public class RepoXMLHandler extends DefaultHandler {
|
||||
|
||||
if (!ssig.equals(repo.pubkey)) {
|
||||
Log.d("FDroid", "Index signature mismatch");
|
||||
return success = false;
|
||||
return false;
|
||||
}
|
||||
|
||||
} else {
|
||||
@ -325,21 +327,24 @@ public class RepoXMLHandler extends DefaultHandler {
|
||||
} catch (Exception e) {
|
||||
Log.e("FDroid", "Exception updating from " + repo.address
|
||||
+ ":\n" + Log.getStackTraceString(e));
|
||||
return success = false;
|
||||
return false;
|
||||
} finally {
|
||||
ctx.deleteFile("tempindex.xml");
|
||||
ctx.deleteFile("tempindex.jar");
|
||||
if (!success)
|
||||
db.cancelUpdate();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
success=true;
|
||||
db.endUpdate();
|
||||
Log.d("FDroid", "Update completed in "
|
||||
+ ((System.currentTimeMillis() - startTime) / 1000)
|
||||
+ " seconds.");
|
||||
return true;
|
||||
} finally {
|
||||
if(!success)
|
||||
db.cancelUpdate();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user