From 632f1504a8083bca714ca231c311bb0be302b6b8 Mon Sep 17 00:00:00 2001 From: Stefano Ceccherini Date: Wed, 17 Sep 2008 07:35:00 +0000 Subject: [PATCH] assign a token to the ServerPicture before anything else. If something fails to initialize, we can still search the picture via token git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27593 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/servers/app/ServerPicture.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/servers/app/ServerPicture.cpp b/src/servers/app/ServerPicture.cpp index ea352607dc..3548bcf272 100644 --- a/src/servers/app/ServerPicture.cpp +++ b/src/servers/app/ServerPicture.cpp @@ -774,6 +774,8 @@ ServerPicture::ServerPicture(const ServerPicture &picture) fPictures(NULL), fUsurped(NULL) { + fToken = gTokenSpace.NewToken(kPictureToken, this); + BMallocIO *mallocIO = new (std::nothrow) BMallocIO(); if (mallocIO == NULL) return; @@ -784,8 +786,6 @@ ServerPicture::ServerPicture(const ServerPicture &picture) if (mallocIO->SetSize(size) < B_OK) return; - fToken = gTokenSpace.NewToken(kPictureToken, this); - picture.fData->ReadAt(0, const_cast(mallocIO->Buffer()), size); PictureDataWriter::SetTo(fData); @@ -800,6 +800,8 @@ ServerPicture::ServerPicture(const char *fileName, const int32 &offset) fPictures(NULL), fUsurped(NULL) { + fToken = gTokenSpace.NewToken(kPictureToken, this); + fFile = new (std::nothrow) BFile(fileName, B_READ_WRITE); if (fFile == NULL) return; @@ -812,7 +814,6 @@ ServerPicture::ServerPicture(const char *fileName, const int32 &offset) } fData = offsetFile; - fToken = gTokenSpace.NewToken(kPictureToken, this); PictureDataWriter::SetTo(fData); }