vcl/unx/generic/gdi/salbmp.cxx | 3 +++ vcl/unx/generic/window/salframe.cxx | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-)
New commits: commit 29ea782d778239c7c8d97350e4a69efdbb77e19c Author: Luboš Luňák <l.lu...@collabora.com> AuthorDate: Mon Dec 2 17:17:40 2019 +0100 Commit: Luboš Luňák <l.lu...@collabora.com> CommitDate: Tue Dec 3 10:43:57 2019 +0100 avoid invalid static_cast when mixing X11 and OpenGL bitmaps This can happen because lcl_SelectAppIconPixmap() temporarily disables OpenGL, but in case an icon to be loaded is already cached(?), the bitmap variant may be OpenGL. Happens when launching LO in OpenGL mode with the X11 gen backend, and then selecting Writer in the start screen. Change-Id: I65110dee79769c430eaa8a2cf3dc11119ab02520 Reviewed-on: https://gerrit.libreoffice.org/84246 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lu...@collabora.com> diff --git a/vcl/unx/generic/gdi/salbmp.cxx b/vcl/unx/generic/gdi/salbmp.cxx index b34b1a80e0e0..20760a452559 100644 --- a/vcl/unx/generic/gdi/salbmp.cxx +++ b/vcl/unx/generic/gdi/salbmp.cxx @@ -649,6 +649,9 @@ bool X11SalBitmap::Create( const SalBitmap& rSSalBmp ) { Destroy(); + if( dynamic_cast<const X11SalBitmap*>( &rSSalBmp ) == nullptr ) + return false; + const X11SalBitmap& rSalBmp = static_cast<const X11SalBitmap&>( rSSalBmp ); if( rSalBmp.mpDIB ) diff --git a/vcl/unx/generic/window/salframe.cxx b/vcl/unx/generic/window/salframe.cxx index 65da95ac09bf..6de28b224a87 100644 --- a/vcl/unx/generic/window/salframe.cxx +++ b/vcl/unx/generic/window/salframe.cxx @@ -322,7 +322,7 @@ static bool lcl_SelectAppIconPixmap( SalDisplay const *pDisplay, SalX11Screen nX X11SalBitmap *pBitmap = dynamic_cast < X11SalBitmap * > (aIcon.ImplGetBitmapSalBitmap().get()); - if (!pBitmap) // FIXME: opengl + if (!pBitmap) // FIXME: opengl , TODO SKIA return false; icon_pixmap = XCreatePixmap( pDisplay->GetDisplay(), _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits