Fix #48585: com_load_typelib holds reference, fails on second call#5934
Closed
cmb69 wants to merge 1 commit intophp:PHP-7.3from
Closed
Fix #48585: com_load_typelib holds reference, fails on second call#5934cmb69 wants to merge 1 commit intophp:PHP-7.3from
cmb69 wants to merge 1 commit intophp:PHP-7.3from
Conversation
Whether the type library is cached is actually irrelevant here; what matters is that the symbols are imported, and since these are not cached, we have to import them for every request. And we cannot cache the symbols, because the import depends on the current codepage, but the codepage is a `PHP_INI_ALL` setting.
Member
|
Can't really comment on the change itself...
Yes, let's do that to be on the safe side.
We should probably add some kind of facility for this (cgi has |
Member
Author
|
Thanks! Applied as dc108fe. I'll follow up with a commit to remove the |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Whether the type library is cached is actually irrelevant here; what
matters is that the symbols are imported, and since these are not
cached, we have to import them for every request. And we cannot cache
the symbols, because the import depends on the current codepage, but
the codepage is a
PHP_INI_ALLsetting.I'm not sure what to do with the
cachedparameter ofphp_com_load_typelib_via_cache(); it's no longer needed after this change, but the function is exported, although it is declared in the internal header. Maybe just stick with the param for PHP 7, and remove for PHP 8?I'm also not sure if it's worth writing a PHPT, because that would likely require the built-in webserver to be able to do multiple requests.