cvs: php4 /ext/standard php_string.h string.c

From: Date: Sun, 09 Sep 2001 12:55:48 +0000
Subject: cvs: php4 /ext/standard php_string.h string.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-7334@lists.php.net to get a copy of this message
derick Sun Sep 9 08:55:48 2001 EDT Modified files: /php4/ext/standard php_string.h string.c Log: - Really fix nl2br now... it's actaulyl faster now Index: php4/ext/standard/php_string.h diff -u php4/ext/standard/php_string.h:1.51 php4/ext/standard/php_string.h:1.52 --- php4/ext/standard/php_string.h:1.51 Tue Sep 4 05:35:53 2001 +++ php4/ext/standard/php_string.h Sun Sep 9 08:55:48 2001 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_string.h,v 1.51 2001/09/04 09:35:53 sterling Exp $ */ +/* $Id: php_string.h,v 1.52 2001/09/09 12:55:48 derick Exp $ */ /* Synced with php 3.0 revision 1.43 1999-06-16 [ssb] */ @@ -117,7 +117,7 @@ PHPAPI void php_trim2(zval **str, zval **what, zval *return_value, int mode TSRMLS_DC); PHPAPI void php_strip_tags(char *rbuf, int len, int state, char *allow, int allow_len); -PHPAPI void php_char_to_str(char *str, uint len, char from, char *to, int to_len, pval *result); +PHPAPI int php_char_to_str(char *str, uint len, char from, char *to, int to_len, pval *result); PHPAPI void php_implode(zval *delim, zval *arr, zval *return_value); PHPAPI void php_explode(zval *delim, zval *str, zval *return_value, int limit); Index: php4/ext/standard/string.c diff -u php4/ext/standard/string.c:1.238 php4/ext/standard/string.c:1.239 --- php4/ext/standard/string.c:1.238 Sun Sep 9 07:42:36 2001 +++ php4/ext/standard/string.c Sun Sep 9 08:55:48 2001 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: string.c,v 1.238 2001/09/09 11:42:36 derick Exp $ */ +/* $Id: string.c,v 1.239 2001/09/09 12:55:48 derick Exp $ */ /* Synced with php 3.0 revision 1.193 1999-06-16 [ssb] */ @@ -2473,10 +2473,11 @@ /* {{{ php_char_to_str */ -PHPAPI void php_char_to_str(char *str, uint len, char from, char *to, int to_len, zval *result) +PHPAPI int php_char_to_str(char *str, uint len, char from, char *to, int to_len, zval *result) { - int char_count=0; - char *source, *target, *tmp, *source_end=str+len, *tmp_end=NULL; + int char_count = 0; + int replaced = 0; + char *source, *target, *tmp, *source_end=str+len, *tmp_end = NULL; for (source=str; source<source_end; source++) { if (*source==from) { @@ -2486,7 +2487,7 @@ if (char_count==0) { ZVAL_STRINGL(result, str, len, 1); - return; + return 0; } Z_STRLEN_P(result) = len + (char_count * (to_len - 1)); @@ -2495,6 +2496,7 @@ for (source = str; source < source_end; source++) { if (*source == from) { + replaced = 1; for (tmp = to, tmp_end = tmp+to_len; tmp < tmp_end; tmp++) { *target = *tmp; target++; @@ -2505,6 +2507,7 @@ } } *target = 0; + return replaced; } /* }}} */ @@ -2992,13 +2995,12 @@ if (new_length != (*str)->value.str.len) RETURN_STRINGL (tmp, new_length, 0); efree (tmp); - /* Mac style line-endings */ - tmp = boyer_str_to_str((*str)->value.str.val, (*str)->value.str.len, "\n\r", 2, "<br />\n\r", 8, &new_length); - if (new_length != (*str)->value.str.len) - RETURN_STRINGL (tmp, new_length, 0); - efree (tmp); - /* Unix style line-endings */ - php_char_to_str((*str)->value.str.val,(*str)->value.str.len, '\n',"<br />\n", 7, return_value); + + /* Mac / Unix style line-endings */ + if (php_char_to_str((*str)->value.str.val,(*str)->value.str.len, '\n',"<br />\n", 7, return_value)) + return; + efree (Z_STRVAL_P(return_value)); + php_char_to_str((*str)->value.str.val,(*str)->value.str.len, '\r',"<br />\r", 7, return_value); } /* }}} */ @@ -3786,6 +3788,6 @@ * tab-width: 4 * c-basic-offset: 4 * End: - * vim600: noet sw=4 ts=4 tw=78 fdm=marker - * vim<600: noet sw=4 ts=4 tw=78 + * vim600: noet sw=4 ts=4 fdm=marker + * vim<600: noet sw=4 ts=4 */

« previous php.cvs (#7334) next »