From f7ecad1f4f38b6349aaa39a8463ab74e4dca8999 Mon Sep 17 00:00:00 2001 From: Joel Moniz Date: Sat, 31 Jan 2015 02:01:35 +0530 Subject: [PATCH] contributions.txt now gets deleted and recreated instead of overwritten --- .../processing/app/contrib/ContributionListing.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/app/src/processing/app/contrib/ContributionListing.java b/app/src/processing/app/contrib/ContributionListing.java index 16b4321b4..5c92da186 100644 --- a/app/src/processing/app/contrib/ContributionListing.java +++ b/app/src/processing/app/contrib/ContributionListing.java @@ -23,6 +23,7 @@ package processing.app.contrib; import java.io.*; import java.net.*; +import java.nio.file.Files; import java.util.*; import java.util.concurrent.locks.ReentrantLock; @@ -385,8 +386,16 @@ public class ContributionListing { } if (!progress.isFinished()) { - ContributionManager.download(url, listingFile, progress); + File tempContribFile = Base.getSettingsFile("contributions_temp.txt"); + tempContribFile.setWritable(true); + ContributionManager.download(url, tempContribFile, progress); if (!progress.isCanceled() && !progress.isError()) { + try { + Files.deleteIfExists(listingFile.toPath()); + listingFile = new File(Files.move(tempContribFile.toPath(), tempContribFile.toPath().resolveSibling(listingFile.toPath())).toString()); + } catch (IOException e) { + e.printStackTrace(); + } hasDownloadedLatestList = true; hasListDownloadFailed = false; setAdvertisedList(listingFile);