mariadb/cxx/exception.cpp
Yoni Fogel 10c82d9f0c DbEnv.err
DbEnv.set_errfile

toku_db_env_err now writes to the file from set_errfile
toku_db_env_err calls toku_db_env_err_vararg

Fixed DbException.set_env, and callers of it.
Modified test1 to not use exceptions, since the test tried to use return codes.

Closes #214
Addresses #197
Addresses #215

git-svn-id: file:///svn/tokudb@1303 c7de825b-a66e-492c-adef-691d508d4ae1
2007-12-21 05:57:33 +00:00

43 lines
593 B
C++

#include <db.h>
#include <db_cxx.h>
DbException::~DbException() throw()
{
if (the_what!=0) {
delete [] the_what;
}
}
DbException::DbException(int err)
: the_err(err),
the_env(0)
{
FillTheWhat();
}
void DbException::FillTheWhat(void)
{
if (the_err!=0) {
the_what = strdup(db_strerror(the_err));
}
}
int DbException::get_errno() const
{
return the_err;
}
const char *DbException::what() const throw()
{
return the_what;
}
DbEnv *DbException::get_env() const
{
return the_env;
}
void DbException::set_env(DbEnv *new_env)
{
the_env = new_env;
}