[PATCH] PyUno fixed crash in function isInstanceOfStructOrException(...

Xiaoli Duan (via Code Review) gerrit at gerrit.libreoffice.org
Sun Jun 16 07:42:14 PDT 2013


Hi,

I have submitted a patch for review:

    https://gerrit.libreoffice.org/4309

To pull it, you can do:

    git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/09/4309/1

PyUno fixed crash in function isInstanceOfStructOrException()

when we try to call PyUNO_callable object that doesn't have __class__ attribute

Change-Id: Ia05f70d70f248d50aa141b09625f7ec50189e1dd
---
M pyuno/source/module/pyuno_except.cxx
1 file changed, 4 insertions(+), 2 deletions(-)



diff --git a/pyuno/source/module/pyuno_except.cxx b/pyuno/source/module/pyuno_except.cxx
index 9c21a9e..cf02bd0 100644
--- a/pyuno/source/module/pyuno_except.cxx
+++ b/pyuno/source/module/pyuno_except.cxx
@@ -200,8 +200,10 @@
     PyRef attr(
         PyObject_GetAttrString(obj, "__class__"),
         SAL_NO_ACQUIRE );
-    return PyObject_HasAttrString(
-        attr.get(), "__pyunostruct__");
+    if(attr.is())
+        return PyObject_HasAttrString(attr.get(), "__pyunostruct__");
+    else
+        return false;
 }
 
 sal_Bool isInterfaceClass( const Runtime &runtime, PyObject * obj )

-- 
To view, visit https://gerrit.libreoffice.org/4309
To unsubscribe, visit https://gerrit.libreoffice.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ia05f70d70f248d50aa141b09625f7ec50189e1dd
Gerrit-PatchSet: 1
Gerrit-Project: core
Gerrit-Branch: master
Gerrit-Owner: Xiaoli Duan <duan19002009 at gmail.com>



More information about the LibreOffice mailing list