Dbrant has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/182814

Change subject: Fix possible crash when typing search text.
......................................................................

Fix possible crash when typing search text.

When a character is typed into the search field, the app sends a message
that triggers the search after a predefined delay. If the search fragment
was detached during that delay period, the app would crash. This patch
will prevent any execution after receiving the message, if the fragment is
no longer attached.

Bug: T85429
Change-Id: I2cb8be69c776d32a6b29bfab68640a850f99cf8c
---
M wikipedia/src/main/java/org/wikipedia/search/FullSearchFragment.java
M wikipedia/src/main/java/org/wikipedia/search/TitleSearchFragment.java
2 files changed, 6 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia 
refs/changes/14/182814/1

diff --git 
a/wikipedia/src/main/java/org/wikipedia/search/FullSearchFragment.java 
b/wikipedia/src/main/java/org/wikipedia/search/FullSearchFragment.java
index 249e103..2b337c7 100644
--- a/wikipedia/src/main/java/org/wikipedia/search/FullSearchFragment.java
+++ b/wikipedia/src/main/java/org/wikipedia/search/FullSearchFragment.java
@@ -123,6 +123,9 @@
     private class SearchHandlerCallback implements Handler.Callback {
         @Override
         public boolean handleMessage(Message msg) {
+            if (!isAdded()) {
+                return true;
+            }
             final String mySearchTerm = (String) msg.obj;
             doSearch(mySearchTerm, null);
             return true;
diff --git 
a/wikipedia/src/main/java/org/wikipedia/search/TitleSearchFragment.java 
b/wikipedia/src/main/java/org/wikipedia/search/TitleSearchFragment.java
index c864453..7dd2d4f 100644
--- a/wikipedia/src/main/java/org/wikipedia/search/TitleSearchFragment.java
+++ b/wikipedia/src/main/java/org/wikipedia/search/TitleSearchFragment.java
@@ -281,6 +281,9 @@
     private class SearchHandlerCallback implements Handler.Callback {
         @Override
         public boolean handleMessage(Message msg) {
+            if (!isAdded()) {
+                return true;
+            }
             final String mySearchTerm = (String) msg.obj;
             final long startMillis = System.currentTimeMillis();
             TitleSearchTask searchTask = new 
TitleSearchTask(app.getAPIForSite(app.getPrimarySite()), app.getPrimarySite(), 
mySearchTerm) {

-- 
To view, visit https://gerrit.wikimedia.org/r/182814
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I2cb8be69c776d32a6b29bfab68640a850f99cf8c
Gerrit-PatchSet: 1
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: master
Gerrit-Owner: Dbrant <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to