Only restorecon_data once for all users.

restorecon_data already iterates across all found users internally,
so we don't need to call it for each UID moved.  In fact, this was a
bug that caused data for the owner to be relabeled when moving apps
back to internal storage.

Bug: 21813384
Change-Id: I5ba76d4f30d129365864c8a25b665f344b99a6b4
This commit is contained in:
Jeff Sharkey 2015-07-20 16:26:19 -07:00
parent 5f920c1a2c
commit a2307aefd0

View File

@ -257,11 +257,11 @@ int copy_complete_app(const char *from_uuid, const char *to_uuid,
<< ": status " << rc; << ": status " << rc;
goto fail; goto fail;
} }
}
if (restorecon_data(to_uuid, package_name, seinfo, uid) != 0) { if (restorecon_data(to_uuid, package_name, seinfo, multiuser_get_uid(0, appid)) != 0) {
LOG(ERROR) << "Failed to restorecon " << to; LOG(ERROR) << "Failed to restorecon";
goto fail; goto fail;
}
} }
// We let the framework scan the new location and persist that before // We let the framework scan the new location and persist that before