From 8361ab5243934fad3de7a96b867d7f3db161c28d Mon Sep 17 00:00:00 2001 From: "SND\\ussrhero_cp" Date: Fri, 6 Jan 2017 21:41:07 +0000 Subject: [PATCH] [0.3.x] fixed : issue # 14029 ( call function with "void" return type raises exception ) git-svn-id: https://pykd.svn.codeplex.com/svn@91093 9b283d60-5439-405e-af05-b73fd8c4d996 --- pykd/pykdver.h | 2 +- pykd/pytypeinfo.cpp | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/pykd/pykdver.h b/pykd/pykdver.h index 97d8be2..6c2c9e0 100644 --- a/pykd/pykdver.h +++ b/pykd/pykdver.h @@ -2,7 +2,7 @@ #define PYKD_VERSION_MAJOR 0 #define PYKD_VERSION_MINOR 3 #define PYKD_VERSION_SUBVERSION 1 -#define PYKD_VERSION_BUILDNO 8 +#define PYKD_VERSION_BUILDNO 9 #define __VER_STR2__(x) #x #define __VER_STR1__(x) __VER_STR2__(x) diff --git a/pykd/pytypeinfo.cpp b/pykd/pytypeinfo.cpp index df91e58..f891722 100644 --- a/pykd/pytypeinfo.cpp +++ b/pykd/pytypeinfo.cpp @@ -161,7 +161,7 @@ python::list TypeInfoAdapter::getElementDir(kdlib::TypeInfo &typeInfo) python::object callTypedVar(kdlib::TypedVarPtr& funcobj, python::tuple& args) { - kdlib::NumVariant retVal; + kdlib::TypedValue retVal; size_t argCount = python::len(args); @@ -186,7 +186,6 @@ python::object callTypedVar(kdlib::TypedVarPtr& funcobj, python::tuple& args) kdlib::NumVariant var= NumVariantAdaptor::convertToVariant(args[i]); argLst.push_back( var ); - } { @@ -194,7 +193,12 @@ python::object callTypedVar(kdlib::TypedVarPtr& funcobj, python::tuple& args) retVal = funcobj->call(argLst); } - return NumVariantAdaptor::convertToPython(retVal); + if ( retVal.getType()->isVoid() ) + { + return python::object(); + } + + return NumVariantAdaptor::convertToPython(retVal); } ///////////////////////////////////////////////////////////////////////////////