summaryrefslogtreecommitdiff
path: root/TAO/tests/RTCORBA/common_args.cpp
diff options
context:
space:
mode:
authorelliott_c <elliott_c@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2005-07-12 13:37:26 +0000
committerelliott_c <elliott_c@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2005-07-12 13:37:26 +0000
commit91493d8652dc461ab72e8e91535dbe598253ad8d (patch)
tree194f22c533283d5883cc3b755b9c2460aa4d85c8 /TAO/tests/RTCORBA/common_args.cpp
parent86b6fb82b24b05c1141ad075034431f359e8b2a5 (diff)
downloadATCD-91493d8652dc461ab72e8e91535dbe598253ad8d.tar.gz
ChangeLogTag: Tue Jul 12 08:33:05 2005 Chad Elliott <elliott_c@ociweb.com>
Diffstat (limited to 'TAO/tests/RTCORBA/common_args.cpp')
-rw-r--r--TAO/tests/RTCORBA/common_args.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/TAO/tests/RTCORBA/common_args.cpp b/TAO/tests/RTCORBA/common_args.cpp
index b80ca5720d0..3085aa72bcb 100644
--- a/TAO/tests/RTCORBA/common_args.cpp
+++ b/TAO/tests/RTCORBA/common_args.cpp
@@ -4,6 +4,7 @@
#include "ace/Array_Base.h"
#include "ace/OS_NS_stdio.h"
#include "ace/OS_NS_math.h"
+#include "ace/OS_NS_stdlib.h"
typedef ACE_Array_Base<CORBA::ULong> ULong_Array;
@@ -158,11 +159,16 @@ get_values (const char *test_type,
char* working_string = string;
for (CORBA::ULong i = 0; i < length; ++i)
{
- result = ::sscanf (working_string,
- "%ul",
- &values[i]);
- if (result == 0 || result == EOF)
- break;
+ // sscanf with "%ul" doesn't seem to work properly on HP-UX. So,
+ // we will use strtoul instead.
+ char* endptr = 0;
+ values[i] = ACE_OS::strtoul (working_string, &endptr, 10);
+
+ if (endptr != working_string && endptr != 0 && *endptr != '\0')
+ {
+ result = 0;
+ break;
+ }
working_string += ACE_OS::strlen (working_string);
working_string += 1;