diff --git a/core/fxcodec/codec/ccodec_bmpmodule.h b/core/fxcodec/codec/ccodec_bmpmodule.h
index bdf6544..c9fcabb 100644
--- a/core/fxcodec/codec/ccodec_bmpmodule.h
+++ b/core/fxcodec/codec/ccodec_bmpmodule.h
@@ -7,6 +7,7 @@
 #ifndef CORE_FXCODEC_CODEC_CCODEC_BMPMODULE_H_
 #define CORE_FXCODEC_CODEC_CCODEC_BMPMODULE_H_
 
+#include "core/fxcrt/cfx_unowned_ptr.h"
 #include "core/fxcrt/fx_system.h"
 
 class CFX_DIBAttribute;
@@ -38,11 +39,11 @@
                      uint32_t** pal_pp,
                      CFX_DIBAttribute* pAttribute);
   int32_t LoadImage(FXBMP_Context* pContext);
-  Delegate* GetDelegate() const { return m_pDelegate; }
+  Delegate* GetDelegate() const { return m_pDelegate.Get(); }
   void SetDelegate(Delegate* pDelegate) { m_pDelegate = pDelegate; }
 
  protected:
-  Delegate* m_pDelegate;
+  CFX_UnownedPtr<Delegate> m_pDelegate;
   char m_szLastError[256];
 };
 
diff --git a/core/fxcodec/codec/ccodec_gifmodule.h b/core/fxcodec/codec/ccodec_gifmodule.h
index 5f3f45f..2ccd4f4 100644
--- a/core/fxcodec/codec/ccodec_gifmodule.h
+++ b/core/fxcodec/codec/ccodec_gifmodule.h
@@ -10,6 +10,7 @@
 #include <memory>
 
 #include "core/fxcodec/lgif/fx_gif.h"
+#include "core/fxcrt/cfx_unowned_ptr.h"
 #include "core/fxcrt/fx_coordinates.h"
 #include "core/fxcrt/fx_system.h"
 
@@ -54,11 +55,11 @@
                             int frame_num,
                             CFX_DIBAttribute* pAttribute);
 
-  Delegate* GetDelegate() const { return m_pDelegate; }
+  Delegate* GetDelegate() const { return m_pDelegate.Get(); }
   void SetDelegate(Delegate* pDelegate) { m_pDelegate = pDelegate; }
 
  protected:
-  Delegate* m_pDelegate;
+  CFX_UnownedPtr<Delegate> m_pDelegate;
   char m_szLastError[256];
 };
 
diff --git a/core/fxcodec/codec/ccodec_pngmodule.h b/core/fxcodec/codec/ccodec_pngmodule.h
index f0a08db..2b43f5d 100644
--- a/core/fxcodec/codec/ccodec_pngmodule.h
+++ b/core/fxcodec/codec/ccodec_pngmodule.h
@@ -7,6 +7,7 @@
 #ifndef CORE_FXCODEC_CODEC_CCODEC_PNGMODULE_H_
 #define CORE_FXCODEC_CODEC_CCODEC_PNGMODULE_H_
 
+#include "core/fxcrt/cfx_unowned_ptr.h"
 #include "core/fxcrt/fx_system.h"
 
 class CFX_DIBAttribute;
@@ -38,11 +39,11 @@
              uint32_t src_size,
              CFX_DIBAttribute* pAttribute);
 
-  Delegate* GetDelegate() const { return m_pDelegate; }
+  Delegate* GetDelegate() const { return m_pDelegate.Get(); }
   void SetDelegate(Delegate* delegate) { m_pDelegate = delegate; }
 
  protected:
-  Delegate* m_pDelegate;
+  CFX_UnownedPtr<Delegate> m_pDelegate;
   char m_szLastError[PNG_ERROR_SIZE];
 };
 
