diff options
author | Samuel Tardieu <sam@rfc1149.net> | 2014-11-23 18:05:37 +0100 |
---|---|---|
committer | Samuel Tardieu <sam@rfc1149.net> | 2014-11-23 18:05:37 +0100 |
commit | 8ce5d428ed3737835f72c6e0169733d15f58d8eb (patch) | |
tree | 108cc1d21ebaaf26cb2ff7efebafa870ef8c0ae7 /main/src/cgeo/geocaching/settings/RegisterSend2CgeoPreference.java | |
parent | 63db6f1279b428ecd565aafe5ba0b112a4f7587a (diff) | |
download | cgeo-8ce5d428ed3737835f72c6e0169733d15f58d8eb.zip cgeo-8ce5d428ed3737835f72c6e0169733d15f58d8eb.tar.gz cgeo-8ce5d428ed3737835f72c6e0169733d15f58d8eb.tar.bz2 |
Protect against NPE when retrieving send2cgeo information
If there is an encoding error in the response, Network.getResponseData
will return null, which will in turn be returned by StringUtils.split.
There is no need to add more logging as the failure to retrieve the
response data will have been logged already.
Diffstat (limited to 'main/src/cgeo/geocaching/settings/RegisterSend2CgeoPreference.java')
-rw-r--r-- | main/src/cgeo/geocaching/settings/RegisterSend2CgeoPreference.java | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/main/src/cgeo/geocaching/settings/RegisterSend2CgeoPreference.java b/main/src/cgeo/geocaching/settings/RegisterSend2CgeoPreference.java index 93480ee..1e8e00a 100644 --- a/main/src/cgeo/geocaching/settings/RegisterSend2CgeoPreference.java +++ b/main/src/cgeo/geocaching/settings/RegisterSend2CgeoPreference.java @@ -67,11 +67,13 @@ public class RegisterSend2CgeoPreference extends AbstractClickablePreference { if (response != null && response.getStatusLine().getStatusCode() == 200) { //response was OK final String[] strings = StringUtils.split(Network.getResponseData(response), ','); - Settings.setWebNameCode(nam, strings[0]); - try { - return Observable.just(Integer.parseInt(strings[1].trim())); - } catch (final Exception e) { - Log.e("RegisterSend2CgeoPreference", e); + if (strings != null) { + Settings.setWebNameCode(nam, strings[0]); + try { + return Observable.just(Integer.parseInt(strings[1].trim())); + } catch (final Exception e) { + Log.e("RegisterSend2CgeoPreference", e); + } } } |