Compare commits

..

2 Commits
v0.62 ... v0.63

Author SHA1 Message Date
Fredrik Fornwall
89048274dd Bump version to 0.63 2018-06-25 14:08:50 +02:00
Leonid Plyushch
d3b4d35b2a deleteFolder(): don't treat symlinks as directory 2018-06-25 14:08:28 +02:00
2 changed files with 10 additions and 5 deletions

View File

@@ -13,8 +13,8 @@ android {
applicationId "com.termux" applicationId "com.termux"
minSdkVersion 21 minSdkVersion 21
targetSdkVersion 27 targetSdkVersion 27
versionCode 62 versionCode 63
versionName "0.62" versionName "0.63"
} }
buildTypes { buildTypes {

View File

@@ -21,6 +21,7 @@ import com.termux.terminal.EmulatorDebug;
import java.io.BufferedReader; import java.io.BufferedReader;
import java.io.File; import java.io.File;
import java.io.FileOutputStream; import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader; import java.io.InputStreamReader;
import java.net.MalformedURLException; import java.net.MalformedURLException;
import java.net.URL; import java.net.URL;
@@ -209,11 +210,15 @@ final class TermuxInstaller {
} }
/** Delete a folder and all its content or throw. */ /** Delete a folder and all its content or throw. */
static void deleteFolder(File fileOrDirectory) { static void deleteFolder(File fileOrDirectory) throws IOException {
File[] children = fileOrDirectory.listFiles(); File[] children = fileOrDirectory.listFiles();
if (children != null) { if (children != null) {
for (File child : children) { for (File child : children) {
deleteFolder(child); if (child.getCanonicalFile().equals(child.getAbsoluteFile())) {
deleteFolder(child);
} else {
child.delete();
}
} }
} }
if (!fileOrDirectory.delete()) { if (!fileOrDirectory.delete()) {
@@ -231,7 +236,7 @@ final class TermuxInstaller {
if (storageDir.exists()) { if (storageDir.exists()) {
try { try {
deleteFolder(storageDir); deleteFolder(storageDir);
} catch (Exception e) { } catch (IOException e) {
Log.e(LOG_TAG, "Could not delete old $HOME/storage, " + e.getMessage()); Log.e(LOG_TAG, "Could not delete old $HOME/storage, " + e.getMessage());
return; return;
} }