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;
}