From 0a4392ad9520c4faccc35246eeb8e3707bb621b9 Mon Sep 17 00:00:00 2001
From: "epoger@google.com"
 <epoger@google.com@0039d316-1c4b-4281-b951-d872f2087c98>
Date: Fri, 23 Mar 2012 17:50:19 +0000
Subject: Roll Skia DEPS to 3470 Review URL:
 https://chromiumcodereview.appspot.com/9834048

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128523 0039d316-1c4b-4281-b951-d872f2087c98
---
 printing/pdf_metafile_skia.cc | 31 +++++++++++++------------------
 1 file changed, 13 insertions(+), 18 deletions(-)

(limited to 'printing')

diff --git a/printing/pdf_metafile_skia.cc b/printing/pdf_metafile_skia.cc
index e2409b9..ac06695 100644
--- a/printing/pdf_metafile_skia.cc
+++ b/printing/pdf_metafile_skia.cc
@@ -1,4 +1,4 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
@@ -17,8 +17,6 @@
 #include "third_party/skia/include/core/SkTypeface.h"
 #include "third_party/skia/include/pdf/SkPDFDevice.h"
 #include "third_party/skia/include/pdf/SkPDFDocument.h"
-#include "third_party/skia/include/pdf/SkPDFFont.h"
-#include "third_party/skia/include/pdf/SkPDFPage.h"
 #include "ui/gfx/point.h"
 #include "ui/gfx/rect.h"
 #include "ui/gfx/size.h"
@@ -95,21 +93,18 @@ bool PdfMetafileSkia::FinishDocument() {
     FinishPage();
 
   data_->current_page_ = NULL;
-  base::hash_set<SkFontID> font_set;
-
-  const SkTDArray<SkPDFPage*>& pages = data_->pdf_doc_.getPages();
-  for (int page_number = 0; page_number < pages.count(); page_number++) {
-    const SkTDArray<SkPDFFont*>& font_resources =
-        pages[page_number]->getFontResources();
-    for (int font = 0; font < font_resources.count(); font++) {
-      SkFontID font_id = font_resources[font]->typeface()->uniqueID();
-      if (font_set.find(font_id) == font_set.end()) {
-        font_set.insert(font_id);
-        UMA_HISTOGRAM_ENUMERATION(
-            "PrintPreview.FontType",
-            font_resources[font]->getType(),
-            SkAdvancedTypefaceMetrics::kNotEmbeddable_Font + 1);
-      }
+
+  int font_counts[SkAdvancedTypefaceMetrics::kNotEmbeddable_Font + 1];
+  // Work around bug in skia for the moment.
+  memset(font_counts, 0, sizeof(font_counts));
+  data_->pdf_doc_.getCountOfFontTypes(font_counts);
+  for (int type = 0;
+       type <= SkAdvancedTypefaceMetrics::kNotEmbeddable_Font;
+       type++) {
+    for (int count = 0; count < font_counts[type]; count++) {
+      UMA_HISTOGRAM_ENUMERATION(
+          "PrintPreview.FontType", type,
+          SkAdvancedTypefaceMetrics::kNotEmbeddable_Font + 1);
     }
   }
 
-- 
cgit v1.1