@@ -619,7 +619,7 @@ void object_to_bson(zval *object, php_phongo_bson_flags_t flags, const char *key
619
619
}
620
620
621
621
if (Z_TYPE_P (obj_data ) != IS_ARRAY ) {
622
- phongo_throw_exception (PHONGO_ERROR_RUNTIME TSRMLS_CC , "Expected %s() to return an array, %s given" , BSON_SERIALIZE_FUNC_NAME , zend_get_type_by_const (Z_TYPE_P (obj_data )));
622
+ phongo_throw_exception (PHONGO_ERROR_UNEXPECTED_VALUE TSRMLS_CC , "Expected %s() to return an array, %s given" , BSON_SERIALIZE_FUNC_NAME , zend_get_type_by_const (Z_TYPE_P (obj_data )));
623
623
zval_ptr_dtor (& obj_data );
624
624
625
625
return ;
@@ -767,7 +767,7 @@ void phongo_bson_append(bson_t *bson, php_phongo_bson_flags_t flags, const char
767
767
PHONGO_API void zval_to_bson (zval * data , php_phongo_bson_flags_t flags , bson_t * bson , bson_t * * bson_out TSRMLS_DC ) /* {{{ */
768
768
{
769
769
HashPosition pos ;
770
- HashTable * ht_data ;
770
+ HashTable * ht_data = NULL ;
771
771
zval * obj_data = NULL ;
772
772
773
773
switch (Z_TYPE_P (data )) {
@@ -777,14 +777,13 @@ PHONGO_API void zval_to_bson(zval *data, php_phongo_bson_flags_t flags, bson_t *
777
777
778
778
if (!obj_data ) {
779
779
/* zend_call_method() failed */
780
- return ;
780
+ break ;
781
781
}
782
782
783
783
if (Z_TYPE_P (obj_data ) != IS_ARRAY ) {
784
- phongo_throw_exception (PHONGO_ERROR_RUNTIME TSRMLS_CC , "Expected %s() to return an array, %s given" , BSON_SERIALIZE_FUNC_NAME , zend_get_type_by_const (Z_TYPE_P (obj_data )));
785
- zval_ptr_dtor (& obj_data );
784
+ phongo_throw_exception (PHONGO_ERROR_UNEXPECTED_VALUE TSRMLS_CC , "Expected %s() to return an array, %s given" , BSON_SERIALIZE_FUNC_NAME , zend_get_type_by_const (Z_TYPE_P (obj_data )));
786
785
787
- return ;
786
+ break ;
788
787
}
789
788
790
789
ht_data = HASH_OF (obj_data );
@@ -807,7 +806,7 @@ PHONGO_API void zval_to_bson(zval *data, php_phongo_bson_flags_t flags, bson_t *
807
806
return ;
808
807
}
809
808
810
- if (ht_data && ht_data -> nApplyCount > 1 ) {
809
+ if (! ht_data || ht_data -> nApplyCount > 1 ) {
811
810
if (obj_data ) {
812
811
zval_ptr_dtor (& obj_data );
813
812
}
0 commit comments