diff options
author | Dan Sinclair <dsinclair@chromium.org> | 2015-10-27 13:02:59 -0400 |
---|---|---|
committer | Dan Sinclair <dsinclair@chromium.org> | 2015-10-27 13:02:59 -0400 |
commit | e6eae266a48cdcfd464f52df68c97183a4f7987a (patch) | |
tree | f62b73bb383f7c43f848042f35c843d2f38637b1 /samples | |
parent | fbbb3c3de517309b6808d7a8f4c441aa0abf7065 (diff) | |
download | pdfium-e6eae266a48cdcfd464f52df68c97183a4f7987a.tar.xz |
Add context to file load failures in pdfium_test.
Currently if pdfium_test fails to load the document it just says it failed. This
CL adds some extra context by looking at the error set by the load and reporting
it to the user.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1413923006 .
Diffstat (limited to 'samples')
-rw-r--r-- | samples/pdfium_test.cc | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/samples/pdfium_test.cc b/samples/pdfium_test.cc index 66dd3f2f1b..0a1693ac7a 100644 --- a/samples/pdfium_test.cc +++ b/samples/pdfium_test.cc @@ -390,7 +390,35 @@ void RenderPdf(const std::string& name, const char* pBuf, size_t len, } if (!doc) { - fprintf(stderr, "Load pdf docs unsuccessful.\n"); + unsigned long err = FPDF_GetLastError(); + fprintf(stderr, "Load pdf docs unsuccessful: "); + switch (err) { + case FPDF_ERR_SUCCESS: + fprintf(stderr, "Success"); + break; + case FPDF_ERR_UNKNOWN: + fprintf(stderr, "Unknown error"); + break; + case FPDF_ERR_FILE: + fprintf(stderr, "File not found or could not be opened"); + break; + case FPDF_ERR_FORMAT: + fprintf(stderr, "File not in PDF format or corrupted"); + break; + case FPDF_ERR_PASSWORD: + fprintf(stderr, "Password required or incorrect password"); + break; + case FPDF_ERR_SECURITY: + fprintf(stderr, "Unsupported security scheme"); + break; + case FPDF_ERR_PAGE: + fprintf(stderr, "Page not found or content error"); + break; + default: + fprintf(stderr, "Unknown error %ld", err); + } + fprintf(stderr, ".\n"); + FPDFAvail_Destroy(pdf_avail); return; } |