29a30,31
> #include <cstring>
>
37,38c39,40
< sc_report::sc_report(sc_severity _severity, const char *_msgType,
< const char *_msg, int _verbosity, const char *_fileName,
---
> sc_report::sc_report(sc_severity _severity, const char *msg_type,
> const char *msg, int _verbosity, const char *_fileName,
40c42
< _severity(_severity), _msgType(_msgType), _msg(_msg),
---
> _severity(_severity), _msgType(msg_type), _msg(msg),
43a46,49
> if (_msgType)
> _msgType = strdup(_msgType);
> if (_msg)
> _msg = strdup(_msg);
56,57c62,65
< _msgType = r._msgType;
< _msg = r._msg;
---
> free((void *)_msgType);
> _msgType = r._msgType ? strdup(r._msgType) : nullptr;
> free((void *)_msg);
> _msg = r._msg ? strdup(r._msg) : nullptr;
67c75,79
< sc_report::~sc_report() throw() {}
---
> sc_report::~sc_report() throw()
> {
> free((void *)_msgType);
> free((void *)_msg);
> }