diff options
| author | 2011-06-17 15:49:22 -0700 | |
|---|---|---|
| committer | 2011-06-17 15:49:22 -0700 | |
| commit | ee452bcc06c6a42ecc78a154bb4fb9366e9178eb (patch) | |
| tree | 797463b97d578cb4ba54625bd98b7a90567246c6 /libs/hwui/ShapeCache.h | |
| parent | 405efeeeab6c1c0a76f6903881fdea0ee0b58259 (diff) | |
| parent | 98029c825b9234e6b90721d910cc180885fcab1d (diff) | |
Merge "Fix rendering issue with paths when the stroke width is 0"
Diffstat (limited to 'libs/hwui/ShapeCache.h')
| -rw-r--r-- | libs/hwui/ShapeCache.h | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/libs/hwui/ShapeCache.h b/libs/hwui/ShapeCache.h index b5cc29c9a691..b048469a3fec 100644 --- a/libs/hwui/ShapeCache.h +++ b/libs/hwui/ShapeCache.h @@ -537,15 +537,16 @@ PathTexture* ShapeCache<Entry>::addTexture(const Entry& entry, const SkPath *pat const float pathWidth = fmax(bounds.width(), 1.0f); const float pathHeight = fmax(bounds.height(), 1.0f); - if (pathWidth > mMaxTextureSize || pathHeight > mMaxTextureSize) { - LOGW("Shape %s too large to be rendered into a texture", mName); - return NULL; - } + const float offset = fmax(paint->getStrokeWidth(), 1.0f) * 1.5f; - const float offset = paint->getStrokeWidth() * 1.5f; const uint32_t width = uint32_t(pathWidth + offset * 2.0 + 0.5); const uint32_t height = uint32_t(pathHeight + offset * 2.0 + 0.5); + if (width > mMaxTextureSize || height > mMaxTextureSize) { + LOGW("Shape %s too large to be rendered into a texture", mName); + return NULL; + } + const uint32_t size = width * height; // Don't even try to cache a bitmap that's bigger than the cache if (size < mMaxSize) { |