[SPEC2DEF] Fix support for different OS versions.
authorMark Jansen <mark.jansen@reactos.org>
Wed, 5 Sep 2018 19:49:02 +0000 (21:49 +0200)
committerMark Jansen <mark.jansen@reactos.org>
Fri, 12 Oct 2018 17:30:35 +0000 (19:30 +0200)
sdk/tools/spec2def/spec2def.c

index f5a91aa..1246ce3 100644 (file)
@@ -4,7 +4,8 @@
 #include <string.h>
 
 #ifdef _MSC_VER
-#define strcasecmp _stricmp
+#define strcasecmp(_String1, _String2) _stricmp(_String1, _String2)
+#define strncasecmp(_String1, _String2, _MaxCount) _strnicmp(_String1, _String2, _MaxCount)
 #endif
 
 #define ARRAYSIZE(a) (sizeof(a) / sizeof((a)[0]))
@@ -1126,6 +1127,7 @@ int main(int argc, char *argv[])
 {
     size_t nFileSize;
     char *pszSource, *pszDefFileName = NULL, *pszStubFileName = NULL, *pszLibStubName = NULL;
+    const char* pszVersionOption = "--version=0x";
     char achDllName[40];
     FILE *file;
     int result = 0, i;
@@ -1161,9 +1163,9 @@ int main(int argc, char *argv[])
         {
             pszDllName = argv[i] + 3;
         }
-        else if (strcasecmp(argv[i], "--version=0x") == 0)
+        else if (strncasecmp(argv[i], pszVersionOption, strlen(pszVersionOption)) == 0)
         {
-            guOsVersion = strtoul(argv[i] + sizeof("--version=0x"), NULL, 16);
+            guOsVersion = strtoul(argv[i] + strlen(pszVersionOption), NULL, 16);
         }
         else if (strcasecmp(argv[i], "--implib") == 0)
         {