]> granicus.if.org Git - php/commitdiff
Applied patch from Oleg Sharoiko <os@rsu.ru> to fix bug in satellite_any_to_zval_sequence
authorDavid Eriksson <eriksson@php.net>
Tue, 30 Jan 2001 06:43:36 +0000 (06:43 +0000)
committerDavid Eriksson <eriksson@php.net>
Tue, 30 Jan 2001 06:43:36 +0000 (06:43 +0000)
ext/satellite/namedvalue_to_zval.c
ext/satellite/typecode.c

index 2ddf9072d32b876d5e779af694ccd28b38d28df6..7e262f51c129743be87496486df8253675f524ed 100644 (file)
@@ -83,7 +83,7 @@ static zend_bool satellite_any_to_zval_sequence(
                const CORBA_any * pSource, zval * pDestination)
 {
        int i;
-       int length = 0;
+       int length = 0, step;
        void ** pp_members = NULL;
        zend_bool success = FALSE;
        CORBA_NamedValue source_item;
@@ -121,13 +121,17 @@ static zend_bool satellite_any_to_zval_sequence(
        array_init(pDestination);
 #endif
 
+       step = content_type->length ? content_type->length : 1;
+
        for (i = 0; i < length; i++)
        {
                p_destination_item = NULL;
                memset(&source_item, 0, sizeof(CORBA_NamedValue));
 
                source_item.argument._type = content_type;
-               source_item.argument._value = &pp_members[i];
+               source_item.argument._value = pp_members;
+
+               pp_members += step;
 
                ALLOC_ZVAL(p_destination_item);
                
@@ -236,6 +240,7 @@ static zend_bool satellite_any_to_zval_struct(
                }
        }
 
+       return TRUE;
 
 error: 
        return FALSE;
@@ -292,7 +297,7 @@ zend_bool satellite_any_to_zval(
 
                default:
 /*                     printf("unsupported corba TCKind %i\n", kind);*/
-/*                     php_error(E_WARNING, "unsupported corba TCKind %i", kind);*/
+                       zend_error(E_WARNING, "(satellite) unsupported corba TCKind %i", kind);
        }
 
        return success;
index 18564c8382629099877e2e0b9b9fec1e39da65b2..df16108094503d9f20231695aab9e05bc53ddc0b 100644 (file)
@@ -132,8 +132,7 @@ static CORBA_StructMemberSeq * orbit_create_member_sequence(IDL_tree member_list
 
                if (type_code == NULL)
                {
-/*                     printf("unknown type for member %s\n", 
-                                       IDL_IDENT(IDL_LIST(declaration).data).str);*/
+                       zend_error(E_WARNING, "(Satellite) unknown type for member %s", IDL_IDENT(IDL_LIST(declaration).data).str);
                        goto error;
                }