[PATCH] Cygwin: fix one more check for positive virtual_ftype_t values

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

[PATCH] Cygwin: fix one more check for positive virtual_ftype_t values

Ken Brown-6
Also drop more comments referring to numerical virtual_ftype_t values.
---
 winsup/cygwin/fhandler_process.cc  | 3 ---
 winsup/cygwin/fhandler_registry.cc | 4 +---
 2 files changed, 1 insertion(+), 6 deletions(-)

diff --git a/winsup/cygwin/fhandler_process.cc b/winsup/cygwin/fhandler_process.cc
index 0dafc2f0f..2a0655475 100644
--- a/winsup/cygwin/fhandler_process.cc
+++ b/winsup/cygwin/fhandler_process.cc
@@ -86,9 +86,6 @@ static bool get_mem_values (DWORD dwProcessId, size_t &vmsize, size_t &vmrss,
     size_t &vmtext, size_t &vmdata, size_t &vmlib,
     size_t &vmshare);
 
-/* Returns 0 if path doesn't exist, >0 if path is a directory,
-   -1 if path is a file, -2 if path is a symlink, -3 if path is a pipe,
-   -4 if path is a socket. */
 virtual_ftype_t
 fhandler_process::exists ()
 {
diff --git a/winsup/cygwin/fhandler_registry.cc b/winsup/cygwin/fhandler_registry.cc
index f7db01b99..5fc03fedd 100644
--- a/winsup/cygwin/fhandler_registry.cc
+++ b/winsup/cygwin/fhandler_registry.cc
@@ -306,8 +306,6 @@ multi_wcstombs (char *dst, size_t len, const wchar_t *src, size_t nwc)
   return sum;
 }
 
-/* Returns 0 if path doesn't exist, otherwise a virtual_ftype_t value
-   specifying the exact file type. */
 virtual_ftype_t
 fhandler_registry::exists ()
 {
@@ -562,7 +560,7 @@ fhandler_registry::fstat (struct stat *buf)
   buf->st_uid = uid;
   buf->st_gid = gid;
   buf->st_mode &= ~(S_IWUSR | S_IWGRP | S_IWOTH);
-  if (file_type > virt_none)
+  if (virt_ftype_isdir (file_type))
     buf->st_mode |= S_IFDIR;
   else
     buf->st_mode &= NO_X;
--
2.21.0

Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] Cygwin: fix one more check for positive virtual_ftype_t values

Corinna Vinschen-2
On Jul 22 18:08, Ken Brown wrote:
> Also drop more comments referring to numerical virtual_ftype_t values.

Not sure how I missed that, thanks for catching!  Please push.


Thanks,
Corinna


> ---
>  winsup/cygwin/fhandler_process.cc  | 3 ---
>  winsup/cygwin/fhandler_registry.cc | 4 +---
>  2 files changed, 1 insertion(+), 6 deletions(-)
>
> diff --git a/winsup/cygwin/fhandler_process.cc b/winsup/cygwin/fhandler_process.cc
> index 0dafc2f0f..2a0655475 100644
> --- a/winsup/cygwin/fhandler_process.cc
> +++ b/winsup/cygwin/fhandler_process.cc
> @@ -86,9 +86,6 @@ static bool get_mem_values (DWORD dwProcessId, size_t &vmsize, size_t &vmrss,
>      size_t &vmtext, size_t &vmdata, size_t &vmlib,
>      size_t &vmshare);
>  
> -/* Returns 0 if path doesn't exist, >0 if path is a directory,
> -   -1 if path is a file, -2 if path is a symlink, -3 if path is a pipe,
> -   -4 if path is a socket. */
>  virtual_ftype_t
>  fhandler_process::exists ()
>  {
> diff --git a/winsup/cygwin/fhandler_registry.cc b/winsup/cygwin/fhandler_registry.cc
> index f7db01b99..5fc03fedd 100644
> --- a/winsup/cygwin/fhandler_registry.cc
> +++ b/winsup/cygwin/fhandler_registry.cc
> @@ -306,8 +306,6 @@ multi_wcstombs (char *dst, size_t len, const wchar_t *src, size_t nwc)
>    return sum;
>  }
>  
> -/* Returns 0 if path doesn't exist, otherwise a virtual_ftype_t value
> -   specifying the exact file type. */
>  virtual_ftype_t
>  fhandler_registry::exists ()
>  {
> @@ -562,7 +560,7 @@ fhandler_registry::fstat (struct stat *buf)
>    buf->st_uid = uid;
>    buf->st_gid = gid;
>    buf->st_mode &= ~(S_IWUSR | S_IWGRP | S_IWOTH);
> -  if (file_type > virt_none)
> +  if (virt_ftype_isdir (file_type))
>      buf->st_mode |= S_IFDIR;
>    else
>      buf->st_mode &= NO_X;
> --
> 2.21.0
--
Corinna Vinschen
Cygwin Maintainer

signature.asc (849 bytes) Download Attachment