Re: Re: [ANNOUNCEMENT] pecl_http-2.1.0RC2 (beta) Released.
| From: | Michael Wallner | Date: | Wed, 13 Aug 2014 10:56:42 +0000 |
| Subject: | Re: Re: [ANNOUNCEMENT] pecl_http-2.1.0RC2 (beta) Released. | ||
| References: | 1 2 3 4 5 6 | Groups: | php.pecl.dev |
| Request: | Send a blank email to pecl-dev+get-12172@lists.php.net to get a copy of this message | ||
On 12/08/14 18:39, Jan Ehrhardt wrote:
> Pierre Joye in php.pecl.dev (Tue, 12 Aug 2014 13:06:49 +0200):
>>>> See this patch by Anatol (4 days old)
>>>>
>>>> http://git.php.net/?p=php-src.git;a=commitdiff;h=7189039d650de1417e4e580865b1e77b39e3da55
>>
>> is it not what Anatol fixed in core recently?
>
> I applied Anatol's fix to <win32/php_stdint.h> and to a number of
> extensions that had their own copy of it (qb, av, ffmpeg). So this fix
> was not enough.
>
> Anatol's fix seems to aim this loading order:
> 1. <stdint.h>
> 2. <win32/php_stdint.h>
> The fatal errors for php_http.dll were caused by loading the 2 headers
> the other way around!
>
>> Also using the php_stdint.h header should solve that automatically.
>
> Any call to <stdint.h> of VC11 after calling <win32/php_stdint.h> leads
> to fatal errors in PHP 5.5 now. After a long debugging session I tracked
> it down to FOREACH_HASH_KEYVAL in ext/http/http_misc.h. That macro
> somehow loads <stdint.h> and was causing the fatal errors.
>
> Without changing VC11's stdint.h (which I did for debugging) I could
> only think of one way to prevent it from loading. stdint.h starts with:
>
> /* stdint.h standard header */
> #pragma once
> #ifndef _STDINT
> #define _STDINT
>
> So, by defining _STDINT you can prevent it from loading. I changed
> <win32/php_stdint.h>:
>
> #ifndef _MSC_STDINT_H_ // [
> #define _MSC_STDINT_H_
> +#define _STDINT
>
> #if _MSC_VER > 1000
> #pragma once
>
> I do not know if this has more consequences. If <win32/php_stdint.h> is
> a full replacement for <stdint.h> this should not cause troubles. My PHP
> 5.5.16RC1 worked flawlessly with the exception of php_event.dll. But
> that was a SSL issue, because I have been trying to get that to work (by
> compiling the libevent libswith OpenSSL support).
>
> New build at
>
> https://phpdev.toolsforresearch.com/php-5.5.16RC1-nts-Win32-VC11-x86.zip
> See the phpinfo.htm inside the zip for the details of the build.
>
> Jan
>
> NB: I will ask the maintainer of php_qb.ddl and php_av.dll to call
> <win32/php_stdint.h> if possible in stead of loading his own copy.
> php_ffmpeg.dll is not maintained anymore and I seem to be the only one
> that is compiling it for Windows, so that will not be a problem at all.
>
Hey, I'm not sure I can follow this discussion :-/ Is there anything for
me to fix before RC3?
--
Regards,
Mike