bool nsCSSCompressedDataBlock::TryReplaceValue(nsCSSProperty aProperty, nsCSSExpandedDataBlock& aFromBlock, bool *aChanged) { nsCSSValue* newValue = aFromBlock.PropertyAt(aProperty); MOZ_ASSERT(newValue && newValue->GetUnit() != eCSSUnit_Null, "cannot replace with empty value"); const nsCSSValue* oldValue = ValueFor(aProperty); if (!oldValue) { *aChanged = false; return false; } *aChanged = MoveValue(newValue, const_cast<nsCSSValue*>(oldValue)); aFromBlock.ClearPropertyBit(aProperty); return true; }
PRBool nsCSSCompressedDataBlock::TryReplaceValue(nsCSSProperty aProperty, nsCSSExpandedDataBlock& aFromBlock, PRBool *aChanged) { nsCSSValue* newValue = aFromBlock.PropertyAt(aProperty); NS_ABORT_IF_FALSE(newValue && newValue->GetUnit() != eCSSUnit_Null, "cannot replace with empty value"); const nsCSSValue* oldValue = ValueFor(aProperty); if (!oldValue) { *aChanged = PR_FALSE; return PR_FALSE; } *aChanged = MoveValue(newValue, const_cast<nsCSSValue*>(oldValue)); aFromBlock.ClearPropertyBit(aProperty); return PR_TRUE; }