public function revertQuoteInventory($observer)
 {
     if (!Mage::helper('udmulti')->isActive()) {
         return parent::revertQuoteInventory($observer);
     }
     $quote = $observer->getEvent()->getQuote();
     if (!$quote->getInventoryProcessed()) {
         return;
     }
     $update = array();
     foreach ($quote->getAllItems() as $item) {
         if (!$item->getChildren()) {
             $pId = $item->getProductId();
             $vId = $item->getUdropshipVendor();
             if (isset($update[$vId][$pId])) {
                 $update[$vId][$pId]['stock_qty_add'] += $item->getTotalQty();
             } else {
                 $update[$vId][$pId] = array('stock_qty_add' => $item->getTotalQty());
             }
         }
     }
     foreach ($update as $vId => $_update) {
         Mage::helper('udmulti')->setReindexFlag(false);
         Mage::helper('udmulti')->saveThisVendorProductsPidKeys($_update, $vId);
         Mage::helper('udmulti')->setReindexFlag(true);
     }
     $quote->setInventoryProcessed(false);
 }