Skip to content

Commit

Permalink
Merge pull request #9 from dscho/tempfs
Browse files Browse the repository at this point in the history
Introduce the 'usertemp' filesystem type
  • Loading branch information
dscho committed Sep 16, 2015
2 parents 50693f0 + 2192264 commit 6d91b0e
Showing 1 changed file with 17 additions and 0 deletions.
17 changes: 17 additions & 0 deletions winsup/cygwin/mount.cc
Original file line number Diff line number Diff line change
Expand Up @@ -1148,6 +1148,8 @@ mount_info::from_fstab_line (char *line, bool user)
unsigned mount_flags = MOUNT_SYSTEM | MOUNT_BINARY;
if (!strcmp (fs_type, "cygdrive"))
mount_flags |= MOUNT_NOPOSIX;
if (!strcmp (fs_type, "usertemp"))
mount_flags |= MOUNT_IMMUTABLE;
if (!fstab_read_flags (&c, mount_flags, false))
return true;
if (mount_flags & MOUNT_BIND)
Expand All @@ -1172,6 +1174,21 @@ mount_info::from_fstab_line (char *line, bool user)
slashify (posix_path, cygdrive, 1);
cygdrive_len = strlen (cygdrive);
}
else if (!strcmp (fs_type, "usertemp"))
{
WCHAR tmp[MAX_PATH];

if (GetEnvironmentVariableW (L"TEMP", tmp, sizeof(tmp)) && *tmp)
{
DWORD len;
char mb_tmp[len = sys_wcstombs (NULL, 0, tmp)];
sys_wcstombs (mb_tmp, len, tmp);

int res = mount_table->add_item (mb_tmp, posix_path, mount_flags);
if (res && get_errno () == EMFILE)
return false;
}
}
else
{
int res = mount_table->add_item (native_path, posix_path, mount_flags);
Expand Down

0 comments on commit 6d91b0e

Please sign in to comment.