From 2ae03292f401ce7002bb83ea32f545e53074db10 Mon Sep 17 00:00:00 2001 From: "pierre%netscape.com" Date: Wed, 2 May 2001 10:55:08 +0000 Subject: [PATCH] 74773 UMR in AccumulateCRC(). r=attinasi --- content/base/src/nsStyleContext.cpp | 16 ++++++++++++---- layout/style/nsStyleContext.cpp | 16 ++++++++++++---- 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/content/base/src/nsStyleContext.cpp b/content/base/src/nsStyleContext.cpp index 36d1250a9939..83d3ecb8bc64 100644 --- a/content/base/src/nsStyleContext.cpp +++ b/content/base/src/nsStyleContext.cpp @@ -450,7 +450,9 @@ PRUint32 StyleMarginImpl::ComputeCRC32(PRUint32 aCrc) const #ifdef COMPUTE_STYLEDATA_CRC crc = StyleSideCRC(crc,&mMargin); crc = AccumulateCRC(crc,(const char *)&mHasCachedMargin,sizeof(mHasCachedMargin)); - crc = StyleMarginCRC(crc,&mCachedMargin); + if (mHasCachedMargin) { + crc = StyleMarginCRC(crc,&mCachedMargin); + } #endif return crc; } @@ -525,7 +527,9 @@ PRUint32 StylePaddingImpl::ComputeCRC32(PRUint32 aCrc) const #ifdef COMPUTE_STYLEDATA_CRC crc = StyleSideCRC(crc,&mPadding); crc = AccumulateCRC(crc,(const char *)&mHasCachedPadding,sizeof(mHasCachedPadding)); - crc = StyleMarginCRC(crc,&mCachedPadding); + if (mHasCachedPadding) { + crc = StyleMarginCRC(crc,&mCachedPadding); + } #endif return crc; } @@ -702,7 +706,9 @@ PRUint32 StyleBorderImpl::ComputeCRC32(PRUint32 aCrc) const crc = StyleSideCRC(crc,&mBorderRadius); crc = AccumulateCRC(crc,(const char *)&mFloatEdge,sizeof(mFloatEdge)); crc = AccumulateCRC(crc,(const char *)&mHasCachedBorder,sizeof(mHasCachedBorder)); - crc = StyleMarginCRC(crc,&mCachedBorder); + if (mHasCachedBorder) { + crc = StyleMarginCRC(crc,&mCachedBorder); + } crc = AccumulateCRC(crc,(const char *)mBorderStyle,sizeof(mBorderStyle)); // array of 4 elements crc = AccumulateCRC(crc,(const char *)mBorderColor,sizeof(mBorderColor)); // array ... #endif @@ -805,7 +811,9 @@ PRUint32 StyleOutlineImpl::ComputeCRC32(PRUint32 aCrc) const crc = StyleSideCRC(crc,&mOutlineRadius); crc = StyleCoordCRC(crc,&mOutlineWidth); crc = AccumulateCRC(crc,(const char *)&mHasCachedOutline,sizeof(mHasCachedOutline)); - crc = AccumulateCRC(crc,(const char *)&mCachedOutlineWidth,sizeof(mCachedOutlineWidth)); + if (mHasCachedOutline) { + crc = AccumulateCRC(crc,(const char *)&mCachedOutlineWidth,sizeof(mCachedOutlineWidth)); + } crc = AccumulateCRC(crc,(const char *)&mOutlineStyle,sizeof(mOutlineStyle)); crc = AccumulateCRC(crc,(const char *)&mOutlineColor,sizeof(mOutlineColor)); #endif diff --git a/layout/style/nsStyleContext.cpp b/layout/style/nsStyleContext.cpp index 36d1250a9939..83d3ecb8bc64 100644 --- a/layout/style/nsStyleContext.cpp +++ b/layout/style/nsStyleContext.cpp @@ -450,7 +450,9 @@ PRUint32 StyleMarginImpl::ComputeCRC32(PRUint32 aCrc) const #ifdef COMPUTE_STYLEDATA_CRC crc = StyleSideCRC(crc,&mMargin); crc = AccumulateCRC(crc,(const char *)&mHasCachedMargin,sizeof(mHasCachedMargin)); - crc = StyleMarginCRC(crc,&mCachedMargin); + if (mHasCachedMargin) { + crc = StyleMarginCRC(crc,&mCachedMargin); + } #endif return crc; } @@ -525,7 +527,9 @@ PRUint32 StylePaddingImpl::ComputeCRC32(PRUint32 aCrc) const #ifdef COMPUTE_STYLEDATA_CRC crc = StyleSideCRC(crc,&mPadding); crc = AccumulateCRC(crc,(const char *)&mHasCachedPadding,sizeof(mHasCachedPadding)); - crc = StyleMarginCRC(crc,&mCachedPadding); + if (mHasCachedPadding) { + crc = StyleMarginCRC(crc,&mCachedPadding); + } #endif return crc; } @@ -702,7 +706,9 @@ PRUint32 StyleBorderImpl::ComputeCRC32(PRUint32 aCrc) const crc = StyleSideCRC(crc,&mBorderRadius); crc = AccumulateCRC(crc,(const char *)&mFloatEdge,sizeof(mFloatEdge)); crc = AccumulateCRC(crc,(const char *)&mHasCachedBorder,sizeof(mHasCachedBorder)); - crc = StyleMarginCRC(crc,&mCachedBorder); + if (mHasCachedBorder) { + crc = StyleMarginCRC(crc,&mCachedBorder); + } crc = AccumulateCRC(crc,(const char *)mBorderStyle,sizeof(mBorderStyle)); // array of 4 elements crc = AccumulateCRC(crc,(const char *)mBorderColor,sizeof(mBorderColor)); // array ... #endif @@ -805,7 +811,9 @@ PRUint32 StyleOutlineImpl::ComputeCRC32(PRUint32 aCrc) const crc = StyleSideCRC(crc,&mOutlineRadius); crc = StyleCoordCRC(crc,&mOutlineWidth); crc = AccumulateCRC(crc,(const char *)&mHasCachedOutline,sizeof(mHasCachedOutline)); - crc = AccumulateCRC(crc,(const char *)&mCachedOutlineWidth,sizeof(mCachedOutlineWidth)); + if (mHasCachedOutline) { + crc = AccumulateCRC(crc,(const char *)&mCachedOutlineWidth,sizeof(mCachedOutlineWidth)); + } crc = AccumulateCRC(crc,(const char *)&mOutlineStyle,sizeof(mOutlineStyle)); crc = AccumulateCRC(crc,(const char *)&mOutlineColor,sizeof(mOutlineColor)); #endif