From 2334660053e044ca79a1831a6c73f69891f039e0 Mon Sep 17 00:00:00 2001 From: Nicolas Pena Date: Tue, 30 Jan 2018 21:42:41 +0000 Subject: Use unsigned for char width MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug: 806612 Change-Id: I22bd9046dd37a1b596762c46a6b29a323d6e9fa1 Reviewed-on: https://pdfium-review.googlesource.com/24410 Reviewed-by: dsinclair Commit-Queue: Nicolás Peña Moreno --- fpdfsdk/fpdfedittext.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'fpdfsdk/fpdfedittext.cpp') diff --git a/fpdfsdk/fpdfedittext.cpp b/fpdfsdk/fpdfedittext.cpp index 22c6266ec1..7bbb6a857c 100644 --- a/fpdfsdk/fpdfedittext.cpp +++ b/fpdfsdk/fpdfedittext.cpp @@ -2,6 +2,8 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +#include +#include #include #include #include @@ -259,7 +261,10 @@ void* LoadSimpleFont(CPDF_Document* pDoc, fontDict->SetNewFor("FirstChar", static_cast(currentChar)); CPDF_Array* widthsArray = pDoc->NewIndirect(); while (true) { - widthsArray->AddNew(pFont->GetGlyphWidth(glyphIndex)); + uint32_t width = + std::min(pFont->GetGlyphWidth(glyphIndex), + static_cast(std::numeric_limits::max())); + widthsArray->AddNew(static_cast(width)); uint32_t nextChar = FXFT_Get_Next_Char(pFont->GetFace(), currentChar, &glyphIndex); // Simple fonts have 1-byte charcodes only. -- cgit v1.2.3