diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2022-08-05 13:01:45 +0300 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2022-08-05 13:01:45 +0300 |
commit | 1e428bee1c5ef7c76ba4e46e6693b913edc9bbf3 (patch) | |
tree | 602308805efc9094ad2875b656e6a7bea1f49b0a /winsup | |
parent | d097a96e6e5319ab622d5d737c70b21e4a231bec (diff) |
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>
Diffstat (limited to 'winsup')
-rw-r--r-- | winsup/cygwin/mount.cc | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/winsup/cygwin/mount.cc b/winsup/cygwin/mount.cc index 76d1e9a6d..63c9d2874 100644 --- a/winsup/cygwin/mount.cc +++ b/winsup/cygwin/mount.cc @@ -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 (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); } else if (parent_dir_len == (size_t) (last_slash - mi->posix_path) && 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); } - sys_mbstouni_alloc (cygd, HEAP_NOTHEAP, cygdrive + 1); + sys_mbstouni_alloc (cygd, HEAP_BUF, cygdrive + 1); if (cygd->Length) cygd->Length -= 2; // Strip trailing slash return n_mounts; @@ -758,8 +758,8 @@ mount_info::free_mounts_here (PUNICODE_STRING mount_points, int n_mounts, PUNICODE_STRING cygd) { for (int i = 0; i < n_mounts; ++i) - free (mount_points[i].Buffer); - free (cygd->Buffer); + cfree (mount_points[i].Buffer); + cfree (cygd->Buffer); } /* cygdrive_posix_path: Build POSIX path used as the |