summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--UPGRADING4
-rw-r--r--ext/enchant/enchant.c13
-rw-r--r--ext/enchant/enchant.stub.php6
-rw-r--r--ext/enchant/enchant_arginfo.h4
4 files changed, 12 insertions, 15 deletions
diff --git a/UPGRADING b/UPGRADING
index 08f9558db8..c49015d17f 100644
--- a/UPGRADING
+++ b/UPGRADING
@@ -221,6 +221,10 @@ PHP 8.0 UPGRADE NOTES
* DOMUserDataHandler
* DOMTypeInfo
+- Enchant:
+ . enchant_broker_list_dicts(), enchant_broker_describe() and
+ enchant_dict_suggest() will now return an empty array instead of null.
+
- Exif:
. Removed read_exif_data(). exif_read_data() should be used instead.
diff --git a/ext/enchant/enchant.c b/ext/enchant/enchant.c
index 8de6924b8e..9910e5eeaf 100644
--- a/ext/enchant/enchant.c
+++ b/ext/enchant/enchant.c
@@ -92,11 +92,6 @@ enumerate_providers_fn (const char * const name,
add_assoc_string(&tmp_array, "name", (char *)name);
add_assoc_string(&tmp_array, "desc", (char *)desc);
add_assoc_string(&tmp_array, "file", (char *)file);
-
- if (Z_TYPE_P(zdesc)!=IS_ARRAY) {
- array_init(zdesc);
- }
-
add_next_index_zval(zdesc, &tmp_array);
}
/* }}} */
@@ -129,10 +124,6 @@ static void php_enchant_list_dicts_fn( const char * const lang_tag,
add_assoc_string(&tmp_array, "provider_name", (char *)provider_name);
add_assoc_string(&tmp_array, "provider_desc", (char *)provider_desc);
add_assoc_string(&tmp_array, "provider_file", (char *)provider_file);
-
- if (Z_TYPE_P(zdesc) != IS_ARRAY) {
- array_init(zdesc);
- }
add_next_index_zval(zdesc, &tmp_array);
}
@@ -434,6 +425,7 @@ PHP_FUNCTION(enchant_broker_list_dicts)
PHP_ENCHANT_GET_BROKER;
+ array_init(return_value);
enchant_broker_list_dicts(pbroker->pbroker, php_enchant_list_dicts_fn, (void *)return_value);
}
/* }}} */
@@ -612,6 +604,7 @@ PHP_FUNCTION(enchant_broker_describe)
PHP_ENCHANT_GET_BROKER;
+ array_init(return_value);
enchant_broker_describe(pbroker->pbroker, describetozval, (void *)return_value);
}
/* }}} */
@@ -698,12 +691,12 @@ PHP_FUNCTION(enchant_dict_suggest)
}
PHP_ENCHANT_GET_DICT;
+ array_init(return_value);
suggs = enchant_dict_suggest(pdict->pdict, word, wordlen, &n_sugg);
if (suggs && n_sugg) {
size_t i;
- array_init(return_value);
for (i = 0; i < n_sugg; i++) {
add_next_index_string(return_value, suggs[i]);
}
diff --git a/ext/enchant/enchant.stub.php b/ext/enchant/enchant.stub.php
index f4bed54dc1..a65e8162ee 100644
--- a/ext/enchant/enchant.stub.php
+++ b/ext/enchant/enchant.stub.php
@@ -27,7 +27,7 @@ function enchant_broker_set_dict_path($broker, int $name, string $value): bool {
function enchant_broker_get_dict_path($broker, int $name): string|false {}
/** @param resource $broker */
-function enchant_broker_list_dicts($broker): ?array {}
+function enchant_broker_list_dicts($broker): array {}
/**
* @param resource $broker
@@ -51,7 +51,7 @@ function enchant_broker_dict_exists($broker, string $tag): bool {}
function enchant_broker_set_ordering($broker, string $tag, string $ordering): bool {}
/** @param resource $broker */
-function enchant_broker_describe($broker): ?array {}
+function enchant_broker_describe($broker): array {}
/** @param resource $dict */
function enchant_dict_quick_check($dict, string $word, &$suggestions = null): bool {}
@@ -60,7 +60,7 @@ function enchant_dict_quick_check($dict, string $word, &$suggestions = null): bo
function enchant_dict_check($dict, string $word): bool {}
/** @param resource $dict */
-function enchant_dict_suggest($dict, string $word): ?array {}
+function enchant_dict_suggest($dict, string $word): array {}
/** @param resource $dict */
function enchant_dict_add($dict, string $word): void {}
diff --git a/ext/enchant/enchant_arginfo.h b/ext/enchant/enchant_arginfo.h
index 07492a1cae..aab9a860b6 100644
--- a/ext/enchant/enchant_arginfo.h
+++ b/ext/enchant/enchant_arginfo.h
@@ -22,7 +22,7 @@ ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_enchant_broker_get_dict_path, 0,
ZEND_ARG_TYPE_INFO(0, name, IS_LONG, 0)
ZEND_END_ARG_INFO()
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_enchant_broker_list_dicts, 0, 1, IS_ARRAY, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_enchant_broker_list_dicts, 0, 1, IS_ARRAY, 0)
ZEND_ARG_INFO(0, broker)
ZEND_END_ARG_INFO()
@@ -64,7 +64,7 @@ ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_enchant_dict_check, 0, 2, _IS_BO
ZEND_ARG_TYPE_INFO(0, word, IS_STRING, 0)
ZEND_END_ARG_INFO()
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_enchant_dict_suggest, 0, 2, IS_ARRAY, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_enchant_dict_suggest, 0, 2, IS_ARRAY, 0)
ZEND_ARG_INFO(0, dict)
ZEND_ARG_TYPE_INFO(0, word, IS_STRING, 0)
ZEND_END_ARG_INFO()