mirror of
https://github.com/phpredis/phpredis.git
synced 2026-06-19 07:35:31 +00:00
Improve error message when picking session compression
The warning when a user picks an unsupported session compression algorithm was pretty confusing. The new message tells the user if the selection was invalid or only invalid because the redis.so wasn't built with support. Fixes #2570
This commit is contained in:
committed by
Michael Grunder
parent
6e214c1698
commit
453c4788d6
+15
-3
@@ -147,7 +147,10 @@ static int session_gc_maxlifetime(void) {
|
||||
/* Retrieve redis.session.compression from php.ini */
|
||||
static int session_compression_type(void) {
|
||||
const char *compression = INI_STR("redis.session.compression");
|
||||
if(compression == NULL || *compression == '\0' || strncasecmp(compression, "none", sizeof("none") - 1) == 0) {
|
||||
|
||||
if(compression == NULL || *compression == '\0' ||
|
||||
strncasecmp(compression, "none", sizeof("none") - 1) == 0)
|
||||
{
|
||||
return REDIS_COMPRESSION_NONE;
|
||||
}
|
||||
|
||||
@@ -167,8 +170,17 @@ static int session_compression_type(void) {
|
||||
}
|
||||
#endif
|
||||
|
||||
// E_NOTICE when outside of valid values
|
||||
php_error_docref(NULL, E_NOTICE, "redis.session.compression is outside of valid values, disabling");
|
||||
if (strcasecmp(compression, "lzf") ||
|
||||
strcasecmp(compression, "zstd") ||
|
||||
strcasecmp(compression, "lz4"))
|
||||
{
|
||||
php_error_docref(NULL, E_NOTICE,
|
||||
"redis.session.compression: '%s' compression is not available. "
|
||||
"Rebuild phpredis with %s support.", compression, compression);
|
||||
} else {
|
||||
php_error_docref(NULL, E_NOTICE,
|
||||
"redis.session.compression: '%s' is invalid", compression);
|
||||
}
|
||||
|
||||
return REDIS_COMPRESSION_NONE;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user