]> granicus.if.org Git - php/commitdiff
- Fixed bug #50185 (ldap_get_entries() return false instead of an empty array when...
authorJani Taskinen <jani@php.net>
Wed, 18 Nov 2009 17:44:58 +0000 (17:44 +0000)
committerJani Taskinen <jani@php.net>
Wed, 18 Nov 2009 17:44:58 +0000 (17:44 +0000)
# This is also revert of bad patch to bug #48469 and fixes it properly.

ext/ldap/ldap.c

index c1bfa87b063c442b53bcb4e85f728286aa9f2bd0..877e67e13ecc9d2768e37a8c50e99cb41b33faa3 100644 (file)
@@ -957,21 +957,21 @@ PHP_FUNCTION(ldap_get_entries)
        ldap = ld->link;
        num_entries = ldap_count_entries(ldap, ldap_result);
 
+       array_init(return_value);
+       add_assoc_long(return_value, "count", num_entries);
+
        if (num_entries == 0) {
-               RETURN_NULL();
+               return;
        }
-       num_entries = 0;
        
        ldap_result_entry = ldap_first_entry(ldap, ldap_result);
        if (ldap_result_entry == NULL) {
+               zval_dtor(return_value);
                RETURN_FALSE;
        }
 
-       array_init(return_value);
-       add_assoc_long(return_value, "count", num_entries);
-
+       num_entries = 0;
        while (ldap_result_entry != NULL) {
-
                MAKE_STD_ZVAL(tmp1);
                array_init(tmp1);