diff --git a/main/gbx/gbx_value.c b/main/gbx/gbx_value.c index 095237efa..97b610f5d 100644 --- a/main/gbx/gbx_value.c +++ b/main/gbx/gbx_value.c @@ -754,10 +754,22 @@ __OBJECT: { if (value->type == T_NULL) { - OBJECT_null(value, (CLASS *)type); /* marche aussi pour type = T_OBJECT */ + OBJECT_null(value, (CLASS *)type); // Also works if type == T_OBJECT goto __TYPE; } + if (value->type == T_POINTER) + { + class = (CLASS *)type; + + if (CLASS_is_struct(class)) + { + value->_object.object = CSTRUCT_create_static(STRUCT_CONST, class, value->_pointer.value); + goto __TYPE; + } + + } + if (value->type == T_VARIANT) goto __v2;