https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR60-CPP.+Exception+objects+must+be+nothrow+copy+constructible
[Version] 0.5.31
[Issue Type] Revise
Change-Id: I31225a025723dd2581f1c941012999143a9f06ee
*/
class CAudioError : public std::exception {
public:
*/
class CAudioError : public std::exception {
public:
enum class EError : unsigned int {
ERROR_NONE,
enum class EError : unsigned int {
ERROR_NONE,
- /* Constants Definition */
static constexpr auto MSG_LENGTH = 512;
static constexpr auto MSG_LENGTH = 512;
-
- /* Constructor & Destructor */
CAudioError(EError err, const char* msg, const char* file, const char* func, int line);
CAudioError(EError err, const char* msg, const char* file, const char* func, int line);
- ~CAudioError() = default;
-
- const char *what() const noexcept override {
- return __mFullMsg.c_str();
- }
+ const char *what() const noexcept override;
const char* getErrorMsg() const noexcept;
const char* getErrorMsg() const noexcept;
- const EError getError() const noexcept;
+ EError getError() const noexcept;
private:
static const char* __convertErrorToString(EError err) noexcept;
EError __mError;
private:
static const char* __convertErrorToString(EError err) noexcept;
EError __mError;
- std::string __mMsg;
- std::string __mFullMsg;
-
+ std::runtime_error __mFullMsg;
Name: capi-media-audio-io
Summary: An Audio Input & Audio Output library in Tizen Native API
Name: capi-media-audio-io
Summary: An Audio Input & Audio Output library in Tizen Native API
Release: 0
Group: Multimedia/API
License: Apache-2.0
Release: 0
Group: Multimedia/API
License: Apache-2.0
*/
CAudioError::CAudioError(EError err, const char* msg, const char* file, const char* func, int line) :
__mError(err),
*/
CAudioError::CAudioError(EError err, const char* msg, const char* file, const char* func, int line) :
__mError(err),
char __mErrorMsg[MSG_LENGTH] = { 0, };
char __mErrorMsg[MSG_LENGTH] = { 0, };
snprintf(__mErrorMsg, MSG_LENGTH, "[%s|%s|%s(%d)|"
COLOR_CYAN "%s" COLOR_END "]",
__convertErrorToString(__mError), file, func, line, msg);
snprintf(__mErrorMsg, MSG_LENGTH, "[%s|%s|%s(%d)|"
COLOR_CYAN "%s" COLOR_END "]",
__convertErrorToString(__mError), file, func, line, msg);
- __mFullMsg = __mErrorMsg;
+ __mFullMsg = std::runtime_error{__mErrorMsg};
+}
+
+const char *CAudioError::what() const noexcept {
+ return __mFullMsg.what();
}
const char* CAudioError::getErrorMsg() const noexcept {
return what();
}
}
const char* CAudioError::getErrorMsg() const noexcept {
return what();
}
-const CAudioError::EError CAudioError::getError() const noexcept {
+CAudioError::EError CAudioError::getError() const noexcept {
case EError::ERROR_POLICY_DUPLICATED: return COLOR_RED "ERROR_POLICY_DUPLICATED" COLOR_END;
//LCOV_EXCL_STOP
}
case EError::ERROR_POLICY_DUPLICATED: return COLOR_RED "ERROR_POLICY_DUPLICATED" COLOR_END;
//LCOV_EXCL_STOP
}
+}
\ No newline at end of file