andrey          Wed Oct  9 06:33:22 2002 EDT

  Modified files:              
    /php4/ext/standard  string.c 
  Log:
  Returning to the old behavior of str_shuffle() a bit. Now the passed string is
  left unmodified and the shuffled string is returned.
  
  
Index: php4/ext/standard/string.c
diff -u php4/ext/standard/string.c:1.316 php4/ext/standard/string.c:1.317
--- php4/ext/standard/string.c:1.316    Tue Oct  8 05:52:59 2002
+++ php4/ext/standard/string.c  Wed Oct  9 06:33:22 2002
@@ -18,7 +18,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: string.c,v 1.316 2002/10/08 09:52:59 andrey Exp $ */
+/* $Id: string.c,v 1.317 2002/10/09 10:33:22 andrey Exp $ */
 
 /* Synced with php 3.0 revision 1.193 1999-06-16 [ssb] */
 
@@ -4025,15 +4025,18 @@
    Shuffles string. One permutation of all possible is created */
 PHP_FUNCTION(str_shuffle)
 {
-       char *str;
-       int str_len;
+       zval **arg;
        
-       if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &str, &str_len) == 
FAILURE) {
-               RETURN_FALSE;
+       if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, &arg)) {
+               WRONG_PARAM_COUNT;
        }
-       php_string_shuffle(str, str_len TSRMLS_CC);
        
-       return;
+       convert_to_string_ex(arg);
+       *return_value = **arg;
+       zval_copy_ctor(return_value);
+       if (Z_STRLEN_P(return_value) > 1) { 
+               php_string_shuffle(Z_STRVAL_P(return_value), Z_STRLEN_P(return_value) 
+TSRMLS_CC);
+       }
 }
 /* }}} */
 



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to