Hi Antony, It seems I mistook what you addressed. I thought you were talking about the situation with per-dir settings because you mentioned it as PHP_INI_SYSTEM, though, as you said, I failed to think of the runtime settings.
I guess adding (stage == PHP_INI_STAGE_RUNTIME) in the conditions will fix the problem. Moriyoshi Antony Dovgal wrote: > On 12.09.2008 23:09, Moriyoshi Koizumi wrote: >> Hi Antony, >> >> Antony Dovgal wrote: >>> The docs say mbstring.internal_encoding is PHP_INI_ALL, but this change >>> makes it in fact PHP_INI_SYSTEM. >>> Also why allow using mb_internal_encoding() and disallow changing the >>> ini setting? >> >> I missed your mail. Sorry for the late reply. >> >> As for your question. It's not really an INI_SYSTEM setting. > > But you can't change it with ini_set() once the request is started, > therefore it's not INI_ALL anymore. > >> To take >> account of the other settings that are affected by the value of >> mbstring.internal_encoding, it turned out the corresponding global entry >> got to be handled in RINIT. the original INI values are kept by the >> zend_ini facility separately, so doing so is anyway safe. > > That doesn't answer my question. > We have mb_internal_encoding(), which updates internal encoding; > and we have ini_set() which is supposed to do the same, but it fails > after your patch. > > What was the reason for such changes (breaking BC and such..) and what's > the point to keep calling it INI_ALL if you can't change it with > ini_set() anymore? > -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php