[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session, for workaround see comment 25)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 Aron Budeachanged: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED Assignee|libreoffice-b...@lists.free |ba...@caesar.elte.hu |desktop.org | --- Comment #43 from Aron Budea --- Substituting for commit notification bot... This commit should fix the issue. Cherry-pick to 5.3 and 5.2 is in the works, at the same time I'd love to hear feedback from remote desktop/terminal server users. Tonight's daily builds should have the fix included. Aron Budea committed a patch related to this issue. It has been pushed to "master": https://cgit.freedesktop.org/libreoffice/core/commit/?id=bb50474225f80b8aeea49f14ad66173462026a41 tdf#100151: Dispose of window if DX device creation failed It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. device creation fails. -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session, for workaround see comment 25)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 Commit Notificationchanged: What|Removed |Added Whiteboard||target:5.4.0 -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session, for workaround see comment 25)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 --- Comment #42 from Aron Budea--- The difference in execution comes from DXRenderModule failing to find DirectX capabilities, most likely DirectX is not working in remote desktop session. The following lines cause DXRenderModule::verifyDevice( ... ) exiting early, and DX canvas failing to be created: if(FAILED(mpDirect3D9->GetDeviceCaps(nAdapter,D3DDEVTYPE_HAL,))) return false; http://opengrok.libreoffice.org/xref/core/canvas/source/directx/dx_9rm.cxx#653 The problem seems to be that in DXRenderModule::create( ... ) the child window has already been created, but apparently later isn't cleaned up properly. Proposed a patch to move Direct3D9-related code in the beginning of the function, and exit without creating the window at all in that case: https://gerrit.libreoffice.org/#/c/33413/ With the patch I'm getting no crash at the end of slideshow, or when previewing slide transitions/animations. -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session, for workaround see comment 25)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 --- Comment #41 from Aron Budea--- Some findings. Debug build throws this info (error) message: "Window( sd::ShowWindow()) with live children destroyed: class SystemChildWindow()" So what is the difference between the two executions? We're in: ::sd::Window::dispose(). Then in vcl::Window::dispose() we get to this line: xCanvasComponent->dispose(); http://opengrok.libreoffice.org/xref/core/vcl/source/window/window.cxx#162 1) In a local instance, this goes into: directx9canvaslo.dll!dxcanvas::SpriteCanvas::dispose() Line 118 C++ 2) In a remote desktop instance this goes into: vclcanvaslo.dll!vclcanvas::SpriteCanvas::dispose() Line 125 C++ After 2), only later, a couple of levels into the following call we get into dxcanvas::SpriteCanvas::dispose(): pWrapper->WindowDestroyed( this ); http://opengrok.libreoffice.org/xref/core/vcl/source/window/window.cxx#227 At this point mpRenderModule is empty in the remote desktop connection: http://opengrok.libreoffice.org/xref/core/canvas/source/directx/dx_spritecanvashelper.cxx#99 Thus DXRenderModule::disposing() is not called where it should be (I assume). In a local session this is called inside of 1)'s dxcanvas::SpriteCanvas::dispose(). -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session, for workaround see comment 25)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 Aron Budeachanged: What|Removed |Added Summary|Crash at the end of |Crash at the end of |slideshow or previews in|slideshow or previews in |Impress (in remote desktop |Impress (in remote desktop |session..) |session, for workaround see ||comment 25) -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session..)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 Commit Notificationchanged: What|Removed |Added Whiteboard|target:5.4.0|target:5.4.0 target:5.3.0.2 Julien Nabet changed: What|Removed |Added Whiteboard|target:5.4.0 target:5.3.0.2 | --- Comment #39 from Julien Nabet --- Aron: even if I cherry-picked the commit in 5.3 branch, you're right. So let's remove targets. -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session..)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 Julien Nabetchanged: What|Removed |Added Whiteboard|target:5.4.0 target:5.3.0.2 | --- Comment #39 from Julien Nabet --- Aron: even if I cherry-picked the commit in 5.3 branch, you're right. So let's remove targets. --- Comment #40 from Commit Notification --- Julien Nabet committed a patch related to this issue. It has been pushed to "libreoffice-5-3": http://cgit.freedesktop.org/libreoffice/core/commit/?id=73316bbc92b264f84c68c96460e262a5dd6e0d04=libreoffice-5-3 Related tdf#100151: use disposeAndClear for mpShowWindow (sd) It will be available in 5.3.0.2. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session..)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 Commit Notificationchanged: What|Removed |Added Whiteboard|target:5.4.0|target:5.4.0 target:5.3.0.2 -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session..)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 --- Comment #38 from Aron Budea--- Created attachment 130311 --> https://bugs.documentfoundation.org/attachment.cgi?id=130311=edit backtrace 17-01-11 I tried running a 1-slide presentation with the latest daily build. It still crashes, I'm afraid, attaching backtrace, seems very similar. Version: 5.4.0.0.alpha0+ Build ID: db4badfc971b9cc60809c3408f579bae04a77c34 CPU Threads: 4; OS Version: Windows 6.1; UI Render: GL; TinderBox: Win-x86@42, Branch:master, Time: 2017-01-10_23:25:07 Locale: hu-HU (hu_HU); Calc: CL -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session..)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 --- Comment #37 from Julien Nabet--- Raal: would it be possible you give it a try with a daily build which includes http://cgit.freedesktop.org/libreoffice/core/commit/?id=bce35b8e13b0d82ba54bf3d380f448dad0ee13bb ? -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session..)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 Commit Notificationchanged: What|Removed |Added Whiteboard||target:5.4.0 -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session..)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 --- Comment #36 from Commit Notification--- Julien Nabet committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=bce35b8e13b0d82ba54bf3d380f448dad0ee13bb Related tdf#100151: use disposeAndClear for mpShowWindow (sd) It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session..)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 --- Comment #35 from Michael Meeks--- I suspect it doesn't hugely matter wrt. .get() or not - but probably both parts of the ? operator need to have a POD type rather than being an in-line C++ class; so - it may be necessary. Without fooling around with it - hard to tell; but I see no potential dangers there. -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session..)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 --- Comment #34 from Julien Nabet--- (In reply to Michael Meeks from comment #33) ... > Looks like it doesn't match what we should be doing there. I suspect the > lifecycle of that is rather coomplicated - but can you try replacing this > with 'disposeAndClear()' to see if that helps in the > SlideshowImpl::disposing method ? > > Thanks ! I'll give it a try after my day-time job but, even if this one would fix the crash, any thought about the second point of my previous comment? ( "mpParentWindow.get()" or "mpParentWindow") -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session..)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 --- Comment #33 from Michael Meeks--- Hi Julian, Good catch this patch: commit 1c4025babd7037a3292aa530c7d45ab8d6ef6dcb vclwidget: change all vcl::window fields to be wrapped in VclPtr ... @@ -743,8 +742,7 @@ void SAL_CALL SlideshowImpl::disposing() if( mpShowWindow ) { -delete mpShowWindow; -mpShowWindow = 0; +mpShowWindow.clear(); } Looks like it doesn't match what we should be doing there. I suspect the lifecycle of that is rather coomplicated - but can you try replacing this with 'disposeAndClear()' to see if that helps in the SlideshowImpl::disposing method ? Thanks ! -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session..)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 Julien Nabetchanged: What|Removed |Added CC||michael.me...@collabora.com ||, noelgran...@gmail.com --- Comment #32 from Julien Nabet --- I noticed weird things in sd/source/ui/slideshow/slideshowimpl.cxx 1) julien@debian:~/lo/libreoffice$ grep -n mpShowWindow sd/source/ui/slideshow/slideshowimpl.cxx|grep -i clear 688:mpShowWindow.disposeAndClear(); 719:mpShowWindow.clear(); shouldn't it be always "disposeAndClear" ? 2) julien@debian:~/lo/libreoffice$ grep -n mpShowWindow sd/source/ui/slideshow/slideshowimpl.cxx|grep Create 776:mpShowWindow = VclPtr::Create( this, ((pParent == nullptr) && mpViewShell) ? mpParentWindow.get() : pParent ); 929:mpShowWindow = VclPtr::Create( this, mpParentWindow ); Should it be mpParentWindow or mpParentWindow.get()? (see http://opengrok.libreoffice.org/xref/core/sd/source/ui/slideshow/slideshowimpl.cxx) Michael/Noel: thought you might be interested in this one since could be due to some VclPtr conversion. -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 100151] Crash at the end of slideshow or previews in Impress ( in remote desktop session..)
https://bugs.documentfoundation.org/show_bug.cgi?id=100151 Cor Nouwschanged: What|Removed |Added Summary|Crash at the end of |Crash at the end of |slideshow or previews in|slideshow or previews in |Impress |Impress (in remote desktop ||session..) -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs