diff --git a/src/Cart.php b/src/Cart.php
index <HASH>..<HASH> 100644
--- a/src/Cart.php
+++ b/src/Cart.php
@@ -118,7 +118,10 @@ class Cart
     protected function generateHash(CartItem $cartItem)
     {
         $cartItemArray = (array) $cartItem;
-        ksort($cartItemArray['options']);
+
+        if(empty($cartItemArray['options']) === false) {
+            ksort($cartItemArray['options']);
+        }
 
         return md5(json_encode($cartItemArray));
     }
diff --git a/src/CartItem.php b/src/CartItem.php
index <HASH>..<HASH> 100644
--- a/src/CartItem.php
+++ b/src/CartItem.php
@@ -38,10 +38,13 @@ class CartItem
         $this->locale = config('laracart.locale', 'en_US');
         $this->displayLocale = config('laracart.display_locale');
 
-        // Generates all the options for the cart item
-        foreach($options as $option) {
-            $this->addOption($option);
+        if(empty($options) === false) {
+            // Generates all the options for the cart item
+            foreach($options as $option) {
+                $this->addOption($option);
+            }
         }
+
     }
 
     /**
Putting additonal checks on the data