Fix CacheBitmap crash issue when using H/W UI rendering

Avoid to access invalid index in CacheBitmap. That will cause the android SDK image cannot be booted up
with H/W GL enabling. This patch is required by both ARM and x86 SDK system image.

Change-Id: I705b7f06915a2338a2f94509486344bfd92b4bfb
Signed-off-by: Jun Tian <jun.j.tian@intel.com>
Signed-off-by: Jackie Wu <jackie.wu@intel.com>
Signed-off-by: Liang Chen <liang.l.chen@intel.com>
Signed-off-by: Panfeng Chang <panfengx.chang@intel.com>
diff --git a/libs/hwui/FontRenderer.cpp b/libs/hwui/FontRenderer.cpp
index 5fdbc11..b51b1e1 100644
--- a/libs/hwui/FontRenderer.cpp
+++ b/libs/hwui/FontRenderer.cpp
@@ -617,7 +617,7 @@
         uint32_t* retOriginX, uint32_t* retOriginY) {
     cachedGlyph->mIsValid = false;
     // If the glyph is too tall, don't cache it
-    if (glyph.fHeight + TEXTURE_BORDER_SIZE > mCacheLines[mCacheLines.size() - 1]->mMaxHeight) {
+    if (mCacheLines.size() != 0  && (glyph.fHeight + TEXTURE_BORDER_SIZE > mCacheLines[mCacheLines.size() - 1]->mMaxHeight)) {
         ALOGE("Font size to large to fit in cache. width, height = %i, %i",
                 (int) glyph.fWidth, (int) glyph.fHeight);
         return;