28 #include <drizzled/errmsg_print.h>
29 #include <drizzled/plugin/error_message.h>
37 void sql_perror(
const char *message)
40 char errmsg[STRERROR_MAX];
43 #ifdef STRERROR_R_CHAR_P
44 errmsg_ptr= strerror_r(errno, errmsg,
sizeof(errmsg));
46 strerror_r(errno, errmsg,
sizeof(errmsg));
50 errmsg_printf(error::ERROR,
"%s: %s\n", message, errmsg_ptr);
55 void sql_perror(
const std::string &message)
57 static std::string empty;
58 sql_perror(message, empty);
62 void sql_perror(std::string message,
const std::string &extra)
65 char errmsg[STRERROR_MAX];
68 #ifdef STRERROR_R_CHAR_P
69 errmsg_ptr= strerror_r(errno, errmsg,
sizeof(errmsg));
71 strerror_r(errno, errmsg,
sizeof(errmsg));
75 if (not extra.empty())
77 if (message.at(message.size()-1) !=
' ')
85 errmsg_printf(error::ERROR,
"%s: %s\n", message.c_str(), errmsg_ptr);
88 bool errmsg_printf(error::priority_t priority,
char const *format, ...)
92 va_start(args, format);
93 rv= plugin::ErrorMessage::vprintf(priority, format, args);