diff --git a/Sources/Plasma/Apps/plClient/winmain.cpp b/Sources/Plasma/Apps/plClient/winmain.cpp index cb179d5b..4d26acf8 100644 --- a/Sources/Plasma/Apps/plClient/winmain.cpp +++ b/Sources/Plasma/Apps/plClient/winmain.cpp @@ -872,7 +872,7 @@ static void LoadUserPass (LoginDialogParam *pLoginParam) ZeroMemory(cryptKey, sizeof(cryptKey)); GetCryptKey(cryptKey, arrsize(cryptKey)); - char* temp; + plString temp; pLoginParam->remember = false; pLoginParam->username[0] = '\0'; @@ -891,12 +891,11 @@ static void LoadUserPass (LoginDialogParam *pLoginParam) if (memcmp(cryptKey, savedKey, sizeof(savedKey)) == 0) { - temp = stream->ReadSafeString(); + temp = stream->ReadSafeString_TEMP(); - if (temp) + if (!temp.IsEmpty()) { - StrCopy(pLoginParam->username, temp, kMaxAccountNameLength); - delete[] temp; + StrCopy(pLoginParam->username, temp.c_str(), kMaxAccountNameLength); } pLoginParam->remember = stream->ReadBool(); diff --git a/Sources/Plasma/PubUtilLib/plMessage/plAvatarMsg.cpp b/Sources/Plasma/PubUtilLib/plMessage/plAvatarMsg.cpp index a6ba9134..0939486b 100644 --- a/Sources/Plasma/PubUtilLib/plMessage/plAvatarMsg.cpp +++ b/Sources/Plasma/PubUtilLib/plMessage/plAvatarMsg.cpp @@ -236,7 +236,7 @@ void plAvSeekMsg::Read(hsStream *stream, hsResMgr *mgr) fDuration = stream->ReadLEScalar(); fSmartSeek = stream->ReadBool(); - fAnimName = stream->ReadSafeString(); + fAnimName = stream->ReadSafeString_TEMP(); fAlignType = static_cast(stream->ReadLE16()); fNoSeek = stream->ReadBool(); fFlags = stream->ReadByte(); diff --git a/Sources/Plasma/PubUtilLib/plMessage/plLinkToAgeMsg.cpp b/Sources/Plasma/PubUtilLib/plMessage/plLinkToAgeMsg.cpp index 13fecb4b..ad40cd69 100644 --- a/Sources/Plasma/PubUtilLib/plMessage/plLinkToAgeMsg.cpp +++ b/Sources/Plasma/PubUtilLib/plMessage/plLinkToAgeMsg.cpp @@ -53,20 +53,15 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com // // plLinkToAgeMsg -plLinkToAgeMsg::plLinkToAgeMsg() : fLinkInAnimName(nil), fFlags(0) +plLinkToAgeMsg::plLinkToAgeMsg() : fFlags(0) { } -plLinkToAgeMsg::plLinkToAgeMsg( const plAgeLinkStruct * link ) : fLinkInAnimName(nil), fFlags(0) +plLinkToAgeMsg::plLinkToAgeMsg( const plAgeLinkStruct * link ) : fFlags(0) { fAgeLink.CopyFrom( link ); } -plLinkToAgeMsg::~plLinkToAgeMsg() -{ - delete [] fLinkInAnimName; -} - void plLinkToAgeMsg::PlayLinkSfx(bool linkIn, bool linkOut) { if (linkIn) @@ -84,7 +79,7 @@ void plLinkToAgeMsg::Read(hsStream* stream, hsResMgr* mgr) plMessage::IMsgRead( stream, mgr ); fFlags = stream->ReadByte(); fAgeLink.Read( stream, mgr ); - fLinkInAnimName = stream->ReadSafeString(); + fLinkInAnimName = stream->ReadSafeString_TEMP(); } void plLinkToAgeMsg::Write(hsStream* stream, hsResMgr* mgr) @@ -111,7 +106,7 @@ void plLinkToAgeMsg::ReadVersion(hsStream* s, hsResMgr* mgr) if ( contentFlags.IsBitSet( kLinkToAgeAgeLinkStruct ) ) fAgeLink.Read( s, mgr ); if ( contentFlags.IsBitSet( kLinkToAgeLinkAnimName ) ) - fLinkInAnimName = s->ReadSafeString(); + fLinkInAnimName = s->ReadSafeString_TEMP(); } void plLinkToAgeMsg::WriteVersion(hsStream* s, hsResMgr* mgr) diff --git a/Sources/Plasma/PubUtilLib/plMessage/plLinkToAgeMsg.h b/Sources/Plasma/PubUtilLib/plMessage/plLinkToAgeMsg.h index 13592be6..625f5ca5 100644 --- a/Sources/Plasma/PubUtilLib/plMessage/plLinkToAgeMsg.h +++ b/Sources/Plasma/PubUtilLib/plMessage/plLinkToAgeMsg.h @@ -66,12 +66,11 @@ class plLinkToAgeMsg : public plMessage uint8_t fFlags; plAgeLinkStruct fAgeLink; - char* fLinkInAnimName; + plString fLinkInAnimName; public: plLinkToAgeMsg(); plLinkToAgeMsg( const plAgeLinkStruct * link ); - virtual ~plLinkToAgeMsg(); CLASSNAME_REGISTER( plLinkToAgeMsg ); GETINTERFACE_ANY( plLinkToAgeMsg, plMessage ); @@ -83,8 +82,8 @@ public: bool PlayLinkInSfx() const { return (fFlags & kMuteLinkInSfx) == 0; } bool PlayLinkOutSfx() const { return (fFlags & kMuteLinkOutSfx) == 0; } - const char * GetLinkInAnimName() { return fLinkInAnimName; } - void SetLinkInAnimName(const char* name) { delete [] fLinkInAnimName; fLinkInAnimName = hsStrcpy(name); } + plString GetLinkInAnimName() { return fLinkInAnimName; } + void SetLinkInAnimName(const plString& name) { fLinkInAnimName = name; } void Read(hsStream* stream, hsResMgr* mgr); void Write(hsStream* stream, hsResMgr* mgr);