diff options
author | sma <sma@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2008-06-17 13:55:44 +0000 |
---|---|---|
committer | sma <sma@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2008-06-17 13:55:44 +0000 |
commit | 6a153e9784037306b655eeafae5efb6fbdc32174 (patch) | |
tree | 4766021b7f5cc8c4e7c783de726b0d9b00522ddd | |
parent | 8b141bcbc058e812f39a5bc328c76233f79d2469 (diff) | |
download | ATCD-6a153e9784037306b655eeafae5efb6fbdc32174.tar.gz |
ChangeLogTag: Tue Jun 17 13:55:00 UTC 2008 Simon Massey <sma at prismtech dot com>
-rw-r--r-- | ACE/ChangeLog | 6 | ||||
-rwxr-xr-x | ACE/bin/fuzz.pl | 38 |
2 files changed, 42 insertions, 2 deletions
diff --git a/ACE/ChangeLog b/ACE/ChangeLog index c3146cee768..8b082ed22ea 100644 --- a/ACE/ChangeLog +++ b/ACE/ChangeLog @@ -1,3 +1,9 @@ +Tue Jun 17 13:55:00 UTC 2008 Simon Massey <sma at prismtech dot com> + + * bin/fuzz.pl: + + Add check for wide character incompatabilty ORB_init() miss-use. + Tue Jun 17 12:40:03 UTC 2008 J.T. Conklin <jtc@acorntoolworks.com> * ace/Monitor_Control/BSD_Network_Interface_Monitor.cpp: diff --git a/ACE/bin/fuzz.pl b/ACE/bin/fuzz.pl index 705a1870b61..730519ff70e 100755 --- a/ACE/bin/fuzz.pl +++ b/ACE/bin/fuzz.pl @@ -1716,6 +1716,39 @@ sub check_for_refcountservantbase () } } +# This test checks for the correct use of ORB_init() so as +# to be compatiable with wide character builds. +sub check_for_ORB_init () +{ + print "Running the ORB_init wide character incompatability check\n"; + foreach $file (@files_cpp, @files_inl) { + if (open (FILE, $file)) { + my $disable = 0; + print "Looking at file $file\n" if $opt_d; + while (<FILE>) { + if (/FUZZ\: disable check_for_ORB_init/) { + $disable = 1; + } + if (/FUZZ\: enable check_for_ORB_init/) { + $disable = 0; + } + if ($disable == 0) { + if (/\s*ORB_init\s\([^,]*,\s*0/) { + print_error ("$file:$.: ORB_init() argv of 0 requires static_cast<ACE_TCHAR **>(0)"); + } + if (/\s*ORB_init\s\([^,]*,[^,]*,\s*0\s*\)/) { + print_error ("$file:$.: ORB_init() orbID should not be 0 (don't use 3rd parameter or give as string)"); + } + } + } + close (FILE); + } + else { + print STDERR "Error: Could not open $file\n"; + } + } +} + ############################################################################## use vars qw/$opt_c $opt_d $opt_h $opt_l $opt_t $opt_m $opt_v/; @@ -1765,7 +1798,8 @@ if (!getopts ('cdhl:t:mv') || $opt_h) { check_for_include check_for_non_bool_operators check_for_long_file_names - check_for_refcountservantbase\n"; + check_for_refcountservantbase + check_for_ORB_init\n"; exit (1); } @@ -1830,7 +1864,7 @@ check_for_ptr_arith_t () if ($opt_l >= 4); check_for_include () if ($opt_l >= 5); check_for_non_bool_operators () if ($opt_l > 2); check_for_long_file_names () if ($opt_l > 1 ); - +check_for_ORB_init (); print "\nFuzz.pl - $errors error(s), $warnings warning(s)\n"; |