Currently UninstallApps() runs immediately even if there is an InstallApps() call in progress. For example:
1. Client calls InstallApps() with [A, B, C]
2. Client calls UninstallApps() with [C] while InstallApps is in progress.
The call to UninstallApps will fail because C has not been install yet. To work around this clients need to wait for InstallApps() to finish before calling UninstallApps().
Rather than pushing this logic down to clients, PendingAppManager::UninstallApps() should wait for the previous InstallApps() call to finish.
Comment 1 by nigeltao@chromium.org
, Sep 5