<div dir="ltr">Hi,<div><br></div><div>Complete app here</div><div><a href="https://github.com/tace/jolla2gether.git">https://github.com/tace/jolla2gether.git</a><br></div><div>I created a branch "<b>canvas_crash</b>" for you. The canvas code is in <a href="https://github.com/tace/jolla2gether/blob/canvas_crash/qml/components/ExternalLinkDialog.qml">https://github.com/tace/jolla2gether/blob/canvas_crash/qml/components/ExternalLinkDialog.qml</a>.</div>
<div><br></div><div>To reproduce the problem.</div><div>1. Start app and select "Questions" from pull menu</div><div>2. Open any question page having picture. E.g. put to search criteria (from pull menu) "summer" and you will see this question <a href="https://together.jolla.com/question/44887/high-contrast-ambiences-summer-ready/">https://together.jolla.com/question/44887/high-contrast-ambiences-summer-ready/</a> which has some pics.</div>
<div>3. Click a picture and you are on the Dialog page where the Canvas is.</div><div>4. Now swipe right i.e. cancel the dialog and then click the picture again to enter Dialog page again. Repeat this until app crashes.</div>
<div><br></div><div>Br</div><div>-Samuli</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-08-14 9:53 GMT+03:00 Gunnar Sletta <span dir="ltr"><<a href="mailto:gunnar.sletta@jolla.com" target="_blank">gunnar.sletta@jolla.com</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
I'm hoping this will already be fixed in update 9 by the cleanup improvements I did to the canvas implementation a few weeks ago, but just to be on the safe side, I'd like to test it. Is there an example or app I could try to verify that? (I'd prefer to get a complete example rather than recreating it based on the posted code segment to ensure that it is covering the right cases)<br>

<br>
cheers,<br>
Gunnar<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
On 13 Aug 2014, at 21:39, Samuli Silvius <<a href="mailto:samuli.silvius@gmail.com">samuli.silvius@gmail.com</a>> wrote:<br>
<br>
> I tried FramebufferObject and now app crashes immediately when opening that dialog page, right after Canvas's onPaint is executed (I have console.log on last line of onPaint()).<br>
><br>
><br>
> [W] QWaylandGLContext::makeCurrent:100 - QEGLPlatformContext::makeCurrent: eglError: 3002, this: 0x71661d28<br>
><br>
><br>
> [W] GLAcquireContext::GLAcquireContext:80 - Can't make current GL context<br>
><br>
> Remote application crashed: Process killed by signal<br>
><br>
><br>
> 2014-08-13 22:27 GMT+03:00 Kimmo Lindholm <<a href="mailto:Kimmo.Lindholm@eke.fi">Kimmo.Lindholm@eke.fi</a>>:<br>
> ok.<br>
><br>
><br>
><br>
> I have not used renderStrategy at all in paint,<br>
><br>
> but renderTarget: Canvas.FramebufferObject<br>
><br>
><br>
><br>
> I have also dialogs there, and only way I got it broken, is that vkb case.<br>
><br>
><br>
><br>
> -kimmo<br>
><br>
><br>
><br>
> From: <a href="mailto:devel-bounces@lists.sailfishos.org">devel-bounces@lists.sailfishos.org</a> [mailto:<a href="mailto:devel-bounces@lists.sailfishos.org">devel-bounces@lists.sailfishos.org</a>] On Behalf Of Samuli Silvius<br>

> Sent: Wednesday, August 13, 2014 10:20 PM<br>
><br>
><br>
> To: Sailfish OS Developers<br>
> Subject: Re: [SailfishDevel] app crashed when using Canvas in Dialog page<br>
><br>
><br>
><br>
> No vkb used on that page. Only couple of TextSwitch:es<br>
><br>
><br>
><br>
> -Samuli<br>
><br>
><br>
><br>
> 2014-08-13 22:15 GMT+03:00 Kimmo Lindholm <<a href="mailto:Kimmo.Lindholm@eke.fi">Kimmo.Lindholm@eke.fi</a>>:<br>
><br>
> Do you have virtual keyboard visible when closing dialog?<br>
><br>
><br>
><br>
> <a href="https://together.jolla.com/question/44780/closing-dialog-with-vkb-active-breaks-canvas-on-returning-page/" target="_blank">https://together.jolla.com/question/44780/closing-dialog-with-vkb-active-breaks-canvas-on-returning-page/</a><br>

><br>
><br>
><br>
> -kimmo<br>
><br>
><br>
><br>
> From: <a href="mailto:devel-bounces@lists.sailfishos.org">devel-bounces@lists.sailfishos.org</a> [mailto:<a href="mailto:devel-bounces@lists.sailfishos.org">devel-bounces@lists.sailfishos.org</a>] On Behalf Of Samuli Silvius<br>

> Sent: Wednesday, August 13, 2014 10:07 PM<br>
> To: Sailfish OS Developers<br>
> Subject: Re: [SailfishDevel] app crashed when using Canvas in Dialog page<br>
><br>
><br>
><br>
> Hi,<br>
><br>
><br>
><br>
> Sdk produces this dump, cannot really figure out the reason? Or what backtrace you mean?<br>
><br>
><br>
><br>
> -Samuli<br>
><br>
><br>
><br>
> 2014-08-13 21:50 GMT+03:00 Andrey Kozhevnikov <<a href="mailto:coderusinbox@gmail.com">coderusinbox@gmail.com</a>>:<br>
><br>
> try to get backtrace and check what exactly is the reason of crash.<br>
><br>
> 14.08.2014 00:49, Samuli Silvius пишет:<br>
><br>
> Hi,<br>
><br>
><br>
><br>
> I have Canvas in Silica Dialog page but app crashes when leaving dialog page both with accept or cancel swipe. It does not crash always just quite often.<br>
><br>
><br>
><br>
> the code:<br>
><br>
>         Canvas {<br>
>             id: imageCanvas<br>
>             visible: isImageUrl<br>
>             width: imgLoader.sourceSize.width<br>
>             height: imgLoader.sourceSize.height<br>
>             renderStrategy: Canvas.Immediate<br>
>             onPaint: {<br>
>                 var ctx = getContext("2d")<br>
>                 ctx.drawImage(imgLoader, 0, 0)<br>
>             }<br>
>         }<br>
>         Image {<br>
>             id: imgLoader<br>
>             visible: false<br>
>             source: isImageUrl ? url : ""<br>
>         }<br>
> The idea is to save image to the gallery in onAccepted if user has selected that option as Canvas has save method which can be used to save image to a file.<br>
><br>
><br>
><br>
> And it works fine, but causing app to crash sometimes when leaving Dialog page with cancel swipe. SDK outputs a long crash dump.<br>
><br>
><br>
><br>
> -Samuli<br>
><br>
><br>
><br>
> _______________________________________________<br>
> SailfishOS.org Devel mailing list<br>
> To unsubscribe, please send a mail to <a href="mailto:devel-unsubscribe@lists.sailfishos.org">devel-unsubscribe@lists.sailfishos.org</a><br>
><br>
><br>
><br>
> _______________________________________________<br>
> SailfishOS.org Devel mailing list<br>
> To unsubscribe, please send a mail to <a href="mailto:devel-unsubscribe@lists.sailfishos.org">devel-unsubscribe@lists.sailfishos.org</a><br>
><br>
><br>
><br>
><br>
> _______________________________________________<br>
> SailfishOS.org Devel mailing list<br>
> To unsubscribe, please send a mail to <a href="mailto:devel-unsubscribe@lists.sailfishos.org">devel-unsubscribe@lists.sailfishos.org</a><br>
><br>
><br>
><br>
><br>
> _______________________________________________<br>
> SailfishOS.org Devel mailing list<br>
> To unsubscribe, please send a mail to <a href="mailto:devel-unsubscribe@lists.sailfishos.org">devel-unsubscribe@lists.sailfishos.org</a><br>
><br>
> _______________________________________________<br>
> SailfishOS.org Devel mailing list<br>
> To unsubscribe, please send a mail to <a href="mailto:devel-unsubscribe@lists.sailfishos.org">devel-unsubscribe@lists.sailfishos.org</a><br>
<br>
_______________________________________________<br>
SailfishOS.org Devel mailing list<br>
To unsubscribe, please send a mail to <a href="mailto:devel-unsubscribe@lists.sailfishos.org">devel-unsubscribe@lists.sailfishos.org</a></div></div></blockquote></div><br></div>