Re: Problem in Win32api.c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Fabian,

> In (win32, invokefunction) following variables are declared:
> void *w32api_return_buffer = NULL;
> int w32api_return_buffer_size = 0;
> zval **func_arguments = NULL;
>
> func_arguments gets later filled with
> if(zend_get_parameters_array_ex(argc, &func_arguments) == FAILURE)

> But this only works if there are not more than one arguments.
> If there are two or more the values get filled in
> w32api_return_buffer_size (second) and w32api_return_buffer (third) etc...
> I hardly believe that this was the intention. I temporarily fixed it by
> declaring func_arguments as array like func_arguments[10] so it will work
> for up to ten arguments, but I guess the right solution should be better
> than that.

I run into same problem and allocated the memory dynamically according the
number of given parameters. This acutally solved the problem. I commented on
this bug (see http://bugs.php.net/bug.php?id=25235), but there was no
response.

But there are more problems. If you look at the function
php_w32api_complex_marshall_zval_to_c(), you will see that the relevant part
is commented out. So the handling of complex types simply doesnt work.
I really wonder whether the extension is still being actively developed.

Best Regards
Stefan

-- 
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [PHP Users]     [PHP Database Programming]     [PHP Install]     [Kernel Newbies]     [Yosemite Forum]     [PHP Books]

  Powered by Linux