X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fextensible.h;h=f88ede4611805e449f6c690864f0327b7abe09cf;hb=79892a727e323dcc4bce7e9c0cf3c99c5fe61706;hp=afb1cd5b66e0097def46c36c18e509e341152b19;hpb=35b70631f0532a5828b04a8e0c02092a285f331a;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/extensible.h b/include/extensible.h index afb1cd5b6..f88ede461 100644 --- a/include/extensible.h +++ b/include/extensible.h @@ -65,7 +65,7 @@ class CoreExport ExtensionItem : public ServiceProvider, public usecountbase */ virtual void unserialize(SerializeFormat format, Extensible* container, const std::string& value) = 0; /** Free the item */ - virtual void free(void* item) = 0; + virtual void free(Extensible* container, void* item) = 0; /** Register this object in the ExtensionManager */ @@ -147,7 +147,7 @@ class CoreExport LocalExtItem : public ExtensionItem virtual ~LocalExtItem(); std::string serialize(SerializeFormat format, const Extensible* container, void* item) const CXX11_OVERRIDE; void unserialize(SerializeFormat format, Extensible* container, const std::string& value) CXX11_OVERRIDE; - void free(void* item) CXX11_OVERRIDE = 0; + void free(Extensible* container, void* item) CXX11_OVERRIDE = 0; }; template > @@ -190,7 +190,7 @@ class SimpleExtItem : public LocalExtItem del(old); } - void free(void* item) CXX11_OVERRIDE + void free(Extensible* container, void* item) CXX11_OVERRIDE { Del del; del(static_cast(item)); @@ -216,7 +216,7 @@ class CoreExport LocalIntExt : public LocalExtItem intptr_t get(const Extensible* container) const; intptr_t set(Extensible* container, intptr_t value); void unset(Extensible* container) { set(container, 0); } - void free(void* item) CXX11_OVERRIDE; + void free(Extensible* container, void* item) CXX11_OVERRIDE; }; class CoreExport StringExtItem : public ExtensionItem @@ -229,5 +229,5 @@ class CoreExport StringExtItem : public ExtensionItem void unserialize(SerializeFormat format, Extensible* container, const std::string& value) CXX11_OVERRIDE; void set(Extensible* container, const std::string& value); void unset(Extensible* container); - void free(void* item) CXX11_OVERRIDE; + void free(Extensible* container, void* item) CXX11_OVERRIDE; };