]> SALOME platform Git repositories - modules/superv.git/commitdiff
Salome HOME
Correction for problem: Execution of the wrong dataflow has "DoneState" status instea...
authormaintenance team <salome-mnt@opencascade.com>
Wed, 27 Sep 2006 12:46:51 +0000 (12:46 +0000)
committermaintenance team <salome-mnt@opencascade.com>
Wed, 27 Sep 2006 12:46:51 +0000 (12:46 +0000)
src/GraphExecutor/DataFlowExecutor_PyDynInvoke.cxx

index 8f1335689d8f369f37369f13fe6f8e2637bf8cf1..d885612bf25af415501841deb51b096963faf1b4 100644 (file)
@@ -370,7 +370,14 @@ bool GraphExecutor::InNode::PyDynInvoke( PyObject * MyPyRunMethod ,
       case CORBA::tk_long : {
         CORBA::Long l ;
         data >>= l ;
-        PyObject * ArgValue = Py_BuildValue( "l" , l ) ;
+//      epa - Porting to 64-bit Linux:CORBA::Long is incorrectly treated as unsigned 
+//            integer by Py_BuildValue("l", val) in Python 2.4.1. Using Py_BuildValue("i",val) 
+//            seemsto help
+        PyObject * ArgValue = NULL;
+        if ( SIZEOF_LONG == 4 )
+           ArgValue = Py_BuildValue( "l" , l ) ;
+       else
+           ArgValue = Py_BuildValue( "i" , l ) ;
 #if PyDynInvokeTrace
         cdebug << "ArgIn" << i << " : " << sname << " " << method << " Value " << l
                << " ArgValue->ob_refcnt" << ArgValue->ob_refcnt << endl ;