diff options
author | Henrique Nakashima <hnakashima@chromium.org> | 2017-08-01 19:47:24 -0400 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2017-08-02 16:02:53 +0000 |
commit | aea80dcc0abc0c310316fa502f91a359bc684758 (patch) | |
tree | b431624ce24b261c93fe6963b5ed14b101ff2e1b /fpdfsdk/javascript/Document.cpp | |
parent | 33dd830890d38f9083b732cd908ef082f1d89d65 (diff) | |
download | pdfium-aea80dcc0abc0c310316fa502f91a359bc684758.tar.xz |
Remove CFX_ByteTextBuf from cpdfsdk_interform.cpp and others.
Bug: pdfium:731
Change-Id: I61d38ab3f2b0ac68b8479ade25bab50f3a73c27b
Reviewed-on: https://pdfium-review.googlesource.com/9770
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
Diffstat (limited to 'fpdfsdk/javascript/Document.cpp')
-rw-r--r-- | fpdfsdk/javascript/Document.cpp | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/fpdfsdk/javascript/Document.cpp b/fpdfsdk/javascript/Document.cpp index ba4b2ae622..77878a53ed 100644 --- a/fpdfsdk/javascript/Document.cpp +++ b/fpdfsdk/javascript/Document.cpp @@ -7,6 +7,7 @@ #include "fpdfsdk/javascript/Document.h" #include <algorithm> +#include <sstream> #include <utility> #include <vector> @@ -382,16 +383,21 @@ bool Document::mailForm(CJS_Runtime* pRuntime, iLength > 4 ? params[4].ToCFXWideString(pRuntime) : L""; CFX_WideString cMsg = iLength > 5 ? params[5].ToCFXWideString(pRuntime) : L""; CPDFSDK_InterForm* pInterForm = m_pFormFillEnv->GetInterForm(); - CFX_ByteTextBuf textBuf; - if (!pInterForm->ExportFormToFDFTextBuf(textBuf)) + CFX_ByteString sTextBuf = pInterForm->ExportFormToFDFTextBuf(); + if (sTextBuf.GetLength() == 0) return false; + FX_STRSIZE nBufSize = sTextBuf.GetLength(); + char* pMutableBuf = FX_Alloc(char, nBufSize); + memcpy(pMutableBuf, sTextBuf.c_str(), nBufSize); + pRuntime->BeginBlock(); CPDFSDK_FormFillEnvironment* pFormFillEnv = pRuntime->GetFormFillEnv(); - pFormFillEnv->JS_docmailForm(textBuf.GetBuffer(), textBuf.GetLength(), bUI, - cTo.c_str(), cSubject.c_str(), cCc.c_str(), - cBcc.c_str(), cMsg.c_str()); + pFormFillEnv->JS_docmailForm(pMutableBuf, nBufSize, bUI, cTo.c_str(), + cSubject.c_str(), cCc.c_str(), cBcc.c_str(), + cMsg.c_str()); pRuntime->EndBlock(); + FX_Free(pMutableBuf); return true; } |