Merge "Fix partial user cleanup on restart" into mnc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
1fbc1b3b4b
@@ -766,6 +766,15 @@ class MountService extends IMountService.Stub
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void addInternalVolume() {
|
||||||
|
// Create a stub volume that represents internal storage
|
||||||
|
final VolumeInfo internal = new VolumeInfo(VolumeInfo.ID_PRIVATE_INTERNAL,
|
||||||
|
VolumeInfo.TYPE_PRIVATE, null, null);
|
||||||
|
internal.state = VolumeInfo.STATE_MOUNTED;
|
||||||
|
internal.path = Environment.getDataDirectory().getAbsolutePath();
|
||||||
|
mVolumes.put(internal.id, internal);
|
||||||
|
}
|
||||||
|
|
||||||
private void resetIfReadyAndConnectedLocked() {
|
private void resetIfReadyAndConnectedLocked() {
|
||||||
Slog.d(TAG, "Thinking about reset, mSystemReady=" + mSystemReady
|
Slog.d(TAG, "Thinking about reset, mSystemReady=" + mSystemReady
|
||||||
+ ", mDaemonConnected=" + mDaemonConnected);
|
+ ", mDaemonConnected=" + mDaemonConnected);
|
||||||
@@ -775,12 +784,7 @@ class MountService extends IMountService.Stub
|
|||||||
mDisks.clear();
|
mDisks.clear();
|
||||||
mVolumes.clear();
|
mVolumes.clear();
|
||||||
|
|
||||||
// Create a stub volume that represents internal storage
|
addInternalVolume();
|
||||||
final VolumeInfo internal = new VolumeInfo(VolumeInfo.ID_PRIVATE_INTERNAL,
|
|
||||||
VolumeInfo.TYPE_PRIVATE, null, null);
|
|
||||||
internal.state = VolumeInfo.STATE_MOUNTED;
|
|
||||||
internal.path = Environment.getDataDirectory().getAbsolutePath();
|
|
||||||
mVolumes.put(internal.id, internal);
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
mConnector.execute("volume", "reset");
|
mConnector.execute("volume", "reset");
|
||||||
@@ -1412,6 +1416,8 @@ class MountService extends IMountService.Stub
|
|||||||
userFilter.addAction(Intent.ACTION_USER_REMOVED);
|
userFilter.addAction(Intent.ACTION_USER_REMOVED);
|
||||||
mContext.registerReceiver(mUserReceiver, userFilter, null, mHandler);
|
mContext.registerReceiver(mUserReceiver, userFilter, null, mHandler);
|
||||||
|
|
||||||
|
addInternalVolume();
|
||||||
|
|
||||||
// Add ourself to the Watchdog monitors if enabled.
|
// Add ourself to the Watchdog monitors if enabled.
|
||||||
if (WATCHDOG_ENABLE) {
|
if (WATCHDOG_ENABLE) {
|
||||||
Watchdog.getInstance().addMonitor(this);
|
Watchdog.getInstance().addMonitor(this);
|
||||||
|
|||||||
@@ -246,7 +246,7 @@ public class UserManagerService extends IUserManager.Stub {
|
|||||||
}
|
}
|
||||||
for (int i = 0; i < partials.size(); i++) {
|
for (int i = 0; i < partials.size(); i++) {
|
||||||
UserInfo ui = partials.get(i);
|
UserInfo ui = partials.get(i);
|
||||||
Slog.w(LOG_TAG, "Removing partially created user #" + i
|
Slog.w(LOG_TAG, "Removing partially created user " + ui.id
|
||||||
+ " (name=" + ui.name + ")");
|
+ " (name=" + ui.name + ")");
|
||||||
removeUserStateLocked(ui.id);
|
removeUserStateLocked(ui.id);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user