diff options
Diffstat (limited to 'winsup/cygwin/path.cc')
-rw-r--r-- | winsup/cygwin/path.cc | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc index a7d95df71..03f0a1262 100644 --- a/winsup/cygwin/path.cc +++ b/winsup/cygwin/path.cc @@ -882,6 +882,15 @@ out: #endif } +path_conv::~path_conv () +{ + if (!normalized_path_size && normalized_path) + { + cfree (normalized_path); + normalized_path = NULL; + } +} + static __inline int digits (const char *name) { @@ -3500,10 +3509,6 @@ conv_path_list_buf_size (const char *path_list, bool to_posix) + (nrel * strlen (to_posix ? pc.normalized_path : pc.get_win32 ())) + 100; - if (!pc.normalized_path_size && pc.normalized_path) - cfree (pc.normalized_path); // FIXME - probably should be in a destructor but - // it's hard to justify a destructor for the few - // places where this is needed return size; } |