X-Git-Url: https://git.decadent.org.uk/gitweb/?p=ion3.git;a=blobdiff_plain;f=ioncore%2Fmplexpholder.c;fp=ioncore%2Fmplexpholder.c;h=2c8461eeade2e9d93d001d973b159ee9ec81e521;hp=7a75486ef495ecc618857666f8cba84cacfd00e0;hb=0c733f17d41080cd8240eecc5251d08a1776cdc5;hpb=3b8366cb81e35b88b125cfcecbef2c927b2618b6 diff --git a/ioncore/mplexpholder.c b/ioncore/mplexpholder.c index 7a75486..2c8461e 100644 --- a/ioncore/mplexpholder.c +++ b/ioncore/mplexpholder.c @@ -1,7 +1,7 @@ /* * ion/ioncore/mplexpholder.c * - * Copyright (c) Tuomo Valkonen 2005-2008. + * Copyright (c) Tuomo Valkonen 2005-2009. * * See the included file LICENSE for details. */ @@ -264,7 +264,7 @@ static WRegion *mplexpholder_attach_recreate(WMPlexPHolder *ph, int flags, WRegionAttachData data2; WFramedPHolder *fph; WPHolder *root; - WRegion *frame; + WRegion *res; RP rp; rp.ph_head=get_head(ph); @@ -285,15 +285,17 @@ static WRegion *mplexpholder_attach_recreate(WMPlexPHolder *ph, int flags, data2.u.n.fn=recreate_handler; data2.u.n.param=&rp; - frame=pholder_do_attach(fph->cont, flags, &data2); + res=pholder_do_attach(fph->cont, flags, &data2); - if(frame!=NULL){ + if(res!=NULL){ rp.ph_head->recreate_pholder=NULL; /* It might be in use in attach chain! So defer. */ mainloop_defer_destroy((Obj*)fph); } - return rp.reg_ret; + return (flags&PHOLDER_ATTACH_RETURN_CREATEROOT + ? (WRegion*)res + : rp.reg_ret); }