From 8e38e7088466d40a6903243e6bf230d92a99c7b4 Mon Sep 17 00:00:00 2001
From: Nitorac <nitorac.r@gmail.com>
Date: Thu, 6 May 2021 17:26:33 +0200
Subject: [PATCH] Fixed FC caused by network Inited AurionViewFragments

---
 app/src/main/java/fr/nitorac/aurionweb/StorageManager.java   | 5 +++--
 .../java/fr/nitorac/aurionweb/aurionweb/AurionManager.java   | 2 --
 .../fr/nitorac/aurionweb/aurionweb/CheckConnectionTask.java  | 4 +++-
 3 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/app/src/main/java/fr/nitorac/aurionweb/StorageManager.java b/app/src/main/java/fr/nitorac/aurionweb/StorageManager.java
index a0685c0..b80e12b 100644
--- a/app/src/main/java/fr/nitorac/aurionweb/StorageManager.java
+++ b/app/src/main/java/fr/nitorac/aurionweb/StorageManager.java
@@ -24,10 +24,11 @@ public class StorageManager {
         SharedPreferences pref = c.getSharedPreferences(StorageManager.SEC_SHARED_PREF, Context.MODE_PRIVATE);
         AurionCred cred = new AurionCred();
         cred.setLogin(pref.getString(AurionCred.LOGIN_KEY, ""));
-        if(cred.getLogin().isEmpty()){
+        String encrypted = pref.getString(AurionCred.PWD_KEY, "");
+        if(cred.getLogin().trim().isEmpty() || encrypted.trim().isEmpty()){
             return null;
         }
-        cred.setPlainPwd(SecurityManager.getSecurityHelper(c).decrypt(pref.getString(AurionCred.PWD_KEY, "")));
+        cred.setPlainPwd(SecurityManager.getSecurityHelper(c).decrypt(encrypted));
         cred.setRemember(pref.getBoolean(AurionCred.REM_KEY, false));
         return cred;
     }
diff --git a/app/src/main/java/fr/nitorac/aurionweb/aurionweb/AurionManager.java b/app/src/main/java/fr/nitorac/aurionweb/aurionweb/AurionManager.java
index 3b99ec8..a916571 100644
--- a/app/src/main/java/fr/nitorac/aurionweb/aurionweb/AurionManager.java
+++ b/app/src/main/java/fr/nitorac/aurionweb/aurionweb/AurionManager.java
@@ -34,8 +34,6 @@ public class AurionManager {
 
     }
 
-
-
     public boolean checkPassword(AurionSession session, AurionCred cred) throws GeneralSecurityException {
         if(session == null){
             session = new AurionSession();
diff --git a/app/src/main/java/fr/nitorac/aurionweb/aurionweb/CheckConnectionTask.java b/app/src/main/java/fr/nitorac/aurionweb/aurionweb/CheckConnectionTask.java
index 5f53c5f..c674ab7 100644
--- a/app/src/main/java/fr/nitorac/aurionweb/aurionweb/CheckConnectionTask.java
+++ b/app/src/main/java/fr/nitorac/aurionweb/aurionweb/CheckConnectionTask.java
@@ -54,7 +54,9 @@ public class CheckConnectionTask extends AsyncTask<AurionCred, Void, Boolean> {
     protected Boolean doInBackground(AurionCred... cred) {
         try {
             boolean res = AurionManager.getInstance().checkPassword(session, cred[0]);
-            networkStuff.accept(session);
+            if(res){
+                networkStuff.accept(session);
+            }
             return res;
         } catch (GeneralSecurityException e) {
             e.printStackTrace();
-- 
GitLab