From ad8b4257a21ba09a66608ce0ced2a8c631539dde Mon Sep 17 00:00:00 2001 From: Sascha Schumann Date: Wed, 3 Jul 2002 18:36:50 +0000 Subject: Please note that you need to use 'int' as a length type when fetching strings. --- README.PARAMETER_PARSING_API | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'README.PARAMETER_PARSING_API') diff --git a/README.PARAMETER_PARSING_API b/README.PARAMETER_PARSING_API index 0fb2dacce8..788a27d8e6 100644 --- a/README.PARAMETER_PARSING_API +++ b/README.PARAMETER_PARSING_API @@ -105,7 +105,14 @@ if (zend_parse_parameters(3 TSRMLS_CC, "zbr!", /* Get either a set of 3 longs or a string. */ long l1, l2, l3; char *s; -long length; +/* + * The function expects a pointer to a integer in this case, not a long + * or any other type. If you specify a type which is larger + * than a 'int', the upper bits might not be initialized + * properly, leading to random crashes on platforms like + * Tru64 or Linux/Alpha. + */ +int length; if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC, "lll", &l1, &l2, &l3) == SUCCESS) { -- cgit v1.2.1