Hi, the problem wit Ronie’s fix is that (as he says) you are copying another time the surface, before passing it to the VM (who makes yet-another-copy) so this is not optimal… and you can see it when running the Tiger demo: there are a lot of pauses. So I would prefer the other approach he suggests:
Form subclass: #AthensCairoSurfaceForm instanceVariableNames: 'surface' classVariableNames: '' package: 'Athens-Cairo' AthensCairoSurfaceForm>>surface ^ surface AthensCairoSurfaceForm>>surface: anObject surface := anObject AthensCairoSurface>>asForm "create a form and copy an image data there" self checkSession. self flush. ^ (AthensCairoSurfaceForm extent: (self width@self height) depth: 32 bits: id) surface: self; yourself that seems to work. Can you try and see? Esteban > On 24 Feb 2017, at 15:47, stepharong <stephar...@free.fr> wrote: > > Hi alex > > can you try the fix of ronie and let us know if it makes roassal more stable? > > Stef > >> Dear Alexander, >> >> Sine the new FFI of Pharo, using Athens has become unreliable. This is a >> pity, but fixing this is not trivial at all (we have been trying for years). >> >> What exactly are you doing with Athens? >> >> Alexandre >> >> >>> On Feb 22, 2017, at 12:55 AM, Alexander Samoylovich <samoylov...@gmail.com> >>> wrote: >>> >>> Hello >>> >>> I am writing graphic demo programs using Athens on Mac Sierra. >>> Time by time Pharo VM crashes. Programs not using Athens work reliably. >>> I believe the behavior is reproducible. >>> How should I report a bug? >>> >>> Alex >> > > > -- > Using Opera's mail client: http://www.opera.com/mail/ >