Skip to content

Commit 986970d

Browse files
committed
RAII: pdfrenderer.cpp: pdftext
1 parent 3c6e18e commit 986970d

File tree

1 file changed

+3
-6
lines changed

1 file changed

+3
-6
lines changed

api/pdfrenderer.cpp

+3-6
Original file line numberDiff line numberDiff line change
@@ -883,12 +883,11 @@ bool TessPDFRenderer::AddImageHandler(TessBaseAPI* api) {
883883
AppendPDFObject(buf);
884884

885885
// CONTENTS
886-
char* pdftext = GetPDFTextObjects(api, width, height);
887-
long pdftext_len = strlen(pdftext);
888-
unsigned char *pdftext_casted = reinterpret_cast<unsigned char *>(pdftext);
886+
const std::unique_ptr</*non-const*/ char[]> pdftext(GetPDFTextObjects(api, width, height));
887+
const long pdftext_len = strlen(pdftext.get());
889888
size_t len;
890889
unsigned char *comp_pdftext =
891-
zlibCompress(pdftext_casted, pdftext_len, &len);
890+
zlibCompress(reinterpret_cast<unsigned char *>(pdftext.get()), pdftext_len, &len);
892891
long comp_pdftext_len = len;
893892
n = snprintf(buf, sizeof(buf),
894893
"%ld 0 obj\n"
@@ -897,7 +896,6 @@ bool TessPDFRenderer::AddImageHandler(TessBaseAPI* api) {
897896
">>\n"
898897
"stream\n", obj_, comp_pdftext_len);
899898
if (n >= sizeof(buf)) {
900-
delete[] pdftext;
901899
lept_free(comp_pdftext);
902900
return false;
903901
}
@@ -906,7 +904,6 @@ bool TessPDFRenderer::AddImageHandler(TessBaseAPI* api) {
906904
AppendData(reinterpret_cast<char *>(comp_pdftext), comp_pdftext_len);
907905
objsize += comp_pdftext_len;
908906
lept_free(comp_pdftext);
909-
delete[] pdftext;
910907
const char *b2 =
911908
"endstream\n"
912909
"endobj\n";

0 commit comments

Comments
 (0)