Skip to content

[BrowserKit] Fix cookie expiration on 32 bit systems #19827

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

jameshalsall
Copy link
Contributor

@jameshalsall jameshalsall commented Sep 2, 2016

Q A
Branch? 2.7
Bug fix? yes
New feature? no
BC breaks? no
Deprecations? no
Tests pass? yes
Fixed tickets #15739
License MIT

On 32-bit systems the cookie expiration value was not being calculated
correctly as it was being fetched as an integer. When the timestamp exceeded
the PHP_INT_MAX size it would return an invalid value, breaking the cookie
construction.

The BrowserKit cookie has now been updated to get the timestamp as a string
which works around this platform limitation (similar to how it works in the Cookie
from HttpFoundation).

On 32-bit systems the cookie expiration value was not being calculated
correctly as it was being fetched as an integer. When the timestamp exceeded
the PHP_INT_MAX size it would return an invalid value, breaking the cookie
construction.

The BrowserKit cookie has now been updated to get the timestamp as a string
which works around this platform limitation.
@fabpot
Copy link
Member

fabpot commented Sep 2, 2016

Thank you @jameshalsall.

fabpot added a commit that referenced this pull request Sep 2, 2016
…shalsall)

This PR was submitted for the master branch but it was merged into the 2.7 branch instead (closes #19827).

Discussion
----------

[BrowserKit] Fix cookie expiration on 32 bit systems

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #15739
| License       | MIT

On 32-bit systems the cookie expiration value was not being calculated
correctly as it was being fetched as an integer. When the timestamp exceeded
the PHP_INT_MAX size it would return an invalid value, breaking the cookie
construction.

The BrowserKit cookie has now been updated to get the timestamp as a string
which works around this platform limitation (similar to how it works in the Cookie
from HttpFoundation).

Commits
-------

68698f2 [BrowserKit] Fix cookie expiration on 32 bit systems
@fabpot fabpot closed this Sep 2, 2016
@jameshalsall jameshalsall deleted the cookie-expiration-32-bit branch September 2, 2016 21:46
This was referenced Sep 7, 2016
@fabpot fabpot mentioned this pull request Oct 3, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants