Index: trunk/phase3/includes/installer/WebInstaller.php |
— | — | @@ -308,16 +308,17 @@ |
309 | 309 | * Get the value of session.save_path |
310 | 310 | * |
311 | 311 | * Per http://www.php.net/manual/en/session.configuration.php#ini.session.save-path, |
312 | | - * this might have some additional preceding parts which need to be |
313 | | - * ditched |
| 312 | + * this may have an initial integer value to indicate the depth of session |
| 313 | + * storage (eg /tmp/a/b/c). Explode on ; and check and see if this part is |
| 314 | + * there or not. Should also allow paths with semicolons in them (if you |
| 315 | + * really wanted your session files stored in /tmp/some;dir) which PHP |
| 316 | + * supposedly supports. |
314 | 317 | * |
315 | 318 | * @return String |
316 | 319 | */ |
317 | 320 | private function getSessionSavePath() { |
318 | | - $path = ini_get( 'session.save_path' ); |
319 | | - $path = ltrim( substr( $path, strrpos( $path, ';' ) ), ';'); |
320 | | - |
321 | | - return $path; |
| 321 | + $parts = explode( ';', ini_get( 'session.save_path' ), 2 ); |
| 322 | + return count( $parts ) == 1 ? $parts[0] : $parts[1]; |
322 | 323 | } |
323 | 324 | |
324 | 325 | /** |