| Index: xfa/fwl/basewidget/fwl_editimp.cpp
|
| diff --git a/xfa/fwl/basewidget/fwl_editimp.cpp b/xfa/fwl/basewidget/fwl_editimp.cpp
|
| index e47fb1b7395587566808b03c074606766e82f161..9f80336efa9b3ef88f184dde3abd5189b47cdd80 100644
|
| --- a/xfa/fwl/basewidget/fwl_editimp.cpp
|
| +++ b/xfa/fwl/basewidget/fwl_editimp.cpp
|
| @@ -7,6 +7,7 @@
|
| #include "xfa/fwl/basewidget/fwl_editimp.h"
|
|
|
| #include <algorithm>
|
| +#include <memory>
|
| #include <vector>
|
|
|
| #include "xfa/fde/fde_gedevice.h"
|
| @@ -1082,13 +1083,13 @@ void CFWL_EditImp::DrawContent(CFX_Graphics* pGraphics,
|
| CFX_RenderDevice* pRenderDev = pGraphics->GetRenderDevice();
|
| if (!pRenderDev)
|
| return;
|
| - CFDE_RenderDevice* pRenderDevice = new CFDE_RenderDevice(pRenderDev, FALSE);
|
| - CFDE_RenderContext* pRenderContext = new CFDE_RenderContext;
|
| +
|
| + std::unique_ptr<CFDE_RenderDevice> pRenderDevice(
|
| + new CFDE_RenderDevice(pRenderDev, FALSE));
|
| + std::unique_ptr<CFDE_RenderContext> pRenderContext(new CFDE_RenderContext);
|
| pRenderDevice->SetClipRect(rtClip);
|
| - pRenderContext->StartRender(pRenderDevice, pPage, mt);
|
| - pRenderContext->DoRender(NULL);
|
| - pRenderContext->Release();
|
| - pRenderDevice->Release();
|
| + pRenderContext->StartRender(pRenderDevice.get(), pPage, mt);
|
| + pRenderContext->DoRender(nullptr);
|
| if (m_pProperties->m_dwStyleExes & FWL_STYLEEXT_EDT_CombText) {
|
| pGraphics->RestoreGraphState();
|
| CFX_Path path;
|
| @@ -1110,6 +1111,7 @@ void CFWL_EditImp::DrawContent(CFX_Graphics* pGraphics,
|
| }
|
| pGraphics->RestoreGraphState();
|
| }
|
| +
|
| void CFWL_EditImp::UpdateEditEngine() {
|
| UpdateEditParams();
|
| UpdateEditLayout();
|
|
|