From 94d7827e8b101b528c427298fada73664970cf26 Mon Sep 17 00:00:00 2001 From: danieldg Date: Tue, 15 Sep 2009 21:25:21 +0000 Subject: Fix null ExtensionItem when unregistering hooks; fix CORE_FLAGS on darwin git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11729 e03df62e-2008-0410-955e-edbf42e46eb7 --- .Makefile.inc | 2 +- configure | 2 +- src/base.cpp | 4 +++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.Makefile.inc b/.Makefile.inc index f0ea08214..6b8d7274f 100644 --- a/.Makefile.inc +++ b/.Makefile.inc @@ -39,7 +39,7 @@ INSTMODE = 0755 CXXFLAGS += -DDARWIN -frtti LDLIBS += -ldl SHARED = -bundle -twolevel_namespace -undefined dynamic_lookup - CORE_FLAGS = -dynamic -bind_at_load -L. + CORELDFLAGS = -dynamic -bind_at_load -L. @ENDIF @IFDEF D diff --git a/configure b/configure index dfdb43d7d..efa957c82 100755 --- a/configure +++ b/configure @@ -1077,7 +1077,7 @@ EOF print "Writing \e[1;32m$file\e[0m ...\n"; for my $var (qw( CC SYSTEM BASE_DIR CONFIG_DIR MODULE_DIR BINARY_DIR - STARTSCRIPT DESTINATION EXTRA_DIR SOCKETENGINE CORE_FLAGS + STARTSCRIPT DESTINATION EXTRA_DIR SOCKETENGINE )) { s/\@$var\@/$config{$var}/g; } diff --git a/src/base.cpp b/src/base.cpp index 1e4f746af..aac66fd3f 100644 --- a/src/base.cpp +++ b/src/base.cpp @@ -137,9 +137,11 @@ Extensible::~Extensible() { for(ExtensibleStore::iterator i = extensions.begin(); i != extensions.end(); ++i) { - ExtensionItem* type = extension_types[i->first]; + ExtensionItem* type = GetItem(i->first); if (type) type->free(i->second); + else if (ServerInstance && ServerInstance->Logs) + ServerInstance->Logs->Log("BASE", ERROR, "Extension type %s is not registered", i->first.c_str()); } } -- cgit v1.2.3