Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #include "runtime_error.h"
00018 #include "os_specific.h"
00019 #include <cstdarg>
00020 #include <cstdlib>
00021 #include <cstdio>
00022 using namespace std;
00023
00024 RuntimeError::RuntimeError(const char* fmt, ...) :
00025 std::exception()
00026 {
00027 char* auxPtr = NULL;
00028 va_list arg_list;
00029 va_start(arg_list, fmt);
00030 int b = vasprintf(&auxPtr, fmt, arg_list);
00031 va_end(arg_list);
00032 if (b > 0)
00033 _errorMsg = auxPtr;
00034 else
00035 _errorMsg = "";
00036 free(auxPtr);
00037 }
00038
00039 RuntimeError::~RuntimeError() throw()
00040 {
00041 }