Commit 48515fb7 authored by Raymes Khoury's avatar Raymes Khoury

Make some casts in pdfium_engine.cc safe by using checked_cast

R=tsepez@chromium.org

Review URL: https://codereview.chromium.org/889503002

Cr-Commit-Position: refs/heads/master@{#313815}
parent 2f4ff480
...@@ -523,8 +523,8 @@ pp::VarDictionary TraverseBookmarks(FPDF_DOCUMENT doc, FPDF_BOOKMARK bookmark) { ...@@ -523,8 +523,8 @@ pp::VarDictionary TraverseBookmarks(FPDF_DOCUMENT doc, FPDF_BOOKMARK bookmark) {
pp::VarDictionary dict; pp::VarDictionary dict;
base::string16 title; base::string16 title;
unsigned long buffer_size = FPDFBookmark_GetTitle(bookmark, NULL, 0); unsigned long buffer_size = FPDFBookmark_GetTitle(bookmark, NULL, 0);
size_t title_length = buffer_size / sizeof(base::string16::value_type); size_t title_length = base::checked_cast<size_t>(buffer_size) /
sizeof(base::string16::value_type);
if (title_length > 0) { if (title_length > 0) {
PDFiumAPIStringBufferAdapter<base::string16> api_string_adapter( PDFiumAPIStringBufferAdapter<base::string16> api_string_adapter(
&title, title_length, true); &title, title_length, true);
...@@ -2394,7 +2394,8 @@ pp::VarDictionary PDFiumEngine::GetNamedDestinations() { ...@@ -2394,7 +2394,8 @@ pp::VarDictionary PDFiumEngine::GetNamedDestinations() {
base::string16 name; base::string16 name;
long buffer_bytes; long buffer_bytes;
FPDF_GetNamedDest(doc_, i, NULL, buffer_bytes); FPDF_GetNamedDest(doc_, i, NULL, buffer_bytes);
size_t name_length = buffer_bytes / sizeof(base::string16::value_type); size_t name_length = base::checked_cast<size_t>(buffer_bytes) /
sizeof(base::string16::value_type);
if (name_length > 0) { if (name_length > 0) {
PDFiumAPIStringBufferAdapter<base::string16> api_string_adapter( PDFiumAPIStringBufferAdapter<base::string16> api_string_adapter(
&name, name_length, true); &name, name_length, true);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment