X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/261aaf50019732a4e766d6b3e9e07576a64f5504..5fc7cd13e7e561ef528e12d2fa088b58e35e00d0:/src/com/owncloud/android/ui/dialog/SslValidatorDialog.java diff --git a/src/com/owncloud/android/ui/dialog/SslValidatorDialog.java b/src/com/owncloud/android/ui/dialog/SslValidatorDialog.java index 2a9164ef..60adf527 100644 --- a/src/com/owncloud/android/ui/dialog/SslValidatorDialog.java +++ b/src/com/owncloud/android/ui/dialog/SslValidatorDialog.java @@ -61,7 +61,7 @@ public class SslValidatorDialog extends Dialog { * by setting the certificate as reliable. */ public static SslValidatorDialog newInstance(Context context, RemoteOperationResult result, OnSslValidatorListener listener) { - if (result.isSslRecoverableException()) { + if (result != null && result.isSslRecoverableException()) { SslValidatorDialog dialog = new SslValidatorDialog(context, listener); return dialog; } else { @@ -125,15 +125,17 @@ public class SslValidatorDialog extends Dialog { public void updateResult(RemoteOperationResult result) { - mException = result.getSslRecoverableException(); - if (mException != null) { - // "clean" view + if (result.isSslRecoverableException()) { + mException = (CertificateCombinedException) result.getException(); + + /// clean ((TextView)mView.findViewById(R.id.reason_cert_not_trusted)).setVisibility(View.GONE); ((TextView)mView.findViewById(R.id.reason_cert_expired)).setVisibility(View.GONE); ((TextView)mView.findViewById(R.id.reason_cert_not_yet_valid)).setVisibility(View.GONE); ((TextView)mView.findViewById(R.id.reason_hostname_not_verified)).setVisibility(View.GONE); ((TextView)mView.findViewById(R.id.subject)).setVisibility(View.GONE); + /// refresh if (mException.getCertPathValidatorException() != null) { ((TextView)mView.findViewById(R.id.reason_cert_not_trusted)).setVisibility(View.VISIBLE); } @@ -163,6 +165,9 @@ public class SslValidatorDialog extends Dialog { text = text.substring(text.indexOf(",") + 1); subject.setVisibility(View.VISIBLE); subject.setText(text); + } else { + // this should not happen + subject.setText(R.string.ssl_validator_certificate_not_available); } }