Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fb3532ee authored by Svetoslav's avatar Svetoslav
Browse files

Page shredder callback invoked on the wrong thread.

The code executed in the shredder completion callback must
be called on the main thread but instead it was called on
another one. This led to a crash.

bug:17514533

Change-Id: Id9e86d38a90fedadc60f967b193470fd83eb3362
parent f230c5d2
Loading
Loading
Loading
Loading
+12 −12
Original line number Diff line number Diff line
@@ -61,7 +61,6 @@ import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnFocusChangeListener;
import android.view.ViewGroup;
import android.view.accessibility.AccessibilityEvent;
import android.view.inputmethod.InputMethodManager;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
@@ -2303,19 +2302,20 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
            new AsyncTask<Void, Void, Void>() {
                @Override
                protected Void doInBackground(Void... params) {
                    try {
                    // It's OK to access the data members as they are
                    // final and this code is the last one to touch
                    // them as shredding is the very last step, so the
                    // UI is not interactive at this point.
                    shredPages(editor);
                    updatePrintJob();
                    } finally {
                    return null;
                }

                @Override
                protected void onPostExecute(Void aVoid) {
                    mContext.unbindService(PageShredder.this);
                    mCallback.run();
                }
                    return null;
                }
            }.executeOnExecutor(AsyncTask.SERIAL_EXECUTOR);
        }