Index: php-memcache-3.0.9~20151130.fdbd46b/memcache-3.0.9/php5/memcache_session.c =================================================================== --- php-memcache-3.0.9~20151130.fdbd46b.orig/memcache-3.0.9/php5/memcache_session.c +++ php-memcache-3.0.9~20151130.fdbd46b/memcache-3.0.9/php5/memcache_session.c @@ -84,7 +84,10 @@ PS_OPEN_FUNC(memcache) efree(path); } else { - url = php_url_parse_ex(save_path+i, j-i); + int len = j-i; + char *path = estrndup(save_path+i, len); + url = php_url_parse_ex(path, strlen(path)); + efree(path); } if (!url) { Index: php-memcache-3.0.9~20151130.fdbd46b/memcache-3.0.9/php7/memcache_session.c =================================================================== --- php-memcache-3.0.9~20151130.fdbd46b.orig/memcache-3.0.9/php7/memcache_session.c +++ php-memcache-3.0.9~20151130.fdbd46b/memcache-3.0.9/php7/memcache_session.c @@ -80,7 +80,10 @@ PS_OPEN_FUNC(memcache) efree(path); } else { - url = php_url_parse_ex(save_path+i, j-i); + int len = j-i; + char *path = estrndup(save_path+i, len); + url = php_url_parse_ex(path, strlen(path)); + efree(path); } if (!url) {