Author: hbelusca
Date: Fri Sep  1 20:35:25 2017
New Revision: 75733

URL: http://svn.reactos.org/svn/reactos?rev=75733&view=rev
Log:
[EVENTCREATE]: Use wcstoul() to retrieve and check for valid numerical values.

Modified:
    trunk/reactos/base/applications/cmdutils/eventcreate/eventcreate.c

Modified: trunk/reactos/base/applications/cmdutils/eventcreate/eventcreate.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils/eventcreate/eventcreate.c?rev=75733&r1=75732&r2=75733&view=diff
==============================================================================
--- trunk/reactos/base/applications/cmdutils/eventcreate/eventcreate.c  
[iso-8859-1] (original)
+++ trunk/reactos/base/applications/cmdutils/eventcreate/eventcreate.c  
[iso-8859-1] Fri Sep  1 20:35:25 2017
@@ -914,7 +914,18 @@
                 // case TYPE_U16:
                 case TYPE_U32:
                 {
-                    *(ULONG*)Options[Option].Value = (ULONG)_wtol(argv[i]);
+                    PWCHAR pszNext = NULL;
+
+                    /* The number is specified in base 10 */
+                    // NOTE: We might use '0' so that the base is 
automatically determined.
+                    *(ULONG*)Options[Option].Value = wcstoul(argv[i], 
&pszNext, 10);
+                    if (*pszNext)
+                    {
+                        /* The value is not a valid numeric value and is not 
allowed */
+                        if (PrintErrorFunc)
+                            PrintErrorFunc(InvalidValue, argv[i], OptionStr);
+                        return FALSE;
+                    }
                     break;
                 }
 


Reply via email to