| // This may look like C code, but it is really -*- C++ -*- |
| // |
| // Copyright Bob Friesenhahn, 1999, 2000, 2001, 2002, 2003 |
| // Copyright Dirk Lemstra 2014-2017 |
| // |
| // Implementation of Exception and derived classes |
| // |
| |
| #define MAGICKCORE_IMPLEMENTATION 1 |
| #define MAGICK_PLUSPLUS_IMPLEMENTATION 1 |
| |
| #include "Magick++/Include.h" |
| #include <string> |
| #include <errno.h> |
| #include <string.h> |
| |
| using namespace std; |
| |
| #include "Magick++/Exception.h" |
| |
| Magick::Exception::Exception(const std::string& what_) |
| : std::exception(), |
| _what(what_), |
| _nested((Exception *) NULL) |
| { |
| } |
| |
| Magick::Exception::Exception(const std::string& what_, |
| Exception* nested_) |
| : std::exception(), |
| _what(what_), |
| _nested(nested_) |
| { |
| } |
| |
| Magick::Exception::Exception(const Magick::Exception& original_) |
| : exception(original_), |
| _what(original_._what), |
| _nested((Exception *) NULL) |
| { |
| } |
| |
| Magick::Exception::~Exception() throw() |
| { |
| delete _nested; |
| } |
| |
| Magick::Exception& Magick::Exception::operator=( |
| const Magick::Exception& original_) |
| { |
| if (this != &original_) |
| this->_what=original_._what; |
| return(*this); |
| } |
| |
| const char* Magick::Exception::what() const throw() |
| { |
| return(_what.c_str()); |
| } |
| |
| const Magick::Exception* Magick::Exception::nested() const throw() |
| { |
| return(_nested); |
| } |
| |
| void Magick::Exception::nested(Exception* nested_) throw() |
| { |
| _nested=nested_; |
| } |
| |
| Magick::Error::Error(const std::string& what_) |
| : Exception(what_) |
| { |
| } |
| |
| Magick::Error::Error(const std::string& what_,Exception *nested_) |
| : Exception(what_,nested_) |
| { |
| } |
| |
| Magick::Error::~Error() throw() |
| { |
| } |
| |
| Magick::ErrorBlob::ErrorBlob(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorBlob::ErrorBlob(const std::string& what_,Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorBlob::~ErrorBlob() throw() |
| { |
| } |
| |
| Magick::ErrorCache::ErrorCache(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorCache::ErrorCache(const std::string& what_,Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorCache::~ErrorCache() throw() |
| { |
| } |
| |
| Magick::ErrorCoder::ErrorCoder(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorCoder::ErrorCoder(const std::string& what_,Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorCoder::~ErrorCoder() throw() |
| { |
| } |
| |
| Magick::ErrorConfigure::ErrorConfigure(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorConfigure::ErrorConfigure(const std::string& what_, |
| Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorConfigure::~ErrorConfigure() throw() |
| { |
| } |
| |
| Magick::ErrorCorruptImage::ErrorCorruptImage(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorCorruptImage::ErrorCorruptImage(const std::string& what_, |
| Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorCorruptImage::~ErrorCorruptImage() throw() |
| { |
| } |
| |
| Magick::ErrorDelegate::ErrorDelegate(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorDelegate::ErrorDelegate(const std::string& what_, |
| Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorDelegate::~ErrorDelegate()throw() |
| { |
| } |
| |
| Magick::ErrorDraw::ErrorDraw(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorDraw::ErrorDraw(const std::string& what_,Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorDraw::~ErrorDraw() throw() |
| { |
| } |
| |
| Magick::ErrorFileOpen::ErrorFileOpen(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorFileOpen::~ErrorFileOpen() throw() |
| { |
| } |
| |
| Magick::ErrorFileOpen::ErrorFileOpen(const std::string& what_, |
| Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| |
| Magick::ErrorImage::ErrorImage(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorImage::ErrorImage(const std::string& what_,Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorImage::~ErrorImage() throw() |
| { |
| } |
| |
| Magick::ErrorMissingDelegate::ErrorMissingDelegate(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorMissingDelegate::ErrorMissingDelegate(const std::string& what_, |
| Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorMissingDelegate::~ErrorMissingDelegate() throw () |
| { |
| } |
| |
| Magick::ErrorModule::ErrorModule(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorModule::ErrorModule(const std::string& what_,Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorModule::~ErrorModule() throw() |
| { |
| } |
| |
| Magick::ErrorMonitor::ErrorMonitor(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorMonitor::ErrorMonitor(const std::string& what_,Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorMonitor::~ErrorMonitor() throw() |
| { |
| } |
| |
| Magick::ErrorOption::ErrorOption(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorOption::ErrorOption(const std::string& what_,Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorOption::~ErrorOption() throw() |
| { |
| } |
| |
| Magick::ErrorPolicy::ErrorPolicy(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorPolicy::ErrorPolicy(const std::string& what_,Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorPolicy::~ErrorPolicy() throw() |
| { |
| } |
| |
| |
| Magick::ErrorRegistry::ErrorRegistry(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorRegistry::ErrorRegistry(const std::string& what_, |
| Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorRegistry::~ErrorRegistry() throw() |
| { |
| } |
| |
| Magick::ErrorResourceLimit::ErrorResourceLimit(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorResourceLimit::ErrorResourceLimit(const std::string& what_, |
| Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorResourceLimit::~ErrorResourceLimit() throw() |
| { |
| } |
| |
| Magick::ErrorStream::ErrorStream(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorStream::ErrorStream(const std::string& what_,Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorStream::~ErrorStream() throw() |
| { |
| } |
| |
| Magick::ErrorType::ErrorType(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorType::ErrorType(const std::string& what_,Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorType::~ErrorType() throw() |
| { |
| } |
| |
| Magick::ErrorUndefined::ErrorUndefined(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorUndefined::ErrorUndefined(const std::string& what_, |
| Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorUndefined::~ErrorUndefined() throw() |
| { |
| } |
| |
| Magick::ErrorXServer::ErrorXServer(const std::string& what_) |
| : Error(what_) |
| { |
| } |
| |
| Magick::ErrorXServer::ErrorXServer(const std::string& what_,Exception *nested_) |
| : Error(what_,nested_) |
| { |
| } |
| |
| Magick::ErrorXServer::~ErrorXServer() throw () |
| { |
| } |
| |
| Magick::Warning::Warning(const std::string& what_) |
| : Exception(what_) |
| { |
| } |
| |
| Magick::Warning::Warning(const std::string& what_,Exception *nested_) |
| : Exception(what_,nested_) |
| { |
| } |
| |
| Magick::Warning::~Warning() throw() |
| { |
| } |
| |
| Magick::WarningBlob::WarningBlob(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningBlob::WarningBlob(const std::string& what_,Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningBlob::~WarningBlob() throw() |
| { |
| } |
| |
| Magick::WarningCache::WarningCache(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningCache::WarningCache(const std::string& what_,Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningCache::~WarningCache() throw() |
| { |
| } |
| |
| Magick::WarningCoder::WarningCoder(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningCoder::WarningCoder(const std::string& what_,Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningCoder::~WarningCoder() throw() |
| { |
| } |
| |
| Magick::WarningConfigure::WarningConfigure(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningConfigure::WarningConfigure(const std::string& what_, |
| Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningConfigure::~WarningConfigure() throw() |
| { |
| } |
| |
| Magick::WarningCorruptImage::WarningCorruptImage(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningCorruptImage::WarningCorruptImage(const std::string& what_, |
| Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningCorruptImage::~WarningCorruptImage() throw() |
| { |
| } |
| |
| Magick::WarningDelegate::WarningDelegate(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningDelegate::WarningDelegate(const std::string& what_, |
| Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningDelegate::~WarningDelegate() throw() |
| { |
| } |
| |
| Magick::WarningDraw::WarningDraw(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningDraw::WarningDraw(const std::string& what_,Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningDraw::~WarningDraw() throw() |
| { |
| } |
| |
| Magick::WarningFileOpen::WarningFileOpen(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningFileOpen::WarningFileOpen(const std::string& what_, |
| Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningFileOpen::~WarningFileOpen() throw() |
| { |
| } |
| |
| Magick::WarningImage::WarningImage(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningImage::WarningImage(const std::string& what_,Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningImage::~WarningImage() throw() |
| { |
| } |
| |
| Magick::WarningMissingDelegate::WarningMissingDelegate( |
| const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningMissingDelegate::WarningMissingDelegate( |
| const std::string& what_,Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningMissingDelegate::~WarningMissingDelegate() throw() |
| { |
| } |
| |
| Magick::WarningModule::WarningModule(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningModule::WarningModule(const std::string& what_, |
| Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| |
| Magick::WarningModule::~WarningModule() throw() |
| { |
| } |
| |
| Magick::WarningMonitor::WarningMonitor(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningMonitor::WarningMonitor(const std::string& what_, |
| Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningMonitor::~WarningMonitor() throw() |
| { |
| } |
| |
| Magick::WarningOption::WarningOption(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningOption::WarningOption(const std::string& what_, |
| Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningOption::~WarningOption() throw() |
| { |
| } |
| |
| Magick::WarningRegistry::WarningRegistry(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningRegistry::WarningRegistry(const std::string& what_, |
| Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningRegistry::~WarningRegistry() throw() |
| { |
| } |
| |
| Magick::WarningPolicy::WarningPolicy(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningPolicy::WarningPolicy(const std::string& what_, |
| Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningPolicy::~WarningPolicy() throw() |
| { |
| } |
| |
| Magick::WarningResourceLimit::WarningResourceLimit(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningResourceLimit::WarningResourceLimit(const std::string& what_, |
| Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningResourceLimit::~WarningResourceLimit() throw() |
| { |
| } |
| |
| Magick::WarningStream::WarningStream(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningStream::WarningStream(const std::string& what_, |
| Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningStream::~WarningStream() throw() |
| { |
| } |
| |
| Magick::WarningType::WarningType(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningType::WarningType(const std::string& what_,Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningType::~WarningType() throw() |
| { |
| } |
| |
| Magick::WarningUndefined::WarningUndefined(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningUndefined::WarningUndefined(const std::string& what_, |
| Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningUndefined::~WarningUndefined() throw() |
| { |
| } |
| |
| Magick::WarningXServer::WarningXServer(const std::string& what_) |
| : Warning(what_) |
| { |
| } |
| |
| Magick::WarningXServer::WarningXServer(const std::string& what_, |
| Exception *nested_) |
| : Warning(what_,nested_) |
| { |
| } |
| |
| Magick::WarningXServer::~WarningXServer() throw() |
| { |
| } |
| |
| std::string Magick::formatExceptionMessage(const MagickCore::ExceptionInfo *exception_) |
| { |
| // Format error message ImageMagick-style |
| std::string message=GetClientName(); |
| if (exception_->reason != (char *) NULL) |
| { |
| message+=std::string(": "); |
| message+=std::string(exception_->reason); |
| } |
| |
| if (exception_->description != (char *) NULL) |
| message += " (" + std::string(exception_->description) + ")"; |
| return(message); |
| } |
| |
| Magick::Exception* Magick::createException(const MagickCore::ExceptionInfo *exception_) |
| { |
| std::string message=formatExceptionMessage(exception_); |
| switch (exception_->severity) |
| { |
| case MagickCore::BlobError: |
| case MagickCore::BlobFatalError: |
| return new ErrorBlob(message); |
| case MagickCore::BlobWarning: |
| return new WarningBlob(message); |
| case MagickCore::CacheError: |
| case MagickCore::CacheFatalError: |
| return new ErrorCache(message); |
| case MagickCore::CacheWarning: |
| return new WarningCache(message); |
| case MagickCore::CoderError: |
| case MagickCore::CoderFatalError: |
| return new ErrorCoder(message); |
| case MagickCore::CoderWarning: |
| return new WarningCoder(message); |
| case MagickCore::ConfigureError: |
| case MagickCore::ConfigureFatalError: |
| return new ErrorConfigure(message); |
| case MagickCore::ConfigureWarning: |
| return new WarningConfigure(message); |
| case MagickCore::CorruptImageError: |
| case MagickCore::CorruptImageFatalError: |
| return new ErrorCorruptImage(message); |
| case MagickCore::CorruptImageWarning: |
| return new WarningCorruptImage(message); |
| case MagickCore::DelegateError: |
| case MagickCore::DelegateFatalError: |
| return new ErrorDelegate(message); |
| case MagickCore::DelegateWarning: |
| return new WarningDelegate(message); |
| case MagickCore::DrawError: |
| case MagickCore::DrawFatalError: |
| return new ErrorDraw(message); |
| case MagickCore::DrawWarning: |
| return new WarningDraw(message); |
| case MagickCore::FileOpenError: |
| case MagickCore::FileOpenFatalError: |
| return new ErrorFileOpen(message); |
| case MagickCore::FileOpenWarning: |
| return new WarningFileOpen(message); |
| case MagickCore::ImageError: |
| case MagickCore::ImageFatalError: |
| return new ErrorImage(message); |
| case MagickCore::ImageWarning: |
| return new WarningImage(message); |
| case MagickCore::MissingDelegateError: |
| case MagickCore::MissingDelegateFatalError: |
| return new ErrorMissingDelegate(message); |
| case MagickCore::MissingDelegateWarning: |
| return new WarningMissingDelegate(message); |
| case MagickCore::ModuleError: |
| case MagickCore::ModuleFatalError: |
| return new ErrorModule(message); |
| case MagickCore::ModuleWarning: |
| return new WarningModule(message); |
| case MagickCore::MonitorError: |
| case MagickCore::MonitorFatalError: |
| return new ErrorMonitor(message); |
| case MagickCore::MonitorWarning: |
| return new WarningMonitor(message); |
| case MagickCore::OptionError: |
| case MagickCore::OptionFatalError: |
| return new ErrorOption(message); |
| case MagickCore::OptionWarning: |
| return new WarningOption(message); |
| case MagickCore::PolicyWarning: |
| return new WarningPolicy(message); |
| case MagickCore::PolicyError: |
| case MagickCore::PolicyFatalError: |
| return new ErrorPolicy(message); |
| case MagickCore::RegistryError: |
| case MagickCore::RegistryFatalError: |
| return new ErrorRegistry(message); |
| case MagickCore::RegistryWarning: |
| return new WarningRegistry(message); |
| case MagickCore::ResourceLimitError: |
| case MagickCore::ResourceLimitFatalError: |
| return new ErrorResourceLimit(message); |
| case MagickCore::ResourceLimitWarning: |
| return new WarningResourceLimit(message); |
| case MagickCore::StreamError: |
| case MagickCore::StreamFatalError: |
| return new ErrorStream(message); |
| case MagickCore::StreamWarning: |
| return new WarningStream(message); |
| case MagickCore::TypeError: |
| case MagickCore::TypeFatalError: |
| return new ErrorType(message); |
| case MagickCore::TypeWarning: |
| return new WarningType(message); |
| case MagickCore::UndefinedException: |
| default: |
| return new ErrorUndefined(message); |
| case MagickCore::XServerError: |
| case MagickCore::XServerFatalError: |
| return new ErrorXServer(message); |
| case MagickCore::XServerWarning: |
| return new WarningXServer(message); |
| } |
| } |
| |
| MagickPPExport void Magick::throwExceptionExplicit( |
| const MagickCore::ExceptionType severity_,const char* reason_, |
| const char* description_) |
| { |
| // Just return if there is no reported error |
| if (severity_ == MagickCore::UndefinedException) |
| return; |
| |
| GetPPException; |
| ThrowException(exceptionInfo,severity_,reason_,description_); |
| ThrowPPException(false); |
| } |
| |
| MagickPPExport void Magick::throwException(ExceptionInfo *exception_, |
| const bool quiet_) |
| { |
| const ExceptionInfo |
| *p; |
| |
| Exception |
| *nestedException, |
| *q; |
| |
| MagickCore::ExceptionType |
| severity; |
| |
| size_t |
| index; |
| |
| std::string |
| message; |
| |
| // Just return if there is no reported error |
| if (exception_->severity == MagickCore::UndefinedException) |
| return; |
| |
| message=formatExceptionMessage(exception_); |
| nestedException=(Exception *) NULL; |
| q=(Exception *) NULL; |
| LockSemaphoreInfo(exception_->semaphore); |
| if (exception_->exceptions != (void *) NULL) |
| { |
| index=GetNumberOfElementsInLinkedList((LinkedListInfo *) |
| exception_->exceptions); |
| while(index > 0) |
| { |
| p=(const ExceptionInfo *) GetValueFromLinkedList((LinkedListInfo *) |
| exception_->exceptions,--index); |
| if ((p->severity != exception_->severity) || (LocaleCompare(p->reason, |
| exception_->reason) != 0) || (LocaleCompare(p->description, |
| exception_->description) != 0)) |
| { |
| if (nestedException == (Exception *) NULL) |
| { |
| nestedException=createException(p); |
| q=nestedException; |
| } |
| else |
| { |
| Exception |
| *r; |
| |
| r=createException(p); |
| q->nested(r); |
| q=r; |
| } |
| } |
| } |
| } |
| severity=exception_->severity; |
| UnlockSemaphoreInfo(exception_->semaphore); |
| |
| if ((quiet_) && (severity < MagickCore::ErrorException)) |
| { |
| delete nestedException; |
| return; |
| } |
| |
| DestroyExceptionInfo(exception_); |
| |
| switch (severity) |
| { |
| case MagickCore::BlobError: |
| case MagickCore::BlobFatalError: |
| throw ErrorBlob(message,nestedException); |
| case MagickCore::BlobWarning: |
| throw WarningBlob(message,nestedException); |
| case MagickCore::CacheError: |
| case MagickCore::CacheFatalError: |
| throw ErrorCache(message,nestedException); |
| case MagickCore::CacheWarning: |
| throw WarningCache(message,nestedException); |
| case MagickCore::CoderError: |
| case MagickCore::CoderFatalError: |
| throw ErrorCoder(message,nestedException); |
| case MagickCore::CoderWarning: |
| throw WarningCoder(message,nestedException); |
| case MagickCore::ConfigureError: |
| case MagickCore::ConfigureFatalError: |
| throw ErrorConfigure(message,nestedException); |
| case MagickCore::ConfigureWarning: |
| throw WarningConfigure(message,nestedException); |
| case MagickCore::CorruptImageError: |
| case MagickCore::CorruptImageFatalError: |
| throw ErrorCorruptImage(message,nestedException); |
| case MagickCore::CorruptImageWarning: |
| throw WarningCorruptImage(message,nestedException); |
| case MagickCore::DelegateError: |
| case MagickCore::DelegateFatalError: |
| throw ErrorDelegate(message,nestedException); |
| case MagickCore::DelegateWarning: |
| throw WarningDelegate(message,nestedException); |
| case MagickCore::DrawError: |
| case MagickCore::DrawFatalError: |
| throw ErrorDraw(message,nestedException); |
| case MagickCore::DrawWarning: |
| throw WarningDraw(message,nestedException); |
| case MagickCore::FileOpenError: |
| case MagickCore::FileOpenFatalError: |
| throw ErrorFileOpen(message,nestedException); |
| case MagickCore::FileOpenWarning: |
| throw WarningFileOpen(message,nestedException); |
| case MagickCore::ImageError: |
| case MagickCore::ImageFatalError: |
| throw ErrorImage(message,nestedException); |
| case MagickCore::ImageWarning: |
| throw WarningImage(message,nestedException); |
| case MagickCore::MissingDelegateError: |
| case MagickCore::MissingDelegateFatalError: |
| throw ErrorMissingDelegate(message,nestedException); |
| case MagickCore::MissingDelegateWarning: |
| throw WarningMissingDelegate(message,nestedException); |
| case MagickCore::ModuleError: |
| case MagickCore::ModuleFatalError: |
| throw ErrorModule(message,nestedException); |
| case MagickCore::ModuleWarning: |
| throw WarningModule(message,nestedException); |
| case MagickCore::MonitorError: |
| case MagickCore::MonitorFatalError: |
| throw ErrorMonitor(message,nestedException); |
| case MagickCore::MonitorWarning: |
| throw WarningMonitor(message,nestedException); |
| case MagickCore::OptionError: |
| case MagickCore::OptionFatalError: |
| throw ErrorOption(message,nestedException); |
| case MagickCore::OptionWarning: |
| throw WarningOption(message,nestedException); |
| case MagickCore::PolicyWarning: |
| throw WarningPolicy(message,nestedException); |
| case MagickCore::PolicyError: |
| case MagickCore::PolicyFatalError: |
| throw ErrorPolicy(message,nestedException); |
| case MagickCore::RegistryError: |
| case MagickCore::RegistryFatalError: |
| throw ErrorRegistry(message,nestedException); |
| case MagickCore::RegistryWarning: |
| throw WarningRegistry(message,nestedException); |
| case MagickCore::ResourceLimitError: |
| case MagickCore::ResourceLimitFatalError: |
| throw ErrorResourceLimit(message,nestedException); |
| case MagickCore::ResourceLimitWarning: |
| throw WarningResourceLimit(message,nestedException); |
| case MagickCore::StreamError: |
| case MagickCore::StreamFatalError: |
| throw ErrorStream(message,nestedException); |
| case MagickCore::StreamWarning: |
| throw WarningStream(message,nestedException); |
| case MagickCore::TypeError: |
| case MagickCore::TypeFatalError: |
| throw ErrorType(message,nestedException); |
| case MagickCore::TypeWarning: |
| throw WarningType(message,nestedException); |
| case MagickCore::UndefinedException: |
| default: |
| throw ErrorUndefined(message,nestedException); |
| case MagickCore::XServerError: |
| case MagickCore::XServerFatalError: |
| throw ErrorXServer(message,nestedException); |
| case MagickCore::XServerWarning: |
| throw WarningXServer(message,nestedException); |
| } |
| } |