/*------------------------------------------------------------------------------ * Copyright (C) 2003-2006 Ben van Klinken and the CLucene Team * * Distributable under the terms of either the Apache License (Version 2.0) or * the GNU Lesser General Public License, as specified in the COPYING file. ------------------------------------------------------------------------------*/ #include "CLucene/StdHeader.h" CL_NS_USE(util) #ifdef _LUCENE_DISABLE_EXCEPTIONS #ifdef _LUCENE_PRAGMA_WARNINGS #pragma message ("==================Lucene exceptions are disabled==================") #else #warning "==================Lucene exceptions are disabled==================" #endif #else CLuceneError::CLuceneError(int num, const char* str, bool ownstr) { error_number = num; _awhat=STRDUP_AtoA(str); _twhat=NULL; if ( ownstr ) _CLDELETE_CaARRAY(str); } CLuceneError::CLuceneError(const CLuceneError& clone) { this->error_number = clone.error_number; this->_awhat = NULL; this->_twhat = NULL; if ( clone._awhat != NULL ) this->_awhat = STRDUP_AtoA(clone._awhat); if ( clone._twhat != NULL ) this->_twhat = STRDUP_TtoT(clone._twhat); } CLuceneError::~CLuceneError() throw(){ _CLDELETE_CARRAY(_twhat); _CLDELETE_CaARRAY(_awhat); } char* CLuceneError::what(){ #ifdef _ASCII if ( _twhat != NULL ) return _twhat; #endif if ( _awhat == NULL ) _awhat = STRDUP_TtoA(_twhat); return _awhat; } TCHAR* CLuceneError::twhat(){ #ifdef _ASCII if ( _awhat != NULL ) return _awhat; #endif if ( _twhat == NULL ) _twhat = STRDUP_AtoT(_awhat); return _twhat; } #ifndef _ASCII CLuceneError::CLuceneError(int num, const TCHAR* str, bool ownstr) { error_number = 0; _awhat=NULL; _twhat=STRDUP_TtoT(str); if ( ownstr ) _CLDELETE_CARRAY(str); } #endif #endif //_LUCENE_DISABLE_EXCEPTIONS