Michael Stefaniuc
173f7bd26c
janitorial: Remove remaining NULL checks before free() (found by Smatch).
2006-10-10 12:56:24 +02:00
Michael Stefaniuc
223b92fc67
msvcrt/tests: Win64 printf format warning fixes.
2006-10-06 12:33:29 +02:00
Michael Stefaniuc
6520ee04c8
msvcrt: Win64 printf format warning fixes.
2006-10-04 09:58:47 +02:00
Michael Stefaniuc
85ce5117c5
Add a WINE_NO_LONG_INT define to many makefiles to ease the transition of DWORD/LONG/ULONG from long to int.
2006-09-29 16:08:30 +02:00
Duane Clark
9a71b483d3
msvcrt: fgetc needs to use unsigned parameters.
...
Spotted by and adapted from test written by Tobias Ringström.
2006-09-26 11:41:25 +02:00
Andrew Talbot
c5df5717e9
msvcrt: Cast-qual warnings fix.
2006-09-20 12:23:32 +02:00
Alexandre Julliard
32ab895e46
makefiles: Generate the dependencies line to avoid some code duplication.
2006-09-14 09:38:16 +02:00
Marcus Meissner
0c15360a3e
Removes all unnecessary WINE_DEFAULT_DEBUG_CHANNEL and respective wine/debug.h includes.
2006-09-11 11:30:48 +02:00
Dan Kegel
39857443e4
programs/wcmd: Rename to programs/cmd.
2006-09-07 15:08:44 +02:00
Alexandre Julliard
5cf75e615a
makefiles: Only run test and documentation targets in directories that need them.
2006-08-28 13:37:44 +02:00
Andrzej Popowski
4e5c51a6ee
msvcrt: Fix scanf format "%i" base detection.
2006-08-23 17:04:53 +02:00
Alexandre Julliard
9edcd1c1b2
msvcrt: Fixed access to the extra arguments of setjmp3.
2006-08-18 20:56:43 +02:00
Tijl Coosemans
7c69033b0a
msvcrt: Rename _execve to MSVCRT__execve.
2006-08-09 23:09:08 +02:00
Duane Clark
4d3952f3dc
msvcrt: In text mode a ctrl-z signals EOF.
...
Spotted by David Hagood with test suggested by Dan Kegel.
2006-08-09 17:33:23 +02:00
Michael Stefaniuc
243a3e4107
msvcrt: Remove redundant NULL checks before MSVCRT_free.
2006-08-09 11:21:07 +02:00
Stefan Leichter
aefdcd13e5
msvcrt: Some more exports requested from msvcr80.dll.
2006-08-07 13:10:10 +02:00
Duane Clark
bc194793a7
msvcrt: Fix fgetwc/s in binary mode.
2006-07-31 21:44:17 +02:00
Duane Clark
d74b6055fe
msvcrt: Test fgetwc/s in binary mode.
2006-07-31 21:43:08 +02:00
Duane Clark
5c4b18a931
msvcrt: Remove read_i loop and fix fread.
2006-07-31 21:43:01 +02:00
Duane Clark
88aeeb9fd8
msvcrt: Fix _getw.
2006-07-31 11:15:21 +02:00
Duane Clark
b44ea8084d
msvcrt: Fix fread.
2006-07-31 11:15:21 +02:00
Duane Clark
b37b967add
msvcrt: Fix _read and fgetc.
2006-07-31 11:15:21 +02:00
Duane Clark
1aa8db05a0
msvcrt: File read buffer tests.
2006-07-31 11:15:21 +02:00
Duane Clark
f8e4d4ccee
msvcrt: Add tests of file operations in ASCII mode.
2006-07-18 11:16:31 +02:00
Alexandre Julliard
eb8a40c368
libs: Merged libwine_unicode into libwine.
...
Most dlls use libwine_unicode at this point, so there's nothing to
gain by having two separate libraries.
2006-07-11 19:33:22 +02:00
Alexandre Julliard
77dc0d9be5
.gitignore: Added wildcards to ignore generated resource files.
2006-07-10 21:39:00 +02:00
Alexandre Julliard
0fa8baafcb
make_dlls: Recursively ignore .ok files in all tests directories.
2006-07-10 21:26:50 +02:00
Alexandre Julliard
edd100b899
make_dlls: Recursively ignore testlist.c in all tests directories.
2006-07-10 21:19:42 +02:00
Alexandre Julliard
5258e061dc
make_dlls: Ignore generated import libraries from the top-level .gitignore.
2006-07-10 20:55:58 +02:00
Alexandre Julliard
cc2b3b48e6
Take advantage of the recursive nature of .gitignore for Makefile entries.
...
Prefix other entries with '/' to make them non-recursive.
2006-07-10 20:47:54 +02:00
Alexandre Julliard
429cd9e817
msvcrt: Avoid including system headers in msvcrt.h.
2006-07-10 11:54:10 +02:00
Ivan Leo
f2bfc7b12d
msvcrt/tests: Don't leave files on the disk.
2006-06-27 21:14:02 +02:00
Louis. Lenders
6f1ab505ac
msvcrt: Add simple test for _strdup(0).
2006-06-21 13:54:06 +02:00
Louis. Lenders
6d4a811cd5
msvcrt: Fix a crash in _strdup.
2006-06-21 13:53:59 +02:00
Andrew Ziem
2132eb5490
msvcrt: Fix _initterm, with tests.
2006-06-21 13:40:33 +02:00
Jeremy White
a73d568ece
msvcrt: Solaris asctime_r compilation fix.
2006-06-19 22:42:05 +02:00
Alexandre Julliard
db78a84d47
msvcrt: Use unsigned int instead of size_t to avoid printf format warnings.
2006-06-13 14:14:06 +02:00
Alexandre Julliard
24beabfd4e
msvcrt: Explicitly specify CDECL calling convention on exported functions.
2006-06-13 11:40:23 +02:00
Dmitry Timoshkov
a87a153587
msvcrt: Print exception code in hex.
2006-06-12 13:21:47 +02:00
Andrew Talbot
034fc473ec
msvcrt: Write-strings warning fix.
2006-06-07 15:24:18 +02:00
Andrew Talbot
5ebf4f5b4e
msvcrt: Write-strings warnings fix.
2006-06-06 11:29:41 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Peter Beutner
bc83ae9fda
msvcrt: Fix handling of 'h' prefix in swprintf.
...
- '%hs' in widechar string functions is wrongly recognized as
a widechar string. Fix this by always checking the prefix first.
- add testcase
- remove code duplication in %c/%s handling by moving code into a function.
2006-05-16 20:21:44 +02:00
Vitaliy Margolen
99cfc8bdf8
msvcrt: Fix times tests to pass on windows.
...
Add more tests for daylight-time savings.
2006-05-15 14:25:52 +02:00
qingdoa daoo
4f7adfb04a
msvcrt: Don't duplicate handle in _get_osfhandle.
2006-05-08 17:40:09 +02:00
qingdoa daoo
750102d1a3
msvcrt: If caller passes a NULL deallocator to __unDNameEx, don't use it.
2006-04-13 11:23:13 +02:00
Eric Pouech
819565be21
msvcrt: IO init.
...
Make sure, when copying handles from std ones (when no io info is
inherited from parent) to create inheritable handles (spotted by
qingdao daoo).
2006-04-11 12:38:23 +02:00
qingdoa daoo
508c6e6cf4
msvcrt: Append extension(.exe) for _spawnve argument.
2006-04-06 12:05:54 +02:00
qingdoa daoo
330978ec9b
msvcrt: Fix a TRACE message to avoid buffer overflow.
2006-04-05 10:58:41 +02:00
qingdoa daoo
35a9398ffe
msvcrt: Allow environment strings longer than 512 characters.
2006-04-03 11:39:56 +02:00
Rein Klazes
ef9038c761
msvcrt: Fix read beyond end of string in __unDNameEx().
2006-03-30 21:54:45 +02:00
H. Verbeet
8c29b7dc8b
msvcrt: Fix reading of signed numbers with unsigned read types in scanf.
2006-03-27 11:30:50 +02:00
Alexandre Julliard
19a088202a
msvcrt: Fix fflush() of files opened for read.
...
Some apps, for no particular reason, call fflush() on files opened for
read. This keeps them from tripping over their shoelaces.
2006-03-27 11:30:50 +02:00
Alexandre Julliard
7fe881c7f2
msvcrt: Implementation of wcsftime (based on a patch by Mike McCormack).
2006-03-23 20:35:52 +01:00
Eric Pouech
f7441f9e1a
msvcrt: Some more fixes to name demangling.
2006-03-06 11:37:14 +01:00
Mike McCormack
d16c72dea5
msvcrt: Add a stub for _wsetlocale.
2006-02-28 12:02:13 +01:00
Francois Gouget
e092adfc9b
Add trailing '\n's to ok() calls.
2006-02-24 21:07:33 +01:00
Peter Beutner
82818284c3
msvcrt: Save esp before calling catch block and restore afterwards.
...
It seems like the esp value (which is saved at [ebp-16]) is sometimes
changed inside the catch handler so we end up with a bogus esp
afterwards. To avoid that save it before calling the catch block.
2006-02-22 12:21:00 +01:00
Peter Beutner
be07b6db59
msvcrt: Fix handling of multiple nested exceptions.
...
Save in each nested frame a pointer to the original exception record.
Only one refence in thread_data isn't enough when we have multiple
nested frames.
2006-02-22 12:06:56 +01:00
Peter Beutner
62dc7f52f4
msvcrt: Fix handling of nested exceptions.
...
Move handling of nested exceptions completely in the
catch_function_nested_handler(). If a new exception was thrown inside
a catch block destroy the old exception object, if it is a rethrow
re-propagate the previous object.
2006-02-22 12:04:13 +01:00
Michael Stefaniuc
4758df4687
msvcrt: Misc cleanups in undname.c.
...
- remove unused argument from functions
- print the pointer in the str_array_push TRACE to be able to distinguish
the different arrays.
- comment and white space cleanups
2006-02-20 11:18:51 +01:00
Michael Stefaniuc
067be97852
msvcrt: Add some tests for __unDName().
...
Add some tests for unDName() checking:
- data type modifiers A,B,P,Q,R,S
- literal strings
- back references to names
2006-02-20 11:18:25 +01:00
Michael Stefaniuc
262a5eec78
msvcrt: Use a separate stack for back references to names
...
Use a separate array/stack for the back references to names as
sym->stack is used to push temporary strings to it which breaks back
referencing in some occasions (26 symbols in the mfc42 dll). During
this cleanup get_class() a little bit.
2006-02-20 11:18:04 +01:00
Michael Stefaniuc
e367ebbf19
msvcrt: Move code to parse a literal string out of get_class().
...
unDName: Move the code to parse a literal string from get_class() to a
separate function. Add some error handling to the new function.
2006-02-20 11:17:41 +01:00
Michael Stefaniuc
538d1a1233
msvcrt: Wrap get_class() and get_class_string() for unDName.
2006-02-20 11:16:59 +01:00
Michael Stefaniuc
29fe8d02c7
msvcrt: Fix 20 tests from demangle_test() on old Win versions.
...
In test_demangle use a custom strcmp that treats multiple spaces as
single space. __unDName() from older msvcrt (including W2K it seems)
emit in some places 2 spaces instead of one. Fixes 20 failing tests on
those old Windows versions.
2006-02-20 11:16:27 +01:00
Peter Beutner
72017cc9ab
msvcrt: Correctly set EOF flag in fread().
...
Setting the EOF flag only if _read() returns zero is not enough as we
could also read something AND hit the end of file.
_read() already sets another internal EOF flag, so just use this too.
Removing todo_wine from the test case.
2006-02-17 17:38:03 +01:00
Peter Beutner
b786ea588c
msvcrt: Add test for fread/feof.
...
When calling fread() with a large enough buffer to reach the end of
the file a subsequent feof() should return true; (marked as todo_wine
because it doesn't work atm).
2006-02-17 17:37:40 +01:00
Peter Beutner
916c4b6b8c
msvcrt: Remove bogus code.
...
We can't just pop a exception record from the exception handler list
which we haven't put there.
2006-02-17 17:37:26 +01:00
Peter Beutner
58d3f14514
msvcrt: Fix use of uninitialized variable.
2006-02-17 17:37:14 +01:00
Mike McCormack
968445ca77
msvcrt: Fix a typo.
2006-02-13 13:24:26 +01:00
Dmitry Timoshkov
ea0e7b3397
msvcrt: localtime should accept any positive time value.
2006-02-11 12:15:21 +01:00
Uwe Bonnes
b53ed5866d
msvcrt: In _mktemp sixth generated charater always starts with 'a'.
2006-02-10 15:52:47 +01:00
Michael Stefaniuc
d815b50756
msvcrt: __unDNameEx is not a stub.
2006-02-08 12:42:33 +01:00
Michael Stefaniuc
0df8b0a020
msvcrt: Handle data types B,R,S in C++ symbol demangling.
2006-02-07 12:27:35 +01:00
Eric Pouech
e66e227dbe
Fixes for missing prototypes warnings.
2006-02-06 13:13:28 +01:00
Alexandre Julliard
28486da991
msvcrt: Make error strings static.
2006-01-24 14:00:46 +01:00
Alexandre Julliard
2a192064e8
ntdll: memcpy should behave like memmove in ntdll too.
2006-01-24 12:28:34 +01:00
Alexandre Julliard
b7b7f2b679
Avoid importing _strlwr/_strupr from ntdll.
2006-01-24 12:24:05 +01:00
Alexandre Julliard
a17b2c1cd2
msvcrt: Use the msvcrt version of printf everywhere.
2006-01-24 12:21:58 +01:00
Alexandre Julliard
2dacd3c54e
msvcrt: Properly implemented strerror and perror (based on a patch by
...
Uwe Bonnes).
2006-01-23 19:58:10 +01:00
Alexandre Julliard
401ead5c8f
msvcrt: Added _sys_errlist (based on a patch by Uwe Bonnes).
2006-01-23 19:30:21 +01:00
Alexandre Julliard
4755f8acec
msvcrt: Added EILSEQ definition.
2006-01-23 19:29:36 +01:00
Hans Leidekker
1b69f035e1
msvcrt: Stub implementation for wcsftime.
2006-01-23 19:29:15 +01:00
Alexandre Julliard
c016509119
msvcrt: Preserve all registers in call_ebp_func.
2006-01-21 19:23:02 +01:00
Sasha Slijepcevic
736cd60340
msvcrt: In _tempnam, if TMP is set, it has a precedence over the
...
parameter dir.
2006-01-18 14:22:27 +01:00
Marcus Meissner
71908c41c3
msvcrt: _makepath(): operate on target buffer directly.
2006-01-17 16:20:37 +01:00
Alexandre Julliard
30a90e1842
msvcrt: Forward functions to ntdll instead of libc where possible.
2006-01-14 17:42:12 +01:00
Alexandre Julliard
b34ac466b1
msvcrt: Added wrappers for a few functions instead of linking them
...
directly to libc.
2006-01-14 17:40:29 +01:00
Alexandre Julliard
78412005e1
msvcrt: Set errno in the standard math functions too, not only in the
...
_CI* variants.
2006-01-14 17:36:23 +01:00
Alexandre Julliard
ee603ce6dd
msvcrt: Make snprintf and snwprintf use the msvcrt version of printf.
...
Remove todos from tests that succeed now.
2006-01-14 17:30:02 +01:00
Alexandre Julliard
ad8cb6133e
msvcrt: Reimplement rand() and srand() to use per-thread data for the
...
random seed.
2006-01-14 17:27:28 +01:00
Alexandre Julliard
2ec3b96135
msvcrt: Make strtok and wcstok thread-safe by using the per-thread data.
2006-01-14 17:24:49 +01:00
Alexandre Julliard
f9e5b0f5f0
msvcrt: Implemented asctime, ctime and strftime instead of using the libc ones.
...
Make the code thread-safe by using asctime_r if available.
2006-01-14 17:22:03 +01:00
Aric Stewart
4bc3b16b44
msvcrt: Modify dir test to create its own directory to ensure the
...
directory exists for the test. Using the temp dir as the root.
2006-01-11 20:55:38 +01:00
Aric Stewart
3022ade359
msvcrt: Add a regression test for _fullpath.
2006-01-06 21:46:09 +01:00
Aric Stewart
e09a6c8080
msvcrt: Reworked _fullpath.
...
Investigation with native msvcrt revealed that it is a wrapper for
GetFullPathName and the current implementation was crashing with older
mozilla installs if the path passed in was uninitialized.
2006-01-06 21:45:26 +01:00
Alexandre Julliard
545c4b7e7c
msvcrt: Added assembly routines to save/restore registers for setjmp/longjmp
...
to avoid the overhead of a full-blown register function.
Some tracing improvements.
2006-01-05 14:36:37 +01:00
Alexandre Julliard
abb170fac3
msvcrt: Added some assembly glue for the asm bits of __CxxFrameHandler
...
to avoid having to save/restore the whole context on every call.
2006-01-05 13:56:11 +01:00
Jesse Allen
c5dc38874a
msvcrt: More printf tests for I64 integer size support.
2005-12-26 13:01:49 +01:00
Jesse Allen
419d493aac
msvcrt: pf_integer_conv for I64.
...
- Add pf_integer_conv and pf_is_integer_format.
- Update pf_fill to handle printing the sign for signed integers.
- Handle I64 integer sizes using pf_integer_conv and pf_output_format_A.
2005-12-26 13:01:38 +01:00
Jesse Allen
ee058ed078
msvcrt: Do not treat %ll as an IntegerDouble in printf.
2005-12-26 13:00:35 +01:00
Jesse Allen
6c70942a05
msvcrt: Parse I, I32, and I64 integer size flags in printf.
2005-12-26 13:00:01 +01:00
Maxime Bellengé
def7563526
msvcrt: Prevent a crash if TlsGetValue returns NULL in DLL_THREAD_DETACH.
2005-12-26 12:57:06 +01:00
Alexandre Julliard
06c1a36bce
msvcrt: Return a per-thread buffer in localtime and gmtime.
2005-12-21 20:54:26 +01:00
Marcus Meissner
9a583763ee
msvcrt: Implemented wctime(), wasctime().
...
Free thread data in DLL_THREAD_DETACH.
2005-12-21 20:23:47 +01:00
Jesse Allen
180326bb0a
msvcrt: Fix printf sign flags.
...
Fix the printf sign flags so that '+' doesn't always override ' '
space alone. If they both appear, continue parsing and let '+' take
precedence.
2005-12-21 20:07:03 +01:00
Jesse Allen
39b725b799
msvcrt: Ignore PadZero when LeftAlign is true in printf conversions.
2005-12-20 11:49:05 +01:00
Jesse Allen
5c6311688c
msvcrt: Require exact uppercase and lowercase format in printf routines.
2005-12-19 21:26:46 +01:00
Alexandre Julliard
ae964ac801
Take advantage of the __EXCEPT_PAGE_FAULT macro.
2005-12-16 17:17:57 +01:00
Alexandre Julliard
15430f6eda
Add -register hint in ntdll, kernel and msvcrt spec files.
2005-12-16 12:44:58 +01:00
Eric Pouech
681b71ed9a
Functions with no paramters must be (void).
2005-12-12 12:42:44 +01:00
Alexandre Julliard
7dd571693a
Improved the CHECK_DEF macro to avoid code duplication.
2005-12-01 12:55:53 +01:00
Alexandre Julliard
c1ed640224
Prefix signal definitions with MSVCRT_ to avoid conflicts with system
...
headers.
2005-12-01 12:48:44 +01:00
Alexandre Julliard
0ec7e1a591
Renamed all .cvsignore files to .gitignore.
2005-11-26 13:10:33 +01:00
Mike McCormack
d160c8b926
Add some tests for _fcvt.
2005-11-24 19:23:10 +01:00
Alexandre Julliard
cc01e8ff05
Preserve 16-byte stack alignment in the various assembly
...
functions. Needed for MacOSX.
2005-11-23 19:55:06 +01:00
Rein Klazes
f0af162aa3
Fix bogus unreal code page messages in _setmbcp().
2005-11-21 13:34:37 +00:00
Rein Klazes
3d96c56f24
Do not forward _mbccpy to strcpy.
...
Remove the error message in _mbccpy, it is not an error.
2005-11-21 13:34:29 +00:00
Rein Klazes
6f92870a80
Fix _mbsspn() with conformance tests.
2005-11-21 12:03:18 +00:00
Saulius Krasuckas
b9758443e2
Minor MSVCRT test changes:
...
- add two invalid parameter checks for fopen(),
- rearrange test sequence into two parts (low-level and stream I/O),
- break long line.
2005-11-21 11:58:11 +00:00
Eric Pouech
ced7436fe9
Ensures, when we cannot demangle the string, to return the mangled
...
name instead of a NULL pointer.
2005-11-18 12:06:00 +00:00
Eric Pouech
9db2d323fa
Provide a sample of the joy of MSC symbol mangling.
2005-11-17 11:05:00 +00:00
Saulius Krasuckas
5a10c37dba
Fix _fcloseall() return value.
...
Improve some trace messages.
Add tests for fopen(), fclose(), _fcloseall().
Stricten some checks of _unlink().
2005-11-16 11:47:51 +00:00
Uwe Bonnes
6cc66c9925
Undname: Allow more then one coded character in demangle_datatype.
2005-11-14 15:11:39 +00:00
Francois Gouget
0edbaf7e80
Remove spaces before '\n' in traces.
2005-11-10 12:14:56 +00:00
Kevin Koltzau
935dea2fb4
Fix warnings and errors in 64bit.
2005-11-03 13:17:51 +00:00
Marcus Meissner
d5cf055d64
Specify a DLL version for msvcrt.dll.
2005-11-03 12:05:05 +00:00
Alexandre Julliard
74d04a020d
Fixed _wstrdate/_wstrtime parameters.
2005-11-01 18:11:08 +00:00
Robert Reif
b8d1544661
Implement _wstrdate and _wstrtime with tests.
2005-10-30 19:03:58 +00:00
Peter Beutner
78ea87c580
Fix exception handling for non CXX_EXCEPTIONs.
2005-10-30 19:03:43 +00:00
Kevin Koltzau
f9fb40e572
Enable line editing for _cgets.
2005-10-29 10:29:24 +00:00
Mike McCormack
cbe3fb6922
Use the correct buffer - reported by Jesse Allen.
2005-10-28 09:40:16 +00:00
Vijay Kiran Kamuju
ecc633adb7
Added a test case for %0f and %.0f.
2005-10-27 12:25:18 +00:00
Mike McCormack
990e537ac5
Missing and zero precision specifiers are different.
2005-10-27 10:20:08 +00:00
Eric Pouech
0518c164ca
Previous fix incorrectly removed all test for strings starting with
...
'?', this is only valid when undname is called with the 'NO_ARGUMENTS'
flags.
2005-10-26 10:09:05 +00:00
Alexandre Julliard
bb648917b6
_cexit should call the atexit functions.
2005-10-21 15:55:20 +00:00
Vijay Kiran Kamuju
9c6a15ce62
Fix msvcrt symbol demangling for non MS symbols.
2005-10-20 13:15:11 +00:00
Vitaliy Margolen
9b748c8de2
Fix _ismbblead test to pass on windows.
2005-10-10 18:00:20 +00:00
Richard Cohen
b70a5f2954
Fix an error message.
2005-10-10 10:29:24 +00:00
Vitaliy Margolen
935fcfa8bc
Add a few tests that fail under wine.
2005-10-08 10:34:58 +00:00
Vitaliy Margolen
a6a5fb7a70
Fix initial position for files opened with O_APPEND flag.
2005-10-07 15:01:15 +00:00
Alexandre Julliard
7e22be4d84
We are no longer generating .dbg.c files.
2005-09-29 10:35:58 +00:00
Alexandre Julliard
6b2a9b3022
Added implementation of _dstbias and __p__dstbias.
...
Added macros for _dstbias, _daylight, _timezone and _tzname.
2005-09-27 10:55:50 +00:00
Francois Gouget
c63b85b866
Make it clear the empty body sections are not accidental.
2005-09-26 09:54:47 +00:00
Alexandre Julliard
9f859692f9
Replace DPRINTF by TRACE in a few places.
2005-09-25 15:23:21 +00:00
Vijay Kiran Kamuju
07b53de0b2
Implementation of _get_sbh_threshold and _set_sbh_threshold
...
functions.
2005-09-23 10:07:05 +00:00
Vijay Kiran Kamuju
8c2ba6f93c
Added __p__amblksiz implementation.
2005-09-19 14:41:25 +00:00
Alexandre Julliard
261e376495
Fixed a number of pointer to integer conversions that wouldn't work
...
right on a 64-bit platform.
2005-09-12 15:14:06 +00:00
Alexandre Julliard
4c34d9386c
Specify 64-bit integers as double instead of long long in spec files
...
so that we get the correct number of arguments.
2005-09-09 15:05:01 +00:00