mirror of
https://github.com/zxing/zxing.git
synced 2025-03-05 20:48:51 -08:00
Issue #90 : possibly relevant improvement to logic - no point in canceling the AsyncTask which will always be running at that point if it exists
This commit is contained in:
parent
9e8a47c7e4
commit
264a49a148
|
@ -64,7 +64,7 @@ final class AutoFocusManager implements Camera.AutoFocusCallback {
|
||||||
autoFocusAgainLater();
|
autoFocusAgainLater();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void autoFocusAgainLater() {
|
private synchronized void autoFocusAgainLater() {
|
||||||
if (!stopped && outstandingTask == null) {
|
if (!stopped && outstandingTask == null) {
|
||||||
AutoFocusTask newTask = new AutoFocusTask();
|
AutoFocusTask newTask = new AutoFocusTask();
|
||||||
try {
|
try {
|
||||||
|
@ -78,7 +78,7 @@ final class AutoFocusManager implements Camera.AutoFocusCallback {
|
||||||
|
|
||||||
synchronized void start() {
|
synchronized void start() {
|
||||||
if (useAutoFocus) {
|
if (useAutoFocus) {
|
||||||
cancelOutstandingTask();
|
outstandingTask = null;
|
||||||
if (!stopped && !focusing) {
|
if (!stopped && !focusing) {
|
||||||
try {
|
try {
|
||||||
camera.autoFocus(this);
|
camera.autoFocus(this);
|
||||||
|
@ -93,7 +93,7 @@ final class AutoFocusManager implements Camera.AutoFocusCallback {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void cancelOutstandingTask() {
|
private synchronized void cancelOutstandingTask() {
|
||||||
if (outstandingTask != null) {
|
if (outstandingTask != null) {
|
||||||
if (outstandingTask.getStatus() != AsyncTask.Status.FINISHED) {
|
if (outstandingTask.getStatus() != AsyncTask.Status.FINISHED) {
|
||||||
outstandingTask.cancel(true);
|
outstandingTask.cancel(true);
|
||||||
|
|
Loading…
Reference in a new issue