#include "precomp_wasabi_bfc.h" #include "playstring.h" #define USE_TABLE Playstring::Playstring(const wchar_t *_val) { val = NULL; setValue(_val); } Playstring::Playstring(const Playstring &ps) { val = NULL; setValue(ps.getValue()); } Playstring::~Playstring() { setValue(NULL); } void Playstring::setValue(const wchar_t *newval) { _setValue(newval, 0); } void Playstring::_setValue(const wchar_t *newval, int tablenum) { #ifdef USE_TABLE #ifdef WASABI_COMPILE_METADB if (val != NULL) WASABI_API_METADB->metadb_releasePlaystring(val, tablenum); #else FREE((void*)val); #endif #else FREE((void*)val); #endif val = NULL; if (newval != NULL /*&& *newval != 0*/) { #ifdef USE_TABLE #ifdef WASABI_COMPILE_METADB val = WASABI_API_METADB->metadb_dupPlaystring(newval, tablenum); #else val = WCSDUP(newval); #endif #else val = STRDUP(newval); #endif } } Playstring& Playstring::operator =(const Playstring &ps) { if (this != &ps) { setValue(ps.getValue()); } return *this; }