Merge "Fix the deadlock problem"
This commit is contained in:
@@ -2383,16 +2383,15 @@ public class BackupManagerService {
|
||||
} catch (InterruptedException e) {
|
||||
// just bail
|
||||
Slog.w(TAG, "Interrupted: " + e);
|
||||
mActivityManager.clearPendingBackup();
|
||||
return null;
|
||||
mConnecting = false;
|
||||
mConnectedAgent = null;
|
||||
}
|
||||
}
|
||||
|
||||
// if we timed out with no connect, abort and move on
|
||||
if (mConnecting == true) {
|
||||
Slog.w(TAG, "Timeout waiting for agent " + app);
|
||||
mActivityManager.clearPendingBackup();
|
||||
return null;
|
||||
mConnectedAgent = null;
|
||||
}
|
||||
if (DEBUG) Slog.i(TAG, "got agent " + mConnectedAgent);
|
||||
agent = mConnectedAgent;
|
||||
@@ -2401,6 +2400,13 @@ public class BackupManagerService {
|
||||
// can't happen - ActivityManager is local
|
||||
}
|
||||
}
|
||||
if (agent == null) {
|
||||
try {
|
||||
mActivityManager.clearPendingBackup();
|
||||
} catch (RemoteException e) {
|
||||
// can't happen - ActivityManager is local
|
||||
}
|
||||
}
|
||||
return agent;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user