cvs: php4 /ext/standard url.c versioning.c
| From: | Andrei Zmievski | Date: | Fri, 19 Oct 2001 17:16:13 +0000 |
| Subject: | cvs: php4 /ext/standard url.c versioning.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-7867@lists.php.net to get a copy of this message | ||
andrei Fri Oct 19 13:16:13 2001 EDT
Modified files:
/php4/ext/standard url.c versioning.c
Log:
Convert to use new parameter parsing API.
Index: php4/ext/standard/url.c
diff -u php4/ext/standard/url.c:1.47 php4/ext/standard/url.c:1.48
--- php4/ext/standard/url.c:1.47 Sun Sep 9 09:29:19 2001
+++ php4/ext/standard/url.c Fri Oct 19 13:16:12 2001
@@ -15,7 +15,7 @@
| Author: Jim Winstead (jimw@php.net) |
+----------------------------------------------------------------------+
*/
-/* $Id: url.c,v 1.47 2001/09/09 13:29:19 derick Exp $ */
+/* $Id: url.c,v 1.48 2001/10/19 17:16:12 andrei Exp $ */
#include <stdlib.h>
#include <string.h>
@@ -163,17 +163,17 @@
Parse a URL and return its components */
PHP_FUNCTION(parse_url)
{
- zval **str;
+ char *str;
+ int str_len;
php_url *resource;
- if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, &str) == FAILURE) {
- WRONG_PARAM_COUNT;
+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &str, &str_len) ==
FAILURE) {
+ return;
}
- convert_to_string_ex(str);
- resource = php_url_parse(Z_STRVAL_PP(str));
+ resource = php_url_parse(str);
if (resource == NULL) {
- php_error(E_WARNING, "unable to parse url (%s)", Z_STRVAL_PP(str));
+ php_error(E_WARNING, "unable to parse url (%s)", str);
RETURN_FALSE;
}
@@ -280,17 +280,16 @@
URL-encodes string */
PHP_FUNCTION(urlencode)
{
- zval **arg;
- char *str;
- int str_len;
+ char *in_str, *out_str;
+ int in_str_len, out_str_len;
- if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, &arg) == FAILURE) {
- WRONG_PARAM_COUNT;
+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &in_str,
+ &in_str_len) == FAILURE) {
+ return;
}
- convert_to_string_ex(arg);
- str = php_url_encode(Z_STRVAL_PP(arg), Z_STRLEN_PP(arg), &str_len);
- RETURN_STRINGL(str, str_len, 0);
+ out_str = php_url_encode(in_str, in_str_len, &out_str_len);
+ RETURN_STRINGL(out_str, out_str_len, 0);
}
/* }}} */
@@ -298,19 +297,18 @@
Decodes URL-encoded string */
PHP_FUNCTION(urldecode)
{
- zval **arg;
- char *str;
- int len;
+ char *in_str, *out_str;
+ int in_str_len, out_str_len;
- if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, &arg) == FAILURE) {
- WRONG_PARAM_COUNT;
+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &in_str,
+ &in_str_len) == FAILURE) {
+ return;
}
- convert_to_string_ex(arg);
- str = estrndup(Z_STRVAL_PP(arg), Z_STRLEN_PP(arg));
- len = php_url_decode(str, Z_STRLEN_PP(arg));
+ out_str = estrndup(in_str, in_str_len);
+ out_str_len = php_url_decode(out_str, in_str_len);
- RETURN_STRINGL(str, len, 0);
+ RETURN_STRINGL(out_str, out_str_len, 0);
}
/* }}} */
@@ -380,17 +378,16 @@
URL-encodes string */
PHP_FUNCTION(rawurlencode)
{
- zval **arg;
- char *str;
- int new_len;
+ char *in_str, *out_str;
+ int in_str_len, out_str_len;
- if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, &arg) == FAILURE) {
- WRONG_PARAM_COUNT;
+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &in_str,
+ &in_str_len) == FAILURE) {
+ return;
}
- convert_to_string_ex(arg);
- str = php_raw_url_encode(Z_STRVAL_PP(arg), Z_STRLEN_PP(arg), &new_len);
- RETURN_STRINGL(str, new_len, 0);
+ out_str = php_raw_url_encode(in_str, in_str_len, &out_str_len);
+ RETURN_STRINGL(out_str, out_str_len, 0);
}
/* }}} */
@@ -398,19 +395,18 @@
Decodes URL-encodes string */
PHP_FUNCTION(rawurldecode)
{
- zval **arg;
- int len;
- char *str;
+ char *in_str, *out_str;
+ int in_str_len, out_str_len;
- if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, &arg) == FAILURE) {
- WRONG_PARAM_COUNT;
+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &in_str,
+ &in_str_len) == FAILURE) {
+ return;
}
- convert_to_string_ex(arg);
- str = estrndup(Z_STRVAL_PP(arg), Z_STRLEN_PP(arg));
- len = php_raw_url_decode(str, Z_STRLEN_PP(arg));
+ out_str = estrndup(in_str, in_str_len);
+ out_str_len = php_raw_url_decode(out_str, in_str_len);
- RETURN_STRINGL(str, len, 0);
+ RETURN_STRINGL(out_str, out_str_len, 0);
}
/* }}} */
Index: php4/ext/standard/versioning.c
diff -u php4/ext/standard/versioning.c:1.4 php4/ext/standard/versioning.c:1.5
--- php4/ext/standard/versioning.c:1.4 Thu Oct 11 06:35:59 2001
+++ php4/ext/standard/versioning.c Fri Oct 19 13:16:12 2001
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: versioning.c,v 1.4 2001/10/11 10:35:59 ssb Exp $ */
+/* $Id: versioning.c,v 1.5 2001/10/19 17:16:12 andrei Exp $ */
#include <stdio.h>
#include <sys/types.h>
@@ -34,7 +34,7 @@
PHPAPI char *
php_canonicalize_version(const char *version)
{
- int len = strlen(version), in_number = 0;
+ int len = strlen(version);
char *buf = emalloc(len * 2 + 1), *q, lp, lq;
const char *p;
@@ -175,22 +175,19 @@
PHP_FUNCTION(version_compare)
{
- zval **v1, **v2, **oper;
+ char *v1, *v2, *op;
+ int v1_len, v2_len, op_len;
int compare, argc;
- char *op;
argc = ZEND_NUM_ARGS();
- if (argc < 2 || argc > 3 || zend_get_parameters_ex(argc, &v1, &v2, &oper) ==
FAILURE) {
- WRONG_PARAM_COUNT;
+ if (zend_parse_parameters(argc TSRMLS_CC, "ss|s", &v1, &v1_len, &v2,
+ &v2_len, &op, &op_len) == FAILURE) {
+ return;
}
- convert_to_string_ex(v1);
- convert_to_string_ex(v2);
- compare = php_version_compare(Z_STRVAL_PP(v1), Z_STRVAL_PP(v2));
+ compare = php_version_compare(v1, v2);
if (argc == 2) {
RETURN_LONG(compare);
}
- convert_to_string_ex(oper);
- op = Z_STRVAL_PP(oper);
if (!strcmp(op, "<") || !strcmp(op, "lt")) {
RETURN_LONG(compare == -1);
}