From dd8da5e2f0f4558d98a8a6f93f9cb14b5b091277 Mon Sep 17 00:00:00 2001 From: Ryan Harrison Date: Thu, 17 May 2018 20:43:42 +0000 Subject: Add check that --font-dir is actually a directory Hoisted myself on this today when I was actually passing the path to the font file I wanted to use, not the directory. BUG=pdfium:1008,pdfium:1020 Change-Id: I4a68a7d96633e951a92125d83397ff457288b1e0 Reviewed-on: https://pdfium-review.googlesource.com/32636 Commit-Queue: Ryan Harrison Reviewed-by: Henrique Nakashima --- samples/pdfium_test.cc | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'samples') diff --git a/samples/pdfium_test.cc b/samples/pdfium_test.cc index 347982cf09..c7c1a3af75 100644 --- a/samples/pdfium_test.cc +++ b/samples/pdfium_test.cc @@ -33,6 +33,7 @@ #include "samples/pdfium_test_event_helper.h" #include "samples/pdfium_test_write_helper.h" #include "testing/test_support.h" +#include "testing/utils/path_service.h" #include "third_party/base/logging.h" #include "third_party/base/optional.h" @@ -325,7 +326,7 @@ bool ParseCommandLine(const std::vector& args, return false; } options->output_format = OUTPUT_SKP; -#endif +#endif // PDF_ENABLE_SKIA } else if (cur_arg.size() > 11 && cur_arg.compare(0, 11, "--font-dir=") == 0) { if (!options->font_directory.empty()) { @@ -338,6 +339,13 @@ bool ParseCommandLine(const std::vector& args, fprintf(stderr, "Failed to expand --font-dir, %s\n", path.c_str()); return false; } + + if (!PathService::DirectoryExists(expanded_path.value())) { + fprintf(stderr, "--font-dir, %s, appears to not be a directory\n", + path.c_str()); + return false; + } + options->font_directory = expanded_path.value(); #ifdef _WIN32 @@ -763,7 +771,7 @@ void RenderPdf(const std::string& name, void ShowConfig() { std::string config; std::string maybe_comma; -#if PDF_ENABLE_V8 +#ifdef PDF_ENABLE_V8 config.append(maybe_comma); config.append("V8"); maybe_comma = ","; -- cgit v1.2.3