include/vcl/filter/PDFiumLibrary.hxx | 2 ++ vcl/source/filter/ipdf/pdfread.cxx | 3 +-- vcl/source/pdf/PDFiumLibrary.cxx | 2 ++ vcl/unx/gtk3/gtk3gtkinst.cxx | 10 ++++++++++ 4 files changed, 15 insertions(+), 2 deletions(-)
New commits: commit bfd096858005aa07121c218845af15fbefe18e1e Author: Caolán McNamara <[email protected]> AuthorDate: Wed Oct 21 20:58:27 2020 +0100 Commit: Caolán McNamara <[email protected]> CommitDate: Thu Oct 22 09:52:25 2020 +0200 add some SolarMutexGuards for IME Change-Id: I1bd2e3c34e400b597dec1b9b3933b7dc85d2b78f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104644 Tested-by: Jenkins Reviewed-by: Caolán McNamara <[email protected]> diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx index f42b767bf843..6448e3733256 100644 --- a/vcl/unx/gtk3/gtk3gtkinst.cxx +++ b/vcl/unx/gtk3/gtk3gtkinst.cxx @@ -13770,6 +13770,8 @@ public: { IMHandler* pThis = static_cast<IMHandler*>(im_handler); + SolarMutexGuard aGuard; + // at least editeng expects to have seen a start before accepting a commit pThis->StartExtTextInput(); @@ -13789,6 +13791,8 @@ public: { IMHandler* pThis = static_cast<IMHandler*>(im_handler); + SolarMutexGuard aGuard; + sal_Int32 nCursorPos(0); sal_uInt8 nCursorFlags(0); std::vector<ExtTextInputAttr> aInputFlags; @@ -13812,6 +13816,8 @@ public: { IMHandler* pThis = static_cast<IMHandler*>(im_handler); + SolarMutexGuard aGuard; + OUString sSurroundingText; int nCursorIndex = pThis->m_pArea->im_context_get_surrounding(sSurroundingText); @@ -13833,6 +13839,8 @@ public: IMHandler* pThis = static_cast<IMHandler*>(im_handler); + SolarMutexGuard aGuard; + OUString sSurroundingText; sal_Int32 nCursorIndex = pThis->m_pArea->im_context_get_surrounding(sSurroundingText); @@ -13875,6 +13883,7 @@ public: static void signalIMPreeditStart(GtkIMContext*, gpointer im_handler) { IMHandler* pThis = static_cast<IMHandler*>(im_handler); + SolarMutexGuard aGuard; pThis->StartExtTextInput(); pThis->updateIMSpotLocation(); } @@ -13891,6 +13900,7 @@ public: static void signalIMPreeditEnd(GtkIMContext*, gpointer im_handler) { IMHandler* pThis = static_cast<IMHandler*>(im_handler); + SolarMutexGuard aGuard; pThis->updateIMSpotLocation(); pThis->EndExtTextInput(); } commit 0a2d0342d73a99264677a5b701768e128b09a39c Author: Miklos Vajna <[email protected]> AuthorDate: Thu Oct 22 09:06:48 2020 +0200 Commit: Miklos Vajna <[email protected]> CommitDate: Thu Oct 22 09:52:17 2020 +0200 pdfium: add a wrapper for FPDFPage_HasTransparency() Change-Id: Id0595e96a4de7fabe6613cf2df69684da6e8a6d2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104648 Reviewed-by: Miklos Vajna <[email protected]> Tested-by: Jenkins diff --git a/include/vcl/filter/PDFiumLibrary.hxx b/include/vcl/filter/PDFiumLibrary.hxx index 1900c07d8e8c..556ca44ac4fd 100644 --- a/include/vcl/filter/PDFiumLibrary.hxx +++ b/include/vcl/filter/PDFiumLibrary.hxx @@ -219,6 +219,8 @@ public: double getWidth(); double getHeight(); + + bool hasTransparency(); }; class VCL_DLLPUBLIC PDFiumDocument final diff --git a/vcl/source/filter/ipdf/pdfread.cxx b/vcl/source/filter/ipdf/pdfread.cxx index f4ed0acf5b43..bb9b91e97702 100644 --- a/vcl/source/filter/ipdf/pdfread.cxx +++ b/vcl/source/filter/ipdf/pdfread.cxx @@ -171,8 +171,7 @@ size_t RenderPDFBitmaps(const void* pBuffer, int nSize, std::vector<Bitmap>& rBi if (!pPdfBitmap) break; - const FPDF_DWORD nColor - = FPDFPage_HasTransparency(pPdfPage->getPointer()) ? 0x00000000 : 0xFFFFFFFF; + const FPDF_DWORD nColor = pPdfPage->hasTransparency() ? 0x00000000 : 0xFFFFFFFF; FPDFBitmap_FillRect(pPdfBitmap->getPointer(), 0, 0, nPageWidth, nPageHeight, nColor); FPDF_RenderPageBitmap(pPdfBitmap->getPointer(), pPdfPage->getPointer(), /*start_x=*/0, /*start_y=*/0, nPageWidth, nPageHeight, /*rotate=*/0, /*flags=*/0); diff --git a/vcl/source/pdf/PDFiumLibrary.cxx b/vcl/source/pdf/PDFiumLibrary.cxx index 10fa42f143cf..fa5baeebb0c3 100644 --- a/vcl/source/pdf/PDFiumLibrary.cxx +++ b/vcl/source/pdf/PDFiumLibrary.cxx @@ -463,6 +463,8 @@ double PDFiumPage::getWidth() { return FPDF_GetPageWidth(mpPage); } double PDFiumPage::getHeight() { return FPDF_GetPageHeight(mpPage); } +bool PDFiumPage::hasTransparency() { return FPDFPage_HasTransparency(mpPage); } + PDFiumPathSegment::PDFiumPathSegment(FPDF_PATHSEGMENT pPathSegment) : mpPathSegment(pPathSegment) { _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
