summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordaniel oeh <daniel.oeh@gmail.com>2013-08-17 18:51:30 +0200
committerdaniel oeh <daniel.oeh@gmail.com>2013-08-17 18:51:30 +0200
commitb9fbc48168dcf23456e86b8dfe045c57a3d56e6d (patch)
tree00277334d046a968e55e7dcaa07209c4d4717541 /src
parent7c4715128cdd301a354f3e5d3eee1f9db7e55419 (diff)
parentb1cdfe20416dc78349dc78b279f718076e07643c (diff)
downloadAntennaPod-b9fbc48168dcf23456e86b8dfe045c57a3d56e6d.zip
Merge branch 'findbugs' of git://github.com/andrewgaul/AntennaPod into andrewgaul-findbugs
Conflicts: src/de/danoeh/antennapod/activity/DownloadActivity.java src/de/danoeh/antennapod/asynctask/OpmlExportWorker.java src/de/danoeh/antennapod/feed/Feed.java src/de/danoeh/antennapod/feed/FeedItem.java src/de/danoeh/antennapod/feed/FeedMedia.java src/de/danoeh/antennapod/service/download/DownloadStatus.java src/de/danoeh/antennapod/storage/DownloadRequester.java src/de/danoeh/antennapod/storage/PodDBAdapter.java
Diffstat (limited to 'src')
-rw-r--r--src/de/danoeh/antennapod/activity/DirectoryChooserActivity.java8
-rw-r--r--src/de/danoeh/antennapod/activity/DownloadActivity.java4
-rw-r--r--src/de/danoeh/antennapod/activity/MiroGuideCategoryActivity.java2
-rw-r--r--src/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java2
-rw-r--r--src/de/danoeh/antennapod/activity/OpmlImportFromIntentActivity.java4
-rw-r--r--src/de/danoeh/antennapod/activity/OpmlImportFromPathActivity.java18
-rw-r--r--src/de/danoeh/antennapod/asynctask/BitmapDecodeWorkerTask.java2
-rw-r--r--src/de/danoeh/antennapod/asynctask/OpmlExportWorker.java16
-rw-r--r--src/de/danoeh/antennapod/asynctask/OpmlFeedQueuer.java3
-rw-r--r--src/de/danoeh/antennapod/feed/Feed.java24
-rw-r--r--src/de/danoeh/antennapod/feed/FeedItem.java12
-rw-r--r--src/de/danoeh/antennapod/feed/FeedMedia.java10
-rw-r--r--src/de/danoeh/antennapod/miroguide/conn/MiroGuideConnector.java14
-rw-r--r--src/de/danoeh/antennapod/miroguide/model/MiroGuideItem.java4
-rw-r--r--src/de/danoeh/antennapod/service/download/DownloadStatus.java6
-rw-r--r--src/de/danoeh/antennapod/service/download/HttpDownloader.java7
-rw-r--r--src/de/danoeh/antennapod/storage/DownloadRequester.java6
-rw-r--r--src/de/danoeh/antennapod/storage/PodDBAdapter.java3
-rw-r--r--src/de/danoeh/antennapod/syndication/namespace/atom/NSAtom.java2
-rw-r--r--src/de/danoeh/antennapod/syndication/util/SyndDateUtils.java8
-rw-r--r--src/de/danoeh/antennapod/util/LangUtils.java3
-rw-r--r--src/de/danoeh/antennapod/util/comparator/DownloadStatusComparator.java3
-rw-r--r--src/de/danoeh/antennapod/util/comparator/FeedItemPubdateComparator.java2
-rw-r--r--src/de/danoeh/antennapod/util/comparator/PlaybackCompletionDateComparator.java4
-rw-r--r--src/de/danoeh/antennapod/util/playback/ExternalMedia.java1
25 files changed, 112 insertions, 56 deletions
diff --git a/src/de/danoeh/antennapod/activity/DirectoryChooserActivity.java b/src/de/danoeh/antennapod/activity/DirectoryChooserActivity.java
index 984491174..62273c960 100644
--- a/src/de/danoeh/antennapod/activity/DirectoryChooserActivity.java
+++ b/src/de/danoeh/antennapod/activity/DirectoryChooserActivity.java
@@ -347,7 +347,9 @@ public class DirectoryChooserActivity extends ActionBarActivity {
* CREATE_DIRECTORY_NAME.
*/
private int createFolder() {
- if (selectedDir != null && selectedDir.canWrite()) {
+ if (selectedDir == null) {
+ return R.string.create_folder_error;
+ } else if (selectedDir.canWrite()) {
File newDir = new File(selectedDir, CREATE_DIRECTORY_NAME);
if (!newDir.exists()) {
boolean result = newDir.mkdir();
@@ -359,10 +361,8 @@ public class DirectoryChooserActivity extends ActionBarActivity {
} else {
return R.string.create_folder_error_already_exists;
}
- } else if (selectedDir.canWrite() == false) {
- return R.string.create_folder_error_no_write_access;
} else {
- return R.string.create_folder_error;
+ return R.string.create_folder_error_no_write_access;
}
}
diff --git a/src/de/danoeh/antennapod/activity/DownloadActivity.java b/src/de/danoeh/antennapod/activity/DownloadActivity.java
index 40c75d336..57c86f760 100644
--- a/src/de/danoeh/antennapod/activity/DownloadActivity.java
+++ b/src/de/danoeh/antennapod/activity/DownloadActivity.java
@@ -121,7 +121,7 @@ public class DownloadActivity extends ActionBarActivity implements
contentRefresher.cancel(true);
}
contentRefresher = new AsyncTask<Void, Void, Void>() {
- private final int WAITING_INTERVALL = 1000;
+ private static final int WAITING_INTERVAL = 1000;
@Override
protected void onProgressUpdate(Void... values) {
@@ -137,7 +137,7 @@ public class DownloadActivity extends ActionBarActivity implements
protected Void doInBackground(Void... params) {
while (!isCancelled()) {
try {
- Thread.sleep(WAITING_INTERVALL);
+ Thread.sleep(WAITING_INTERVAL);
publishProgress();
} catch (InterruptedException e) {
return null;
diff --git a/src/de/danoeh/antennapod/activity/MiroGuideCategoryActivity.java b/src/de/danoeh/antennapod/activity/MiroGuideCategoryActivity.java
index c039e96f8..e3d77a68a 100644
--- a/src/de/danoeh/antennapod/activity/MiroGuideCategoryActivity.java
+++ b/src/de/danoeh/antennapod/activity/MiroGuideCategoryActivity.java
@@ -22,7 +22,7 @@ import de.danoeh.antennapod.preferences.UserPreferences;
public class MiroGuideCategoryActivity extends ActionBarActivity {
private static final String TAG = "MiroGuideCategoryActivity";
- public static String EXTRA_CATEGORY = "category";
+ public static final String EXTRA_CATEGORY = "category";
private ViewPager viewpager;
private CategoryPagerAdapter pagerAdapter;
diff --git a/src/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java b/src/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java
index cb1c66cab..fbac7057d 100644
--- a/src/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java
+++ b/src/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java
@@ -157,7 +157,7 @@ public abstract class OnlineFeedViewActivity extends ActionBarActivity {
@Override
public void run() {
- String reasonDetailed = new String();
+ String reasonDetailed = "";
boolean successful = false;
FeedHandler handler = new FeedHandler();
try {
diff --git a/src/de/danoeh/antennapod/activity/OpmlImportFromIntentActivity.java b/src/de/danoeh/antennapod/activity/OpmlImportFromIntentActivity.java
index dc698a851..58e3a96dd 100644
--- a/src/de/danoeh/antennapod/activity/OpmlImportFromIntentActivity.java
+++ b/src/de/danoeh/antennapod/activity/OpmlImportFromIntentActivity.java
@@ -7,6 +7,7 @@ import java.net.URL;
import android.app.AlertDialog;
import android.os.Bundle;
import de.danoeh.antennapod.preferences.UserPreferences;
+import de.danoeh.antennapod.util.LangUtils;
/** Lets the user start the OPML-import process. */
public class OpmlImportFromIntentActivity extends OpmlImportBaseActivity {
@@ -20,7 +21,8 @@ public class OpmlImportFromIntentActivity extends OpmlImportBaseActivity {
try {
URL mOpmlURL = new URL(getIntent().getData().toString());
- BufferedReader in = new BufferedReader(new InputStreamReader(mOpmlURL.openStream()));
+ BufferedReader in = new BufferedReader(new InputStreamReader(mOpmlURL.openStream(),
+ LangUtils.UTF_8));
startImport(in);
} catch (Exception e) {
new AlertDialog.Builder(this).setMessage("Cannot open XML - Reason: " + e.getMessage()).show();
diff --git a/src/de/danoeh/antennapod/activity/OpmlImportFromPathActivity.java b/src/de/danoeh/antennapod/activity/OpmlImportFromPathActivity.java
index 259689abf..2aafb46db 100644
--- a/src/de/danoeh/antennapod/activity/OpmlImportFromPathActivity.java
+++ b/src/de/danoeh/antennapod/activity/OpmlImportFromPathActivity.java
@@ -1,8 +1,10 @@
package de.danoeh.antennapod.activity;
import java.io.File;
+import java.io.FileInputStream;
import java.io.FileNotFoundException;
-import java.io.FileReader;
+import java.io.InputStreamReader;
+import java.io.IOException;
import java.io.Reader;
import android.app.AlertDialog;
@@ -20,6 +22,7 @@ import android.widget.Toast;
import de.danoeh.antennapod.AppConfig;
import de.danoeh.antennapod.R;
import de.danoeh.antennapod.preferences.UserPreferences;
+import de.danoeh.antennapod.util.LangUtils;
import de.danoeh.antennapod.util.StorageUtils;
/**
@@ -125,13 +128,24 @@ public class OpmlImportFromPathActivity extends OpmlImportBaseActivity {
}
private void startImport(File file) {
+ Reader mReader = null;
try {
- Reader mReader = new FileReader(file);
+ mReader = new InputStreamReader(new FileInputStream(file),
+ LangUtils.UTF_8);
if (AppConfig.DEBUG) Log.d(TAG, "Parsing " + file.toString());
startImport(mReader);
} catch (FileNotFoundException e) {
Log.d(TAG, "File not found which really should be there");
// this should never happen as it is a file we have just chosen
+ } finally {
+ if (mReader != null) {
+ try {
+ mReader.close();
+ } catch (IOException ioe) {
+ Log.w(TAG, "IOException while importing OPML: " +
+ ioe.getMessage());
+ }
+ }
}
}
diff --git a/src/de/danoeh/antennapod/asynctask/BitmapDecodeWorkerTask.java b/src/de/danoeh/antennapod/asynctask/BitmapDecodeWorkerTask.java
index 4380bc6ea..7ba68ae22 100644
--- a/src/de/danoeh/antennapod/asynctask/BitmapDecodeWorkerTask.java
+++ b/src/de/danoeh/antennapod/asynctask/BitmapDecodeWorkerTask.java
@@ -47,7 +47,7 @@ public class BitmapDecodeWorkerTask extends Thread {
*/
protected boolean tagsMatching(ImageView target) {
return target.getTag() == null
- || target.getTag() == imageResource.getImageLoaderCacheKey();
+ || target.getTag().equals(imageResource.getImageLoaderCacheKey());
}
protected void onPostExecute() {
diff --git a/src/de/danoeh/antennapod/asynctask/OpmlExportWorker.java b/src/de/danoeh/antennapod/asynctask/OpmlExportWorker.java
index e14e22917..745bc7079 100644
--- a/src/de/danoeh/antennapod/asynctask/OpmlExportWorker.java
+++ b/src/de/danoeh/antennapod/asynctask/OpmlExportWorker.java
@@ -1,8 +1,9 @@
package de.danoeh.antennapod.asynctask;
import java.io.File;
-import java.io.FileWriter;
+import java.io.FileOutputStream;
import java.io.IOException;
+import java.io.OutputStreamWriter;
import java.util.Arrays;
import android.annotation.SuppressLint;
@@ -16,6 +17,7 @@ import de.danoeh.antennapod.PodcastApp;
import de.danoeh.antennapod.R;
import de.danoeh.antennapod.opml.OpmlWriter;
import de.danoeh.antennapod.preferences.UserPreferences;
+import de.danoeh.antennapod.util.LangUtils;
import de.danoeh.antennapod.storage.DBReader;
/** Writes an OPML file into the export directory in the background. */
@@ -49,13 +51,21 @@ public class OpmlExportWorker extends AsyncTask<Void, Void, Void> {
output.delete();
}
}
+ OutputStreamWriter writer = null;
try {
- FileWriter writer = new FileWriter(output);
+ writer = new OutputStreamWriter(new FileOutputStream(output), LangUtils.UTF_8);
opmlWriter.writeDocument(DBReader.getFeedList(context), writer);
- writer.close();
} catch (IOException e) {
e.printStackTrace();
exception = e;
+ } finally {
+ if (writer != null) {
+ try {
+ writer.close();
+ } catch (IOException ioe) {
+ exception = ioe;
+ }
+ }
}
return null;
}
diff --git a/src/de/danoeh/antennapod/asynctask/OpmlFeedQueuer.java b/src/de/danoeh/antennapod/asynctask/OpmlFeedQueuer.java
index 4d9c9867e..64e678086 100644
--- a/src/de/danoeh/antennapod/asynctask/OpmlFeedQueuer.java
+++ b/src/de/danoeh/antennapod/asynctask/OpmlFeedQueuer.java
@@ -1,5 +1,6 @@
package de.danoeh.antennapod.asynctask;
+import java.util.Arrays;
import java.util.Date;
import android.annotation.SuppressLint;
@@ -22,7 +23,7 @@ public class OpmlFeedQueuer extends AsyncTask<Void, Void, Void> {
public OpmlFeedQueuer(Context context, int[] selection) {
super();
this.context = context;
- this.selection = selection;
+ this.selection = Arrays.copyOf(selection, selection.length);
}
@Override
diff --git a/src/de/danoeh/antennapod/feed/Feed.java b/src/de/danoeh/antennapod/feed/Feed.java
index 34505dda9..445d4180d 100644
--- a/src/de/danoeh/antennapod/feed/Feed.java
+++ b/src/de/danoeh/antennapod/feed/Feed.java
@@ -55,7 +55,11 @@ public class Feed extends FeedFile {
super(fileUrl, downloadUrl, downloaded);
this.id = id;
this.title = title;
- this.lastUpdate = lastUpdate;
+ if (lastUpdate != null) {
+ this.lastUpdate = (Date) lastUpdate.clone();
+ } else {
+ this.lastUpdate = null;
+ }
this.link = link;
this.description = description;
this.paymentLink = paymentLink;
@@ -83,7 +87,11 @@ public class Feed extends FeedFile {
*/
public Feed(String url, Date lastUpdate) {
super(null, url, false);
- this.lastUpdate = lastUpdate;
+ if (lastUpdate != null) {
+ this.lastUpdate = lastUpdate;
+ } else {
+ this.lastUpdate = null;
+ }
}
/**
@@ -315,11 +323,19 @@ public class Feed extends FeedFile {
}
public Date getLastUpdate() {
- return lastUpdate;
+ if (lastUpdate != null) {
+ return (Date) lastUpdate.clone();
+ } else {
+ return null;
+ }
}
public void setLastUpdate(Date lastUpdate) {
- this.lastUpdate = lastUpdate;
+ if (lastUpdate != null) {
+ this.lastUpdate = (Date) lastUpdate.clone();
+ } else {
+ this.lastUpdate = null;
+ }
}
public String getFeedIdentifier() {
diff --git a/src/de/danoeh/antennapod/feed/FeedItem.java b/src/de/danoeh/antennapod/feed/FeedItem.java
index 54682397e..60bfdc73c 100644
--- a/src/de/danoeh/antennapod/feed/FeedItem.java
+++ b/src/de/danoeh/antennapod/feed/FeedItem.java
@@ -123,11 +123,19 @@ public class FeedItem extends FeedComponent implements
}
public Date getPubDate() {
- return pubDate;
+ if (pubDate != null) {
+ return (Date) pubDate.clone();
+ } else {
+ return null;
+ }
}
public void setPubDate(Date pubDate) {
- this.pubDate = pubDate;
+ if (pubDate != null) {
+ this.pubDate = (Date) pubDate.clone();
+ } else {
+ this.pubDate = null;
+ }
}
public FeedMedia getMedia() {
diff --git a/src/de/danoeh/antennapod/feed/FeedMedia.java b/src/de/danoeh/antennapod/feed/FeedMedia.java
index f140a37e6..55b0f81ef 100644
--- a/src/de/danoeh/antennapod/feed/FeedMedia.java
+++ b/src/de/danoeh/antennapod/feed/FeedMedia.java
@@ -53,7 +53,8 @@ public class FeedMedia extends FeedFile implements Playable {
this.position = position;
this.size = size;
this.mime_type = mime_type;
- this.playbackCompletionDate = playbackCompletionDate;
+ this.playbackCompletionDate = playbackCompletionDate == null
+ ? null : (Date) playbackCompletionDate.clone();
}
public FeedMedia(long id, FeedItem item) {
@@ -169,11 +170,12 @@ public class FeedMedia extends FeedFile implements Playable {
}
public Date getPlaybackCompletionDate() {
- return playbackCompletionDate;
- }
+ return playbackCompletionDate == null
+ ? null : (Date) playbackCompletionDate.clone(); }
public void setPlaybackCompletionDate(Date playbackCompletionDate) {
- this.playbackCompletionDate = playbackCompletionDate;
+ this.playbackCompletionDate = playbackCompletionDate == null
+ ? null : (Date) playbackCompletionDate.clone();
}
public boolean isInProgress() {
diff --git a/src/de/danoeh/antennapod/miroguide/conn/MiroGuideConnector.java b/src/de/danoeh/antennapod/miroguide/conn/MiroGuideConnector.java
index 99bef4bd8..ee1a3ea21 100644
--- a/src/de/danoeh/antennapod/miroguide/conn/MiroGuideConnector.java
+++ b/src/de/danoeh/antennapod/miroguide/conn/MiroGuideConnector.java
@@ -16,6 +16,8 @@ import org.json.JSONObject;
import android.net.Uri;
+import de.danoeh.antennapod.util.LangUtils;
+
/** Executes HTTP requests and returns the results. */
public class MiroGuideConnector {
private HttpClient httpClient;
@@ -73,12 +75,14 @@ public class MiroGuideConnector {
if (response.getStatusLine().getStatusCode() == 200) {
HttpEntity entity = response.getEntity();
if (entity != null) {
- InputStream in = entity.getContent();
-
BufferedReader reader = new BufferedReader(
- new InputStreamReader(in));
- result = reader.readLine();
- in.close();
+ new InputStreamReader(entity.getContent(),
+ LangUtils.UTF_8));
+ try {
+ result = reader.readLine();
+ } finally {
+ reader.close();
+ }
}
} else {
throw new MiroGuideException(response.getStatusLine()
diff --git a/src/de/danoeh/antennapod/miroguide/model/MiroGuideItem.java b/src/de/danoeh/antennapod/miroguide/model/MiroGuideItem.java
index 89a2250df..cb5b15c56 100644
--- a/src/de/danoeh/antennapod/miroguide/model/MiroGuideItem.java
+++ b/src/de/danoeh/antennapod/miroguide/model/MiroGuideItem.java
@@ -12,7 +12,7 @@ public class MiroGuideItem {
super();
this.name = name;
this.description = description;
- this.date = date;
+ this.date = (Date) date.clone();
this.url = url;
}
@@ -30,7 +30,7 @@ public class MiroGuideItem {
}
public Date getDate() {
- return date;
+ return (Date) date.clone();
}
public String getUrl() {
diff --git a/src/de/danoeh/antennapod/service/download/DownloadStatus.java b/src/de/danoeh/antennapod/service/download/DownloadStatus.java
index 62e54cbb4..8be73a8ae 100644
--- a/src/de/danoeh/antennapod/service/download/DownloadStatus.java
+++ b/src/de/danoeh/antennapod/service/download/DownloadStatus.java
@@ -52,7 +52,7 @@ public class DownloadStatus {
this.feedfileId = feedfileId;
this.reason = reason;
this.successful = successful;
- this.completionDate = completionDate;
+ this.completionDate = (Date) completionDate.clone();
this.reasonDetailed = reasonDetailed;
this.feedfileType = feedfileType;
}
@@ -133,7 +133,7 @@ public class DownloadStatus {
}
public Date getCompletionDate() {
- return completionDate;
+ return (Date) completionDate.clone();
}
public long getFeedfileId() {
@@ -172,7 +172,7 @@ public class DownloadStatus {
}
public void setCompletionDate(Date completionDate) {
- this.completionDate = completionDate;
+ this.completionDate = (Date) completionDate.clone();
}
public void setId(long id) {
diff --git a/src/de/danoeh/antennapod/service/download/HttpDownloader.java b/src/de/danoeh/antennapod/service/download/HttpDownloader.java
index 364844181..972b83c61 100644
--- a/src/de/danoeh/antennapod/service/download/HttpDownloader.java
+++ b/src/de/danoeh/antennapod/service/download/HttpDownloader.java
@@ -74,9 +74,8 @@ public class HttpDownloader extends Downloader {
if (StorageUtils.storageAvailable(PodcastApp.getInstance())) {
File destination = new File(request.getDestination());
if (!destination.exists()) {
- connection = AndroidHttpClient
- .getUngzippedContent(httpEntity);
- InputStream in = new BufferedInputStream(connection);
+ connection = new BufferedInputStream(AndroidHttpClient
+ .getUngzippedContent(httpEntity));
out = new BufferedOutputStream(new FileOutputStream(
destination));
byte[] buffer = new byte[BUFFER_SIZE];
@@ -99,7 +98,7 @@ public class HttpDownloader extends Downloader {
if (AppConfig.DEBUG)
Log.d(TAG, "Starting download");
while (!cancelled
- && (count = in.read(buffer)) != -1) {
+ && (count = connection.read(buffer)) != -1) {
out.write(buffer, 0, count);
request.setSoFar(request.getSoFar() + count);
request.setProgressPercent((int) (((double) request
diff --git a/src/de/danoeh/antennapod/storage/DownloadRequester.java b/src/de/danoeh/antennapod/storage/DownloadRequester.java
index 246b8bdfd..e242022bc 100644
--- a/src/de/danoeh/antennapod/storage/DownloadRequester.java
+++ b/src/de/danoeh/antennapod/storage/DownloadRequester.java
@@ -26,9 +26,9 @@ import de.danoeh.antennapod.util.URLChecker;
public class DownloadRequester {
private static final String TAG = "DownloadRequester";
- public static String IMAGE_DOWNLOADPATH = "images/";
- public static String FEED_DOWNLOADPATH = "cache/";
- public static String MEDIA_DOWNLOADPATH = "media/";
+ public static final String IMAGE_DOWNLOADPATH = "images/";
+ public static final String FEED_DOWNLOADPATH = "cache/";
+ public static final String MEDIA_DOWNLOADPATH = "media/";
private static DownloadRequester downloader;
diff --git a/src/de/danoeh/antennapod/storage/PodDBAdapter.java b/src/de/danoeh/antennapod/storage/PodDBAdapter.java
index 78b4c6daa..317035017 100644
--- a/src/de/danoeh/antennapod/storage/PodDBAdapter.java
+++ b/src/de/danoeh/antennapod/storage/PodDBAdapter.java
@@ -10,7 +10,6 @@ import android.database.DatabaseUtils;
import android.database.MergeCursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
-import android.database.sqlite.SQLiteStatement;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
@@ -235,7 +234,7 @@ public class PodDBAdapter {
/**
* Select id, description and content-encoded column from feeditems.
*/
- public static final String[] SEL_FI_EXTRA = {KEY_ID, KEY_DESCRIPTION,
+ private static final String[] SEL_FI_EXTRA = {KEY_ID, KEY_DESCRIPTION,
KEY_CONTENT_ENCODED, KEY_FEED};
// column indices for SEL_FI_EXTRA
diff --git a/src/de/danoeh/antennapod/syndication/namespace/atom/NSAtom.java b/src/de/danoeh/antennapod/syndication/namespace/atom/NSAtom.java
index 1efaac359..bcb0422ce 100644
--- a/src/de/danoeh/antennapod/syndication/namespace/atom/NSAtom.java
+++ b/src/de/danoeh/antennapod/syndication/namespace/atom/NSAtom.java
@@ -121,7 +121,7 @@ public class NSAtom extends Namespace {
if (state.getContentBuf() != null) {
content = state.getContentBuf().toString();
} else {
- content = new String();
+ content = "";
}
SyndElement topElement = state.getTagstack().peek();
String top = topElement.getName();
diff --git a/src/de/danoeh/antennapod/syndication/util/SyndDateUtils.java b/src/de/danoeh/antennapod/syndication/util/SyndDateUtils.java
index 30835434f..a1ed01354 100644
--- a/src/de/danoeh/antennapod/syndication/util/SyndDateUtils.java
+++ b/src/de/danoeh/antennapod/syndication/util/SyndDateUtils.java
@@ -11,7 +11,7 @@ import android.util.Log;
public class SyndDateUtils {
private static final String TAG = "DateUtils";
- public static final String[] RFC822DATES = { "dd MMM yy HH:mm:ss Z", };
+ private static final String[] RFC822DATES = { "dd MMM yy HH:mm:ss Z", };
/** RFC 3339 date format for UTC dates. */
public static final String RFC3339UTC = "yyyy-MM-dd'T'HH:mm:ss'Z'";
@@ -123,12 +123,12 @@ public class SyndDateUtils {
int idx = 0;
if (parts.length == 3) {
// string has hours
- result += Integer.valueOf(parts[idx]) * 3600000;
+ result += Integer.valueOf(parts[idx]) * 3600000L;
idx++;
}
- result += Integer.valueOf(parts[idx]) * 60000;
+ result += Integer.valueOf(parts[idx]) * 60000L;
idx++;
- result += (Float.valueOf(parts[idx])) * 1000;
+ result += (Float.valueOf(parts[idx])) * 1000L;
return result;
}
}
diff --git a/src/de/danoeh/antennapod/util/LangUtils.java b/src/de/danoeh/antennapod/util/LangUtils.java
index 53f8de773..e6e1d8399 100644
--- a/src/de/danoeh/antennapod/util/LangUtils.java
+++ b/src/de/danoeh/antennapod/util/LangUtils.java
@@ -1,8 +1,11 @@
package de.danoeh.antennapod.util;
+import java.nio.charset.Charset;
import java.util.HashMap;
public class LangUtils {
+ public static final Charset UTF_8 = Charset.forName("UTF-8");
+
private static HashMap<String, String> languages;
static {
languages = new HashMap<String, String>();
diff --git a/src/de/danoeh/antennapod/util/comparator/DownloadStatusComparator.java b/src/de/danoeh/antennapod/util/comparator/DownloadStatusComparator.java
index 2cfe52364..d0561252f 100644
--- a/src/de/danoeh/antennapod/util/comparator/DownloadStatusComparator.java
+++ b/src/de/danoeh/antennapod/util/comparator/DownloadStatusComparator.java
@@ -9,8 +9,7 @@ public class DownloadStatusComparator implements Comparator<DownloadStatus> {
@Override
public int compare(DownloadStatus lhs, DownloadStatus rhs) {
- return -lhs.getCompletionDate().compareTo(rhs.getCompletionDate());
-
+ return rhs.getCompletionDate().compareTo(lhs.getCompletionDate());
}
}
diff --git a/src/de/danoeh/antennapod/util/comparator/FeedItemPubdateComparator.java b/src/de/danoeh/antennapod/util/comparator/FeedItemPubdateComparator.java
index b9ee6c07e..c95c0833c 100644
--- a/src/de/danoeh/antennapod/util/comparator/FeedItemPubdateComparator.java
+++ b/src/de/danoeh/antennapod/util/comparator/FeedItemPubdateComparator.java
@@ -13,7 +13,7 @@ public class FeedItemPubdateComparator implements Comparator<FeedItem> {
}*/
@Override
public int compare(FeedItem lhs, FeedItem rhs) {
- return -lhs.getPubDate().compareTo(rhs.getPubDate());
+ return rhs.getPubDate().compareTo(lhs.getPubDate());
}
}
diff --git a/src/de/danoeh/antennapod/util/comparator/PlaybackCompletionDateComparator.java b/src/de/danoeh/antennapod/util/comparator/PlaybackCompletionDateComparator.java
index 2d0ce75ca..434a5a956 100644
--- a/src/de/danoeh/antennapod/util/comparator/PlaybackCompletionDateComparator.java
+++ b/src/de/danoeh/antennapod/util/comparator/PlaybackCompletionDateComparator.java
@@ -11,8 +11,8 @@ public class PlaybackCompletionDateComparator implements Comparator<FeedItem> {
&& lhs.getMedia().getPlaybackCompletionDate() != null
&& rhs.getMedia() != null
&& rhs.getMedia().getPlaybackCompletionDate() != null) {
- return -lhs.getMedia().getPlaybackCompletionDate()
- .compareTo(rhs.getMedia().getPlaybackCompletionDate());
+ return rhs.getMedia().getPlaybackCompletionDate()
+ .compareTo(lhs.getMedia().getPlaybackCompletionDate());
}
return 0;
}
diff --git a/src/de/danoeh/antennapod/util/playback/ExternalMedia.java b/src/de/danoeh/antennapod/util/playback/ExternalMedia.java
index c08b221f9..e937ee437 100644
--- a/src/de/danoeh/antennapod/util/playback/ExternalMedia.java
+++ b/src/de/danoeh/antennapod/util/playback/ExternalMedia.java
@@ -25,7 +25,6 @@ public class ExternalMedia implements Playable {
private String episodeTitle;
private String feedTitle;
- private String shownotes;
private MediaType mediaType = MediaType.AUDIO;
private List<Chapter> chapters;
private int duration;