diff options
| author | Bananeweizen <bananeweizen@gmx.de> | 2013-09-15 22:12:16 +0200 |
|---|---|---|
| committer | Bananeweizen <bananeweizen@gmx.de> | 2013-09-15 22:12:29 +0200 |
| commit | a6857b4a40f991c5f99f728ae734c0a8962f14a2 (patch) | |
| tree | ed89e48f474377c4ba5d226208feb0ba776b4dd4 /main | |
| parent | 6d12ab946352b92d6a6d51c8d458e521861aa589 (diff) | |
| download | cgeo-a6857b4a40f991c5f99f728ae734c0a8962f14a2.zip cgeo-a6857b4a40f991c5f99f728ae734c0a8962f14a2.tar.gz cgeo-a6857b4a40f991c5f99f728ae734c0a8962f14a2.tar.bz2 | |
avoid exception on log parsing for non logged in user
Diffstat (limited to 'main')
| -rw-r--r-- | main/src/cgeo/geocaching/connector/gc/GCParser.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/main/src/cgeo/geocaching/connector/gc/GCParser.java b/main/src/cgeo/geocaching/connector/gc/GCParser.java index 9c9e06d..71f8045 100644 --- a/main/src/cgeo/geocaching/connector/gc/GCParser.java +++ b/main/src/cgeo/geocaching/connector/gc/GCParser.java @@ -34,6 +34,7 @@ import cgeo.geocaching.utils.MatcherWrapper; import cgeo.geocaching.utils.TextUtils; import ch.boye.httpclientandroidlib.HttpResponse; + import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.StringEscapeUtils; @@ -1604,8 +1605,17 @@ public abstract class GCParser { rawResponse = TextUtils.getMatch(page, GCConstants.PATTERN_LOGBOOK, ""); } + return parseLogs(friends, rawResponse); + } + + private static List<LogEntry> parseLogs(final boolean friends, String rawResponse) { final List<LogEntry> logs = new ArrayList<LogEntry>(); + // for non logged in users the log book is not shown + if (StringUtils.isBlank(rawResponse)) { + return logs; + } + try { final JSONObject resp = new JSONObject(rawResponse); if (!resp.getString("status").equals("success")) { |
