Permalink
Browse files

Fix SessionComponent::id() not returning the id.

When reading the id() with SessionComponent, the session should
auto start, otherwise you could get null back. This makes the return
more consistent.

Fixes #2749
  • Loading branch information...
markstory committed Apr 3, 2012
1 parent 7ed90c7 commit f09e5a36d2d1e97bb80e6e9d976aac1f82b3fad8
Showing with 9 additions and 5 deletions.
  1. +9 −5 lib/Cake/Controller/Component/SessionComponent.php
@@ -162,15 +162,19 @@ public function destroy() {
}
/**
- * Returns Session id
+ * Get/Set the session id.
*
- * If $id is passed in a beforeFilter, the Session will be started
- * with the specified id
+ * When fetching the session id, the session will be started
+ * if it has not already been started. When setting the session id,
+ * the session will not be started.
*
- * @param string $id
- * @return string
+ * @param string $id Id to use (optional)
+ * @return string The current session id.
*/
public function id($id = null) {
+ if (empty($id)) {
+ CakeSession::start();
+ }
return CakeSession::id($id);
}

0 comments on commit f09e5a3

Please sign in to comment.