diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 13741ebbb..da3de3f4f 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,8 @@
+2010-09-21  Corinna Vinschen  <corinna@vinschen.de>
+
+	* path.cc (cwdstuff::set): Replace constant 2 with sizeof(WCHAR) where
+	appropriate.
+
 2010-09-21  Corinna Vinschen  <corinna@vinschen.de>
 
 	* mount.h (class fs_info): Add has_buggy_reopen flag and accessor
diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc
index 9eac51b63..b468e9e37 100644
--- a/winsup/cygwin/path.cc
+++ b/winsup/cygwin/path.cc
@@ -3483,8 +3483,9 @@ cwdstuff::set (path_conv *nat_cwd, const char *posix_cwd)
       PUNICODE_STRING pdir = &get_user_proc_parms ()->CurrentDirectoryName;
       RtlInitEmptyUnicodeString (&win32,
 				 (PWCHAR) crealloc_abort (win32.Buffer,
-							  pdir->Length + 2),
-				 pdir->Length + 2);
+							  pdir->Length
+							  + sizeof (WCHAR)),
+				 pdir->Length + sizeof (WCHAR));
       RtlCopyUnicodeString (&win32, pdir);
 
       PWSTR eoBuffer = win32.Buffer + (win32.Length / sizeof (WCHAR));
@@ -3520,8 +3521,9 @@ cwdstuff::set (path_conv *nat_cwd, const char *posix_cwd)
 	}
       RtlInitEmptyUnicodeString (&win32,
 				 (PWCHAR) crealloc_abort (win32.Buffer,
-							  upath.Length + 2),
-				 upath.Length + 2);
+							  upath.Length
+							  + sizeof (WCHAR)),
+				 upath.Length + sizeof (WCHAR));
       RtlCopyUnicodeString (&win32, &upath);
       if (unc_path)
 	win32.Buffer[0] = L'\\';