diff --git a/lib/private/user.php b/lib/private/user.php
index 5d3ebb57c8c42a8de9481497db40d43d65e71b6c..76f3497da0b8b03d26684cb08ff58979a8e6c561 100644
--- a/lib/private/user.php
+++ b/lib/private/user.php
@@ -337,7 +337,7 @@ class OC_User {
 	 * Checks if the user is logged in
 	 */
 	public static function isLoggedIn() {
-		if (\OC::$session->get('user_id') && self::$incognitoMode === false) {
+		if (\OC::$session->get('user_id') !== null && self::$incognitoMode === false) {
 			return self::userExists(\OC::$session->get('user_id'));
 		}
 		return false;
diff --git a/lib/private/user/session.php b/lib/private/user/session.php
index 5f0dee607ae43dcd0c11898db7010cc081c006fa..226f948efef85966d26e2ac60ca5ee0565e96504 100644
--- a/lib/private/user/session.php
+++ b/lib/private/user/session.php
@@ -105,7 +105,7 @@ class Session implements Emitter, \OCP\IUserSession {
 			return $this->activeUser;
 		} else {
 			$uid = $this->session->get('user_id');
-			if ($uid) {
+			if ($uid !== null) {
 				$this->activeUser = $this->manager->get($uid);
 				return $this->activeUser;
 			} else {