From 1ef99931e131343f069a4b74edfc06196d72d85b Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Sun, 27 Apr 2008 02:22:14 +0000 Subject: 2008-04-27 Tatsuhiro Tsujikawa Rewritten Exception class. Throw exception object, not its pointer and catch by reference, so that remove problematic delete operator for catched exception. * src/Exception.cc * src/Exception.h * test/ExceptionTest.cc * src/*: All files throwing/catching exception. * test/*: All files throwing/catching exception. --- src/DefaultExtensionMessageFactory.cc | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src/DefaultExtensionMessageFactory.cc') diff --git a/src/DefaultExtensionMessageFactory.cc b/src/DefaultExtensionMessageFactory.cc index 4b580fb4..2295a70e 100644 --- a/src/DefaultExtensionMessageFactory.cc +++ b/src/DefaultExtensionMessageFactory.cc @@ -41,6 +41,7 @@ #include "LogFactory.h" #include "Logger.h" #include "BtRegistry.h" +#include "StringFormat.h" namespace aria2 { @@ -68,8 +69,9 @@ DefaultExtensionMessageFactory::createMessage(const unsigned char* data, size_t } else { std::string extensionName = getExtensionName(extensionMessageID); if(extensionName.empty()) { - throw new DlAbortEx("No extension registered for extended message ID %u", - extensionMessageID); + throw DlAbortEx + (StringFormat("No extension registered for extended message ID %u", + extensionMessageID).str()); } if(extensionName == "ut_pex") { // uTorrent compatible Peer-Exchange @@ -78,7 +80,9 @@ DefaultExtensionMessageFactory::createMessage(const unsigned char* data, size_t m->setBtContext(_btContext); return m; } else { - throw new DlAbortEx("Unsupported extension message received. extensionMessageID=%u, extensionName=%s", extensionMessageID, extensionName.c_str()); + throw DlAbortEx + (StringFormat("Unsupported extension message received. extensionMessageID=%u, extensionName=%s", + extensionMessageID, extensionName.c_str()).str()); } } } -- cgit