vcl/jsdialog/jsdialogbuilder.cxx |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

New commits:
commit 0ceb28d19da29a6dc78c3ff777b9bfe354786b26
Author:     Szymon Kłos <szymon.k...@collabora.com>
AuthorDate: Tue Dec 17 12:11:36 2024 +0100
Commit:     Miklos Vajna <vmik...@collabora.com>
CommitDate: Tue Dec 17 16:50:08 2024 +0100

    jsdialog: check button before use after dynamic_cast
    
    Change-Id: I9e3587c3037af76eb1bec64ffa0a86c84d275906
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178648
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com>
    Reviewed-by: Miklos Vajna <vmik...@collabora.com>

diff --git a/vcl/jsdialog/jsdialogbuilder.cxx b/vcl/jsdialog/jsdialogbuilder.cxx
index 8405622d48ea..7d8b4db3c53c 100644
--- a/vcl/jsdialog/jsdialogbuilder.cxx
+++ b/vcl/jsdialog/jsdialogbuilder.cxx
@@ -1030,7 +1030,10 @@ weld::Button* JSDialog::weld_widget_for_response(int 
nResponse)
 {
     PushButton* pButton
         = 
dynamic_cast<::PushButton*>(m_xDialog->get_widget_for_response(nResponse));
-    auto pWeldWidget = pButton ? new JSButton(m_pSender, pButton, nullptr, 
false) : nullptr;
+    if (!pButton)
+        return nullptr;
+
+    JSButton* pWeldWidget = new JSButton(m_pSender, pButton, nullptr, false);
 
     if (pWeldWidget)
     {

Reply via email to