void tOleHandler::RectSet(LPRECTL prcl, BOOL fDevice, BOOL fInformObj) { SIZEL szl; LONG cx, cy; /* * Prevent reentrant calls that may come from calling * UpdateInPlaceObjectRects here and elsewhere. */ if (m_fInRectSet) return; m_fInRectSet=TRUE; cx=m_rcl.right-m_rcl.left; cy=m_rcl.bottom-m_rcl.top; if (!fDevice) m_rcl=*prcl; else { RECT rc; RECTFROMRECTL(rc, *prcl); RectConvertMappings(&rc, NULL, FALSE); RECTLFROMRECT(m_rcl, rc); } /* * Tell ourselves that the size changed, if it did. SizeSet * will call IOleObject::SetExtent for us. */ if ((m_rcl.right-m_rcl.left)!=cx || (m_rcl.bottom-m_rcl.top)!=cy) { SETSIZEL(szl, m_rcl.right-m_rcl.left, m_rcl.bottom-m_rcl.top); SizeSet(&szl, FALSE, fInformObj); } //Tell an in-place active object it moved too UpdateInPlaceObjectRects(NULL, TRUE); m_fInRectSet=FALSE; return; }
void ImageDecodingStore::insertCacheInternal(PassOwnPtr<CacheEntry> cacheEntry) { if (!cacheEntry->isDiscardable()) incrementMemoryUsage(cacheEntry->memoryUsageInBytes()); TRACE_COUNTER1("webkit", "ImageDecodingStoreMemoryUsageBytes", m_memoryUsageInBytes); // m_orderedCacheList is used to support LRU operations to reorder cache // entries quickly. m_orderedCacheList.append(cacheEntry.get()); CacheIdentifier key = cacheEntry->cacheKey(); // m_cacheMap is used for indexing and quick lookup of a cached image. It owns // all cache entries. m_cacheMap.add(key, cacheEntry); TRACE_COUNTER1("webkit", "ImageDecodingStoreNumOfEntries", m_cacheMap.size()); // m_cachedSizeMap keeps all scaled sizes associated with an ImageFrameGenerator. CachedSizeMap::AddResult result = m_cachedSizeMap.add(key.first, SizeSet()); result.iterator->value.add(key.second); }