diff --git a/include/class.ostsession.php b/include/class.ostsession.php
index dc53af14ef11f7eda69ae94fbb78db6e1cfafd93..4c34fda98553e28907cab45577e0189179780a26 100644
--- a/include/class.ostsession.php
+++ b/include/class.ostsession.php
@@ -77,7 +77,7 @@ class osTicketSession {
     }
 
     function read($id){
-        $this->isnew = true;
+        $this->isnew = false;
         if (!$this->data || $this->id != $id) {
             $sql='SELECT session_data FROM '.SESSION_TABLE
                 .' WHERE session_id='.db_input($id)
@@ -86,10 +86,12 @@ class osTicketSession {
                 return false;
             elseif (db_num_rows($res))
                 list($this->data)=db_fetch_row($res);
+            else
+                // No session data on record -- new session
+                $this->isnew = true;
             $this->id = $id;
         }
         $this->data_hash = md5($id.$this->data);
-        $this->isnew = false;
         return $this->data;
     }