From 5b627acb33d64d5f524b090ba16343a7d3eccec8 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Thu, 10 Dec 2020 18:01:22 +0100 Subject: [PATCH] Build fix. Desynchronisation between fs_shell and normal autodeleter files --- headers/private/fs_shell/fssh_auto_deleter.h | 32 +++++++------------- 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/headers/private/fs_shell/fssh_auto_deleter.h b/headers/private/fs_shell/fssh_auto_deleter.h index d2948951ae..1fb36974c5 100644 --- a/headers/private/fs_shell/fssh_auto_deleter.h +++ b/headers/private/fs_shell/fssh_auto_deleter.h @@ -129,41 +129,31 @@ struct MemoryDeleter : AutoDeleter // CObjectDeleter -template +template struct CObjectDelete { inline void operator()(Type *object) { - if (fDestructor != NULL && object != NULL) - fDestructor(object); + if (object != NULL) + Destructor(object); } - - template - inline void operator=(Destructor destructor) - { - fDestructor = destructor; - } - -private: - DestructorReturnType (*fDestructor)(Type*); }; -template +template struct CObjectDeleter - : AutoDeleter > + : AutoDeleter > { - typedef AutoDeleter > Base; + typedef AutoDeleter > Base; - template - CObjectDeleter(Destructor destructor) : Base() + CObjectDeleter() : Base() { - Base::fDelete = destructor; } - template - CObjectDeleter(Type *object, Destructor destructor) : Base(object) + CObjectDeleter(Type *object) : Base(object) { - Base::fDelete = destructor; } };