stas Mon Jul 14 06:42:11 2008 UTC
Modified files: (Branch: PHP_5_3)
/php-src/ext/intl intl_data.h
Log:
- increase max locale to 80
- add some macros
http://cvs.php.net/viewvc.cgi/php-src/ext/intl/intl_data.h?r1=1.1.2.1&r2=1.1.2.2&diff_format=u
Index: php-src/ext/intl/intl_data.h
diff -u php-src/ext/intl/intl_data.h:1.1.2.1
php-src/ext/intl/intl_data.h:1.1.2.2
--- php-src/ext/intl/intl_data.h:1.1.2.1 Mon Jul 7 22:51:02 2008
+++ php-src/ext/intl/intl_data.h Mon Jul 14 06:42:11 2008
@@ -45,6 +45,16 @@
obj = (oclass##_object *) zend_object_store_get_object( object
TSRMLS_CC ); \
intl_error_reset( INTL_DATA_ERROR_P(obj) TSRMLS_CC );
\
+// Check status by error code, if error - exit
+#define INTL_CHECK_STATUS(err, msg)
\
+ intl_error_set_code( NULL, (err) TSRMLS_CC );
\
+ if( U_FAILURE((err)) )
\
+ {
\
+ intl_errors_set_custom_msg( NULL, msg, 0 TSRMLS_CC );
\
+ RETURN_FALSE;
\
+ }
+
+// Check status in object, if error - exit
#define INTL_METHOD_CHECK_STATUS(obj, msg)
\
intl_error_set_code( NULL, INTL_DATA_ERROR_CODE((obj)) TSRMLS_CC );
\
if( U_FAILURE( INTL_DATA_ERROR_CODE((obj)) ) )
\
@@ -53,6 +63,17 @@
RETURN_FALSE;
\
}
+// Check status, if error - destroy value and exit
+#define INTL_CTOR_CHECK_STATUS(obj, msg, val)
\
+ intl_error_set_code( NULL, INTL_DATA_ERROR_CODE((obj)) TSRMLS_CC );
\
+ if( U_FAILURE( INTL_DATA_ERROR_CODE((obj)) ) )
\
+ {
\
+ intl_errors_set_custom_msg( INTL_DATA_ERROR_P((obj)), msg, 0 TSRMLS_CC
); \
+ zval_dtor((val));
\
+ ZVAL_NULL((val));
\
+ RETURN_NULL();
\
+ }
+
#define INTL_METHOD_RETVAL_UTF8(obj, ustring, ulen, free_it)
\
{
\
char *u8value;
\
@@ -65,19 +86,19 @@
RETVAL_STRINGL(u8value, u8len, 0);
\
}
-#define INTL_MAX_LOCALE_LEN 64
+#define INTL_MAX_LOCALE_LEN 80
#define INTL_CHECK_LOCALE_LEN(locale_len)
\
if((locale_len) > INTL_MAX_LOCALE_LEN) {
\
intl_error_set( NULL, U_ILLEGAL_ARGUMENT_ERROR,
\
- "Locale string too long, should be no longer than 64 characters", 0
TSRMLS_CC ); \
+ "Locale string too long, should be no longer than 80 characters", 0
TSRMLS_CC ); \
RETURN_NULL();
\
}
#define INTL_CHECK_LOCALE_LEN_OBJ(locale_len, object)
\
if((locale_len) > INTL_MAX_LOCALE_LEN) {
\
intl_error_set( NULL, U_ILLEGAL_ARGUMENT_ERROR,
\
- "Locale string too long, should be no longer than 64 characters", 0
TSRMLS_CC ); \
+ "Locale string too long, should be no longer than 80 characters", 0
TSRMLS_CC ); \
zval_dtor(object);
\
ZVAL_NULL(object);
\
RETURN_NULL();
\-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
