diff --git a/indra/llinventory/llparcel.cpp b/indra/llinventory/llparcel.cpp
index 57d315f265666c9c762e7b88202531f8f7077280..7cc3e578e5c3c8efabacaa44349bc03f5dec5005 100644
--- a/indra/llinventory/llparcel.cpp
+++ b/indra/llinventory/llparcel.cpp
@@ -1616,7 +1616,7 @@ void LLParcel::startSale(const LLUUID& buyer_id, BOOL is_buyer_group)
 	mSaleTimerExpires.setTimerExpirySec(DEFAULT_USEC_SALE_TIMEOUT / SEC_TO_MICROSEC);
 	mStatus = OS_LEASE_PENDING;
 	mClaimDate = time(NULL);
-	mAuctionID = 0;
+	setAuctionID(0);
 	// clear the autoreturn whenever land changes hands
 	setCleanOtherTime(0);
 }
@@ -1651,6 +1651,7 @@ void LLParcel::completeSale(U32& type, U8& flags,
 	// Purchased parcels are assumed to no longer be for sale.
 	// Otherwise someone can snipe the sale.
 	setForSale(FALSE);
+	setAuctionID(0);
 
 	// Turn off show directory, since it's a recurring fee that
 	// the buyer may not want.
@@ -1676,6 +1677,7 @@ void LLParcel::clearSale()
 	}
 	mAuthBuyerID.setNull();
 	setForSale(FALSE);
+	setAuctionID(0);
 	setPreviousOwnerID(LLUUID::null);
 	setPreviouslyGroupOwned(FALSE);
 	setSellWithObjects(FALSE);