Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(956)

Unified Diff: fpdfsdk/fpdf_ext.cpp

Issue 2013483003: Remove CFX_PrivateData from CPDF_ModuleMgr (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Re-order two lines in .gyp file. Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « core/fxcrt/include/fx_memory.h ('k') | pdfium.gyp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: fpdfsdk/fpdf_ext.cpp
diff --git a/fpdfsdk/fpdf_ext.cpp b/fpdfsdk/fpdf_ext.cpp
index 350945e3287e594f73d65c24f9f5435aae53a9c4..0a76a0d4beb77af6abaaa1c66e982ac38373ea2d 100644
--- a/fpdfsdk/fpdf_ext.cpp
+++ b/fpdfsdk/fpdf_ext.cpp
@@ -11,6 +11,7 @@
#include "core/fpdfapi/fpdf_parser/include/cpdf_array.h"
#include "core/fpdfapi/fpdf_parser/include/cpdf_document.h"
#include "core/fpdfapi/include/cpdf_modulemgr.h"
+#include "core/fxcrt/include/fx_basic.h"
#include "core/fxcrt/include/fx_xml.h"
#include "fpdfsdk/include/fsdk_define.h"
@@ -20,7 +21,7 @@
#define FPDFSDK_UNSUPPORT_CALL 100
-class CFSDK_UnsupportInfo_Adapter {
+class CFSDK_UnsupportInfo_Adapter : public CFX_Deletable {
public:
explicit CFSDK_UnsupportInfo_Adapter(UNSUPPORT_INFO* unsp_info)
: m_unsp_info(unsp_info) {}
@@ -37,18 +38,13 @@ void CFSDK_UnsupportInfo_Adapter::ReportError(int nErrorType) {
}
}
-void FreeUnsupportInfo(void* pData) {
- CFSDK_UnsupportInfo_Adapter* pAdapter = (CFSDK_UnsupportInfo_Adapter*)pData;
- delete pAdapter;
-}
-
FX_BOOL FPDF_UnSupportError(int nError) {
CFSDK_UnsupportInfo_Adapter* pAdapter =
- (CFSDK_UnsupportInfo_Adapter*)CPDF_ModuleMgr::Get()->GetPrivateData(
- (void*)FPDFSDK_UNSUPPORT_CALL);
-
+ static_cast<CFSDK_UnsupportInfo_Adapter*>(
+ CPDF_ModuleMgr::Get()->GetUnsupportInfoAdapter());
if (!pAdapter)
return FALSE;
+
pAdapter->ReportError(nError);
return TRUE;
}
@@ -57,12 +53,9 @@ DLLEXPORT FPDF_BOOL STDCALL
FSDK_SetUnSpObjProcessHandler(UNSUPPORT_INFO* unsp_info) {
if (!unsp_info || unsp_info->version != 1)
return FALSE;
- CFSDK_UnsupportInfo_Adapter* pAdapter =
- new CFSDK_UnsupportInfo_Adapter(unsp_info);
-
- CPDF_ModuleMgr::Get()->SetPrivateData((void*)FPDFSDK_UNSUPPORT_CALL, pAdapter,
- &FreeUnsupportInfo);
+ CPDF_ModuleMgr::Get()->SetUnsupportInfoAdapter(std::unique_ptr<CFX_Deletable>(
+ new CFSDK_UnsupportInfo_Adapter(unsp_info)));
return TRUE;
}
« no previous file with comments | « core/fxcrt/include/fx_memory.h ('k') | pdfium.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698