Appease the static analyzer

Since the static analyzer assumes that
`head == blockToRemove && blockToRemove->prevBlock == nullptr` may be
true, it complains that we're deleting `head` and returning `head`
shortly afterward.

Assert (without assertions, since -DNDEBUG is passed) that this isn't
the case.

Bug: 27101951
Test: mma. Warning is gone.
Change-Id: I33e98eec7b293fcf0d8826f89c287a3b870758f2
diff --git a/libs/hwui/font/CacheTexture.cpp b/libs/hwui/font/CacheTexture.cpp
index e2844ad06..73beba9 100644
--- a/libs/hwui/font/CacheTexture.cpp
+++ b/libs/hwui/font/CacheTexture.cpp
@@ -91,6 +91,9 @@
     CacheBlock* prevBlock = blockToRemove->mPrev;
 
     if (prevBlock) {
+        // If this doesn't hold, we have a use-after-free below.
+        LOG_ALWAYS_FATAL_IF(head == blockToRemove,
+                "removeBlock: head should not have a previous block");
         prevBlock->mNext = nextBlock;
     } else {
         newHead = nextBlock;