Check whether font creation is failed to avoid segment fault.

In some rare cases, SkFontHost::CreateTypeface in src/ports/SkFontHost_fontconfig.cpp will return NULL, this will lead to segment fault because the previous code would access to 0x0 by (SkTypeface *)NULL->unref().
 
BUG=
R=reed@google.com, bungeman@google.com

Author: yunchao.he@intel.com

Review URL: https://chromiumcodereview.appspot.com/14907005

git-svn-id: http://skia.googlecode.com/svn/trunk@9034 2bbb7eff-a529-9590-31e7-b0007b416f81
This commit is contained in:
commit-bot@chromium.org 2013-05-07 14:32:58 +00:00
parent 279627efc5
commit 66f5aaad90

View File

@ -72,7 +72,9 @@ static void test_fontHostStream(skiatest::Reporter* reporter) {
paint.setColor(SK_ColorGRAY);
paint.setTextSize(SkIntToScalar(30));
paint.setTypeface(SkTypeface::CreateFromName("Georgia", SkTypeface::kNormal))->unref();
SkTypeface* fTypeface = SkTypeface::CreateFromName("Georgia",
SkTypeface::kNormal);
SkSafeUnref(paint.setTypeface(fTypeface));
SkIRect origRect = SkIRect::MakeWH(64, 64);
SkBitmap origBitmap;