diff --git a/indra/llinventory/llinventory.h b/indra/llinventory/llinventory.h
index 065c82ddd463c1d43518e8f2d9834b309a5acdc5..5ff7a1e72bd176926677885f9a8cbe803a0a4748 100644
--- a/indra/llinventory/llinventory.h
+++ b/indra/llinventory/llinventory.h
@@ -150,6 +150,9 @@ class LLInventoryItem : public LLInventoryObject
 		// track attachment points.
 		II_FLAGS_OBJECT_SLAM_PERM = 0x100,
 
+		// flag to indicate that the object sale information has been changed.
+		II_FLAGS_OBJECT_SLAM_SALE = 0x1000,
+
 		// These flags specify which permissions masks to overwrite
 		// upon rez.  Normally, if no permissions slam (above) or
 		// overwrite flags are set, the asset's permissions are
diff --git a/indra/newview/llfloaterproperties.cpp b/indra/newview/llfloaterproperties.cpp
index 538e8415a05efd97f0520b20e28682d56f52ec51..82f72103f7c2b024dc8d1ae782254694c731a704 100644
--- a/indra/newview/llfloaterproperties.cpp
+++ b/indra/newview/llfloaterproperties.cpp
@@ -867,6 +867,12 @@ void LLFloaterProperties::updateSaleInfo()
 		&& item->isComplete())
 	{
 		LLPointer<LLViewerInventoryItem> new_item = new LLViewerInventoryItem(item);
+
+		// Force an update on the sale price.
+		U32 flags = new_item->getFlags();
+		flags |= LLInventoryItem::II_FLAGS_OBJECT_SLAM_SALE;
+		new_item->setFlags(flags);
+
 		new_item->setSaleInfo(sale_info);
 		if(mObjectID.isNull())
 		{