diff --git a/feature_reflect_native.go b/feature_reflect_native.go
index b267308..95bd1e8 100644
--- a/feature_reflect_native.go
+++ b/feature_reflect_native.go
@@ -700,7 +700,7 @@ func (encoder *marshalerEncoder) EncodeInterface(val interface{}, stream *Stream
 }
 
 func (encoder *marshalerEncoder) IsEmpty(ptr unsafe.Pointer) bool {
-	return false
+	return encoder.checkIsEmpty.IsEmpty(ptr)
 }
 
 type textMarshalerEncoder struct {
@@ -726,7 +726,7 @@ func (encoder *textMarshalerEncoder) EncodeInterface(val interface{}, stream *St
 }
 
 func (encoder *textMarshalerEncoder) IsEmpty(ptr unsafe.Pointer) bool {
-	return false
+	return encoder.checkIsEmpty.IsEmpty(ptr)
 }
 
 type unmarshalerDecoder struct {