summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/src/main/java/de/danoeh/antennapod/activity/AudioplayerActivity.java4
-rw-r--r--app/src/main/java/de/danoeh/antennapod/activity/FeedInfoActivity.java6
-rw-r--r--app/src/main/java/de/danoeh/antennapod/activity/StorageErrorActivity.java3
-rw-r--r--app/src/main/java/de/danoeh/antennapod/activity/gpoddernet/GpodnetAuthenticationActivity.java11
-rw-r--r--app/src/main/java/de/danoeh/antennapod/preferences/PreferenceController.java3
-rw-r--r--core/src/main/java/de/danoeh/antennapod/core/storage/DBTasks.java7
6 files changed, 24 insertions, 10 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/activity/AudioplayerActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/AudioplayerActivity.java
index 4733c2558..292f3d9b6 100644
--- a/app/src/main/java/de/danoeh/antennapod/activity/AudioplayerActivity.java
+++ b/app/src/main/java/de/danoeh/antennapod/activity/AudioplayerActivity.java
@@ -106,7 +106,9 @@ public class AudioplayerActivity extends MediaplayerActivity implements NavDrawe
protected void onStop() {
super.onStop();
Log.d(TAG, "onStop()");
- pagerAdapter.setController(null);
+ if(pagerAdapter != null) {
+ pagerAdapter.setController(null);
+ }
if(subscription != null) {
subscription.unsubscribe();
}
diff --git a/app/src/main/java/de/danoeh/antennapod/activity/FeedInfoActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/FeedInfoActivity.java
index 805d82cf9..d4356719e 100644
--- a/app/src/main/java/de/danoeh/antennapod/activity/FeedInfoActivity.java
+++ b/app/src/main/java/de/danoeh/antennapod/activity/FeedInfoActivity.java
@@ -239,7 +239,11 @@ public class FeedInfoActivity extends ActionBarActivity {
}
}
};
- loadTask.execute(feedId);
+ if (android.os.Build.VERSION.SDK_INT > android.os.Build.VERSION_CODES.GINGERBREAD_MR1) {
+ loadTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, feedId);
+ } else {
+ loadTask.execute(feedId);
+ }
}
diff --git a/app/src/main/java/de/danoeh/antennapod/activity/StorageErrorActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/StorageErrorActivity.java
index e980764ec..f22507f4c 100644
--- a/app/src/main/java/de/danoeh/antennapod/activity/StorageErrorActivity.java
+++ b/app/src/main/java/de/danoeh/antennapod/activity/StorageErrorActivity.java
@@ -132,7 +132,8 @@ public class StorageErrorActivity extends AppCompatActivity {
List<String> folders = new ArrayList<>(mediaDirs.length);
List<CharSequence> choices = new ArrayList<>(mediaDirs.length);
for(int i=0; i < mediaDirs.length; i++) {
- if(mediaDirs[i] == null) {
+ File dir = mediaDirs[i];
+ if(dir == null || !dir.exists() || !dir.canRead() || !dir.canWrite()) {
continue;
}
String path = mediaDirs[i].getAbsolutePath();
diff --git a/app/src/main/java/de/danoeh/antennapod/activity/gpoddernet/GpodnetAuthenticationActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/gpoddernet/GpodnetAuthenticationActivity.java
index 738fefb24..d46a3d6c2 100644
--- a/app/src/main/java/de/danoeh/antennapod/activity/gpoddernet/GpodnetAuthenticationActivity.java
+++ b/app/src/main/java/de/danoeh/antennapod/activity/gpoddernet/GpodnetAuthenticationActivity.java
@@ -121,7 +121,7 @@ public class GpodnetAuthenticationActivity extends ActionBarActivity {
final String passwordStr = password.getText().toString();
if (BuildConfig.DEBUG) Log.d(TAG, "Checking login credentials");
- new AsyncTask<GpodnetService, Void, Void>() {
+ AsyncTask<GpodnetService, Void, Void> authTask = new AsyncTask<GpodnetService, Void, Void>() {
volatile Exception exception;
@@ -143,7 +143,7 @@ public class GpodnetAuthenticationActivity extends ActionBarActivity {
if (exception == null) {
advance();
} else {
- txtvError.setText(exception.getMessage());
+ txtvError.setText(exception.getCause().getMessage());
txtvError.setVisibility(View.VISIBLE);
}
}
@@ -160,7 +160,12 @@ public class GpodnetAuthenticationActivity extends ActionBarActivity {
}
return null;
}
- }.execute(service);
+ };
+ if (android.os.Build.VERSION.SDK_INT > android.os.Build.VERSION_CODES.GINGERBREAD_MR1) {
+ authTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, service);
+ } else {
+ authTask.execute();
+ }
}
});
}
diff --git a/app/src/main/java/de/danoeh/antennapod/preferences/PreferenceController.java b/app/src/main/java/de/danoeh/antennapod/preferences/PreferenceController.java
index 23534e4f8..3c1332e33 100644
--- a/app/src/main/java/de/danoeh/antennapod/preferences/PreferenceController.java
+++ b/app/src/main/java/de/danoeh/antennapod/preferences/PreferenceController.java
@@ -819,7 +819,8 @@ public class PreferenceController implements SharedPreferences.OnSharedPreferenc
List<String> folders = new ArrayList<>(mediaDirs.length);
List<CharSequence> choices = new ArrayList<>(mediaDirs.length);
for(int i=0; i < mediaDirs.length; i++) {
- if(mediaDirs[i] == null) {
+ File dir = mediaDirs[i];
+ if(dir == null || !dir.exists() || !dir.canRead() || !dir.canWrite()) {
continue;
}
String path = mediaDirs[i].getAbsolutePath();
diff --git a/core/src/main/java/de/danoeh/antennapod/core/storage/DBTasks.java b/core/src/main/java/de/danoeh/antennapod/core/storage/DBTasks.java
index 47e2d8a26..75bbd4adc 100644
--- a/core/src/main/java/de/danoeh/antennapod/core/storage/DBTasks.java
+++ b/core/src/main/java/de/danoeh/antennapod/core/storage/DBTasks.java
@@ -577,12 +577,13 @@ public final class DBTasks {
item.setAutoDownload(savedFeed.getPreferences().getAutoDownload());
savedFeed.getItems().add(idx, item);
- // only mark the item new if it actually occurs
- // before the most recent item (before we started adding things)
+ // only mark the item new if it was published after or at the same time
+ // as the most recent item
// (if the most recent date is null then we can assume there are no items
// and this is the first, hence 'new')
if (priorMostRecentDate == null ||
- priorMostRecentDate.before(item.getPubDate())) {
+ priorMostRecentDate.before(item.getPubDate()) ||
+ priorMostRecentDate.equals(item.getPubDate())) {
Log.d(TAG, "Marking item published on " + item.getPubDate() +
" new, prior most recent date = " + priorMostRecentDate);
item.setNew();