checkout: Always do chmod even in _MODE_USER
The previous commit here changed things so that we do mkdir(x, 0700), then fchmod later only if we created the directory. However the logic was incorrect; we still need to chmod even in MODE_USER if we created the directory.
This commit is contained in:
parent
956b18ace7
commit
7bd00e3005
|
|
@ -630,7 +630,7 @@ checkout_tree_at (OstreeRepo *self,
|
||||||
/* We do fchmod/fchown last so that no one else could access the
|
/* We do fchmod/fchown last so that no one else could access the
|
||||||
* partially created directory and change content we're laying out.
|
* partially created directory and change content we're laying out.
|
||||||
*/
|
*/
|
||||||
if (!did_exist && mode != OSTREE_REPO_CHECKOUT_MODE_USER)
|
if (!did_exist)
|
||||||
{
|
{
|
||||||
do
|
do
|
||||||
res = fchmod (destination_dfd,
|
res = fchmod (destination_dfd,
|
||||||
|
|
@ -641,7 +641,10 @@ checkout_tree_at (OstreeRepo *self,
|
||||||
ot_util_set_error_from_errno (error, errno);
|
ot_util_set_error_from_errno (error, errno);
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!did_exist && mode != OSTREE_REPO_CHECKOUT_MODE_USER)
|
||||||
|
{
|
||||||
do
|
do
|
||||||
res = fchown (destination_dfd,
|
res = fchown (destination_dfd,
|
||||||
g_file_info_get_attribute_uint32 (source_info, "unix::uid"),
|
g_file_info_get_attribute_uint32 (source_info, "unix::uid"),
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue