On Thursday 02 May 2002 10:44 am, Juergen Vigna wrote:
> On 30-Apr-2002 Claus Hindsgaul wrote:
> > Sorry, no luck with the new patch
>
> Ok thanks for the file I can recreate the crash with it and your
> explanation. I fixed this now hopefully but there is IMO a greater problem
> to fix in GCItem.
>
> (this is for Angus)
> IMO that this function is wrong:
>
> void GCacheItem::setStatus(ImageStatus new_status)
> {
> [snip]
>                         // Use of current_view is very, very Evil!!
>                         current_view->updateInset(inset, false);
> [snip]
> }
>
> IMO we shouldn't call a updateInset() here we should set a flag in the
> owning inset and let the inset decide when to call the updateInset call.
> Why did the above crash, because inside the inset draw() function we
> called ::startLoading which called ::setStatus() which called an update
> and which called a ::drawInset() again. This is somehow wrong IMO.

This has to be done sometime anyhow as "Use of current_view is very, very 
Evil!!"

A.

Reply via email to