Cygwin: mount_info::get_mounts_here: alloc temp mountpoint info on cygheap
That *should* be slightly faster than allocating on the user heap. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
parent
d097a96e6e
commit
1e428bee1c
|
@ -739,15 +739,15 @@ mount_info::get_mounts_here (const char *parent_dir, size_t parent_dir_len,
|
||||||
if (last_slash == mi->posix_path)
|
if (last_slash == mi->posix_path)
|
||||||
{
|
{
|
||||||
if (parent_dir_len == 1 && mi->posix_pathlen > 1)
|
if (parent_dir_len == 1 && mi->posix_pathlen > 1)
|
||||||
sys_mbstouni_alloc (&mount_points[n_mounts++], HEAP_NOTHEAP,
|
sys_mbstouni_alloc (&mount_points[n_mounts++], HEAP_BUF,
|
||||||
last_slash + 1);
|
last_slash + 1);
|
||||||
}
|
}
|
||||||
else if (parent_dir_len == (size_t) (last_slash - mi->posix_path)
|
else if (parent_dir_len == (size_t) (last_slash - mi->posix_path)
|
||||||
&& strncasematch (parent_dir, mi->posix_path, parent_dir_len))
|
&& strncasematch (parent_dir, mi->posix_path, parent_dir_len))
|
||||||
sys_mbstouni_alloc (&mount_points[n_mounts++], HEAP_NOTHEAP,
|
sys_mbstouni_alloc (&mount_points[n_mounts++], HEAP_BUF,
|
||||||
last_slash + 1);
|
last_slash + 1);
|
||||||
}
|
}
|
||||||
sys_mbstouni_alloc (cygd, HEAP_NOTHEAP, cygdrive + 1);
|
sys_mbstouni_alloc (cygd, HEAP_BUF, cygdrive + 1);
|
||||||
if (cygd->Length)
|
if (cygd->Length)
|
||||||
cygd->Length -= 2; // Strip trailing slash
|
cygd->Length -= 2; // Strip trailing slash
|
||||||
return n_mounts;
|
return n_mounts;
|
||||||
|
@ -758,8 +758,8 @@ mount_info::free_mounts_here (PUNICODE_STRING mount_points, int n_mounts,
|
||||||
PUNICODE_STRING cygd)
|
PUNICODE_STRING cygd)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < n_mounts; ++i)
|
for (int i = 0; i < n_mounts; ++i)
|
||||||
free (mount_points[i].Buffer);
|
cfree (mount_points[i].Buffer);
|
||||||
free (cygd->Buffer);
|
cfree (cygd->Buffer);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* cygdrive_posix_path: Build POSIX path used as the
|
/* cygdrive_posix_path: Build POSIX path used as the
|
||||||
|
|
Loading…
Reference in New Issue