OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #include "public/fpdf_doc.h" | 7 #include "public/fpdf_doc.h" |
8 | 8 |
9 #include <set> | 9 #include <set> |
10 | 10 |
11 #include "core/fpdfapi/fpdf_page/cpdf_page.h" | 11 #include "core/fpdfapi/fpdf_page/cpdf_page.h" |
12 #include "core/fpdfapi/fpdf_parser/cpdf_array.h" | 12 #include "core/fpdfapi/fpdf_parser/cpdf_array.h" |
13 #include "core/fpdfapi/fpdf_parser/cpdf_document.h" | 13 #include "core/fpdfapi/fpdf_parser/cpdf_document.h" |
14 #include "core/fpdfdoc/include/cpdf_bookmark.h" | 14 #include "core/fpdfdoc/cpdf_bookmark.h" |
15 #include "core/fpdfdoc/include/cpdf_bookmarktree.h" | 15 #include "core/fpdfdoc/cpdf_bookmarktree.h" |
16 #include "fpdfsdk/include/fsdk_define.h" | 16 #include "fpdfsdk/include/fsdk_define.h" |
17 #include "third_party/base/stl_util.h" | 17 #include "third_party/base/stl_util.h" |
18 | 18 |
19 namespace { | 19 namespace { |
20 | 20 |
21 CPDF_Bookmark FindBookmark(const CPDF_BookmarkTree& tree, | 21 CPDF_Bookmark FindBookmark(const CPDF_BookmarkTree& tree, |
22 CPDF_Bookmark bookmark, | 22 CPDF_Bookmark bookmark, |
23 const CFX_WideString& title, | 23 const CFX_WideString& title, |
24 std::set<CPDF_Dictionary*>* visited) { | 24 std::set<CPDF_Dictionary*>* visited) { |
25 // Return if already checked to avoid circular calling. | 25 // Return if already checked to avoid circular calling. |
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
358 return 0; | 358 return 0; |
359 CFX_WideString text = pInfo->GetUnicodeTextFor(tag); | 359 CFX_WideString text = pInfo->GetUnicodeTextFor(tag); |
360 // Use UTF-16LE encoding | 360 // Use UTF-16LE encoding |
361 CFX_ByteString encodedText = text.UTF16LE_Encode(); | 361 CFX_ByteString encodedText = text.UTF16LE_Encode(); |
362 unsigned long len = encodedText.GetLength(); | 362 unsigned long len = encodedText.GetLength(); |
363 if (buffer && buflen >= len) { | 363 if (buffer && buflen >= len) { |
364 FXSYS_memcpy(buffer, encodedText.c_str(), len); | 364 FXSYS_memcpy(buffer, encodedText.c_str(), len); |
365 } | 365 } |
366 return len; | 366 return len; |
367 } | 367 } |
OLD | NEW |