Hi Nicolai,

Thanks for the explanation!

Peter said that his fix works for Windows. Why would this fix only work for 
Windows? And what can we do for other platforms?

Cheers,
Doru


> On Dec 21, 2016, at 8:48 AM, Nicolai Hess <[email protected]> wrote:
> 
> 
> 
> Am 21.12.2016 8:10 vorm. schrieb "Alexandre Bergel" <[email protected]>:
> I had plenty of elements in my Roassal visualization, and on some point it 
> just crashed.
> I have the impression that having many elements and / or animations (as in 
> the case of Johan Fabry) triggers the crash.
> 
> 
> One problem, the one peter (partly) fixed, is n issue with bitblt, Cairo (as 
> a surface plugin) and garbage collection.
> Bitblt my call the surface plugin to request some information about the Form.
> NB-based ffi for Cairo just called gen. asm code. But with UFFI, we now 
> callback to Smalltalk code, which may trigger a GC.
> So every time bitblt, makes a call to the surface plugin (Cairo) and this 
> callback allocates a new ST-Object, the GC may run and moves(!)the objects, 
> to which bitblt still holds a reference.
> Accessing this objects in bitblt, after the callback returns (may) result in 
> a segfault.
> Depending on the concrete bltoperation, the object memory layout, the size(!) 
> of the initial Cairo surface. 
> With peters fix/hack, the code does not crash but it still may access and 
> operates on moved objects.
> Pining the objects may help, but you need to know where in the (vm image) 
> code a form is used for drawing, and if it is a real form or external data 
> managed by the surface plugin.
> And of course, when to "unpin" the object.
> 
> A saver way would be, to just disable any GC during the executing of the 
> callback, if it was called by a plugin (here:bitblt)
> 
> 
> 
> Alexandre
> 
> 
> > On Dec 20, 2016, at 9:12 AM, Stephane Ducasse <[email protected]> 
> > wrote:
> >
> > So what was your crash problem?
> >
> >
> > On Tue, Dec 20, 2016 at 8:43 AM, Alexandre Bergel <[email protected]> 
> > wrote:
> > > so did it work?
> > > Is there something that we should do?
> >
> > I had no problem, but as Henrik and Peter said, the problem is likely to be 
> > more complex
> >
> > Alexandre
> >
> >
> > >
> > > On Fri, Dec 16, 2016 at 5:06 PM, Alexandre Bergel 
> > > <[email protected]> wrote:
> > > Okay, trying…
> > >
> > > Alexandre
> > >
> > >
> > > > On Dec 16, 2016, at 4:40 PM, Aliaksei Syrel <[email protected]> 
> > > > wrote:
> > > >
> > > > According to crash.dmp TRMorph>drawOn: draws an image using 
> > > > FormCanvas>>#image:at:sourceRect:rule:  at a coordinate represented by 
> > > > a Float point.
> > > > Try to round it to integer point.
> > > >
> > > > Cheers,
> > > > Alex
> > > >
> > > > On 16 December 2016 at 16:34, Alexandre Bergel 
> > > > <[email protected]> wrote:
> > > > Hi!
> > > >
> > > > Vincent and I are experiencing many crashes from GrafPort>copyBits. It 
> > > > crashes every couple of minutes.
> > > >
> > > > I know that not much can be done so far. Stability is my biggest 
> > > > concern with Pharo :-(
> > > > I use the latest VM.
> > > >
> > > > Cheers,
> > > > Alexandre
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > --
> > > > _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> > > > Alexandre Bergel  http://www.bergel.eu
> > > > ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
> > > >
> > > >
> > > >
> > > >
> > > > _______________________________________________
> > > > Moose-dev mailing list
> > > > [email protected]
> > > > https://www.list.inf.unibe.ch/listinfo/moose-dev
> > > >
> > > >
> > >
> > > --
> > > _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> > > Alexandre Bergel  http://www.bergel.eu
> > > ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
> > >
> > >
> > >
> > >
> > >
> >
> > --
> > _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> > Alexandre Bergel  http://www.bergel.eu
> > ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
> >
> >
> >
> >
> >
> 
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
> 
> 
> 
> 
> 

--
www.tudorgirba.com
www.feenk.com

"Quality cannot be an afterthought."


Reply via email to