From 277571370c354c44d83647a854fdfa5e2bffe820 Mon Sep 17 00:00:00 2001 From: Stefano Ceccherini Date: Mon, 13 Aug 2007 13:09:59 +0000 Subject: [PATCH] AppendToPicture() now sets the correct picture to be returned from EndPicture() (tests have confirmed this). Although appending to a picture doens't work yet for some reason... git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21923 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kits/interface/Picture.cpp | 10 +++++----- src/kits/interface/View.cpp | 3 ++- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/kits/interface/Picture.cpp b/src/kits/interface/Picture.cpp index 5a29d6f4c6..834f9f07b3 100644 --- a/src/kits/interface/Picture.cpp +++ b/src/kits/interface/Picture.cpp @@ -488,13 +488,13 @@ BPicture::usurp(BPicture *lameDuck) link.StartMessage(AS_DELETE_PICTURE); link.Attach(token); link.Flush(); + + delete extent; + + // Reinitializes the BPicture + init_data(); } - delete extent; - - // Reinitializes the BPicture - init_data(); - // Do the usurping usurped = lameDuck; } diff --git a/src/kits/interface/View.cpp b/src/kits/interface/View.cpp index de14811ea2..60a6107d67 100644 --- a/src/kits/interface/View.cpp +++ b/src/kits/interface/View.cpp @@ -3114,8 +3114,9 @@ BView::AppendToPicture(BPicture *picture) if (token == -1) { BeginPicture(picture); } else { - picture->usurped = cpicture; picture->set_token(-1); + picture->usurp(cpicture); + cpicture = picture; fOwner->fLink->StartMessage(AS_LAYER_APPEND_TO_PICTURE); fOwner->fLink->Attach(token); }