Fixes for LANG_NEUTRAL.

diff --git a/include/winnls.h b/include/winnls.h
index 4b703af..3526613 100644
--- a/include/winnls.h
+++ b/include/winnls.h
@@ -141,6 +141,7 @@
 #define LANG_USER_DEFAULT	(MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT))
 #define LOCALE_SYSTEM_DEFAULT	(MAKELCID(LANG_SYSTEM_DEFAULT, SORT_DEFAULT))
 #define LOCALE_USER_DEFAULT	(MAKELCID(LANG_USER_DEFAULT, SORT_DEFAULT)) 
+#define LOCALE_NEUTRAL		(MAKELCID(MAKELANGID(LANG_NEUTRAL,SUBLANG_NEUTRAL),SORT_DEFAULT))
 
 
 /* Language IDs (were in winnt.h,  for some reason) */
diff --git a/ole/ole2nls.c b/ole/ole2nls.c
index 9b3331b..1ebc2d4 100644
--- a/ole/ole2nls.c
+++ b/ole/ole2nls.c
@@ -472,8 +472,9 @@
 
     found=0; i=0; lang=lcid;
 
-    if (lang ==0x400) /*LANG_NEUTRAL ==> US English*/
-    {	lang = 0x409;
+    if ((lang & 0xff) == 0x00) /*LANG_NEUTRAL ==> US English*/
+    {
+	lang = 0x409;
         WARN(ole,"no language set, assume LANG_ENGLISH_US \n");
     }