<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2657.88">
<TITLE>SIGSEGV in marshalPyObjectWChar</TITLE>
</HEAD>
<BODY>
<P><FONT SIZE=2 FACE="Arial">While using omniORB-4.0.3 and omniORBpy-2.3 on a Linux RHAS 2.1 machine I'm experiencing a crash in the marshalling code of omniORBpy. Any suggestions on how to get through this problem would be greatly appreciated.</FONT></P>
<P><FONT SIZE=2 FACE="Arial">Thanks,</FONT>
</P>
<P><FONT SIZE=2 FACE="Arial">Joel</FONT>
</P>
<BR>
<P><FONT SIZE=2 FACE="Arial">Here is an excerpt from the Python script that causes the problem.</FONT>
</P>
<UL>
<P><FONT SIZE=2 FACE="Arial">m = V.M.Create_Args</FONT>
<BR><FONT SIZE=2 FACE="Arial">m.Key = 0</FONT>
<BR><FONT SIZE=2 FACE="Arial">m.Label = u'x' * 65</FONT>
<BR><FONT SIZE=2 FACE="Arial">resp, out = session.Create([m], 0)</FONT>
</P>
</UL>
<P><FONT SIZE=2 FACE="Arial">Here is the corresponding IDL:</FONT>
</P>
<UL>
<P><FONT SIZE=2 FACE="Arial">struct Create_Args</FONT>
<BR><FONT SIZE=2 FACE="Arial">{</FONT>
<BR><FONT SIZE=2 FACE="Arial"> long Key;</FONT>
<BR><FONT SIZE=2 FACE="Arial"> wchar Label[ 65];</FONT>
<BR><FONT SIZE=2 FACE="Arial">} ;</FONT>
</P>
<P><FONT SIZE=2 FACE="Arial">typedef sequence<Create_Args> Create_Args_Seq ;</FONT>
</P>
<P><FONT SIZE=2 FACE="Arial">unsigned long CreateMedia( inout Create_Args_Seq Arguments, in unsigned long Flags) ;</FONT>
</P>
<BR>
</UL>
<P><FONT SIZE=2 FACE="Arial">Here is the stack trace:</FONT>
</P>
<BR>
<BR>
<P><FONT SIZE=2 FACE="Arial">omniORB: Invoke 'Create' on remote: key<0x14010f005253542f1e84405b9a0500110000000100000012000000></FONT>
</P>
<P><FONT SIZE=2 FACE="Arial">Program received signal SIGSEGV, Segmentation fault.</FONT>
<BR><FONT SIZE=2 FACE="Arial">[Switching to Thread 1024 (LWP 29875)]</FONT>
<BR><FONT SIZE=2 FACE="Arial">0x402d3548 in marshalPyObjectWChar () from /sdks/omniORB-4.0.3/Linux/lib/python2.3/site-packages/_omnipymodule.so</FONT>
<BR><FONT SIZE=2 FACE="Arial">(gdb) where</FONT>
<BR><FONT SIZE=2 FACE="Arial">#0 0x402d3548 in marshalPyObjectWChar () from /sdks/omniORB-4.0.3/Linux/lib/python2.3/site-packages/_omnipymodule.so</FONT>
<BR><FONT SIZE=2 FACE="Arial">#1 0x402d2f9a in marshalPyObjectArray () from /sdks/omniORB-4.0.3/Linux/lib/python2.3/site-packages/_omnipymodule.so</FONT>
<BR><FONT SIZE=2 FACE="Arial">#2 0x402cfdf3 in marshalPyObjectStruct () from /sdks/omniORB-4.0.3/Linux/lib/python2.3/site-packages/_omnipymodule.so</FONT>
<BR><FONT SIZE=2 FACE="Arial">#3 0x402d1871 in marshalPyObjectSequence () from /sdks/omniORB-4.0.3/Linux/lib/python2.3/site-packages/_omnipymodule.so</FONT></P>
<P><FONT SIZE=2 FACE="Arial">#4 0x402d3042 in marshalPyObjectAlias () from /sdks/omniORB-4.0.3/Linux/lib/python2.3/site-packages/_omnipymodule.so</FONT>
<BR><FONT SIZE=2 FACE="Arial">#5 0x402c2830 in omniPy::Py_omniCallDescriptor::marshalArguments ()</FONT>
<BR><FONT SIZE=2 FACE="Arial"> from /sdks/omniORB-4.0.3/Linux/lib/python2.3/site-packages/_omnipymodule.so</FONT>
<BR><FONT SIZE=2 FACE="Arial">#6 0x403df98b in omni::GIOP_C::InitialiseRequest () from /sdks/omniORB-4.0.3/Linux/lib/libomniORB4.so.0</FONT>
<BR><FONT SIZE=2 FACE="Arial">#7 0x403c7ee7 in omniRemoteIdentity::dispatch () from /sdks/omniORB-4.0.3/Linux/lib/libomniORB4.so.0</FONT>
<BR><FONT SIZE=2 FACE="Arial">#8 0x403aacec in omniObjRef::_invoke () from /sdks/omniORB-4.0.3/Linux/lib/libomniORB4.so.0</FONT>
<BR><FONT SIZE=2 FACE="Arial">#9 0x402b6fae in omnipy_invoke () from /sdks/omniORB-4.0.3/Linux/lib/python2.3/site-packages/_omnipymodule.so</FONT>
<BR><FONT SIZE=2 FACE="Arial">#10 0x080e4ac1 in PyCFunction_Call (func=0x4026392c, arg=0x401f4a2c, kw=0x0) at Objects/methodobject.c:108</FONT>
<BR><FONT SIZE=2 FACE="Arial">#11 0x080a6f92 in call_function (pp_stack=0xbffeb24c, oparg=4) at Python/ceval.c:3439</FONT>
<BR><FONT SIZE=2 FACE="Arial">#12 0x080a5647 in eval_frame (f=0x816af4c) at Python/ceval.c:2116</FONT>
<BR><FONT SIZE=2 FACE="Arial">#13 0x080a65d3 in PyEval_EvalCodeEx (co=0x404f6f60, globals=0x4050f02c, locals=0x0, args=0x814be98, argcount=3, </FONT>
<BR><FONT SIZE=2 FACE="Arial"> kws=0x814bea4, kwcount=0, defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:2663</FONT>
<BR><FONT SIZE=2 FACE="Arial">#14 0x080a8abb in fast_function (func=0x40510cdc, pp_stack=0xbffeb3ec, n=3, na=3, nk=0) at Python/ceval.c:3532</FONT>
<BR><FONT SIZE=2 FACE="Arial">#15 0x080a7016 in call_function (pp_stack=0xbffeb3ec, oparg=2) at Python/ceval.c:3458</FONT>
<BR><FONT SIZE=2 FACE="Arial">#16 0x080a5647 in eval_frame (f=0x814bd4c) at Python/ceval.c:2116</FONT>
<BR><FONT SIZE=2 FACE="Arial">#17 0x080a65d3 in PyEval_EvalCodeEx (co=0x401ed6a0, globals=0x401bc79c, locals=0x401bc79c, args=0x0, argcount=0, kws=0x0, </FONT></P>
<P><FONT SIZE=2 FACE="Arial"> kwcount=0, defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:2663</FONT>
<BR><FONT SIZE=2 FACE="Arial">#18 0x080a8956 in PyEval_EvalCode (co=0x401ed6a0, globals=0x401bc79c, locals=0x401bc79c) at Python/ceval.c:542</FONT>
<BR><FONT SIZE=2 FACE="Arial">#19 0x080c4f75 in run_node (n=0x401a4350, filename=0xbffed12b "create_m", globals=0x401bc79c, locals=0x401bc79c, </FONT>
<BR><FONT SIZE=2 FACE="Arial"> flags=0xbffeb56c) at Python/pythonrun.c:1239</FONT>
<BR><FONT SIZE=2 FACE="Arial">#20 0x080c3945 in PyRun_SimpleFileExFlags (fp=0x8121788, filename=0xbffed12b "create_m", closeit=1, </FONT>
<BR><FONT SIZE=2 FACE="Arial"> flags=0xbffeb56c) at Python/pythonrun.c:836</FONT>
<BR><FONT SIZE=2 FACE="Arial">#21 0x08054e8e in Py_Main (argc=4, argv=0xbffeb624) at Modules/main.c:418</FONT>
<BR><FONT SIZE=2 FACE="Arial">#22 0x40082657 in __libc_start_main (main=0x80547a0 <main>, argc=4, ubp_av=0xbffeb624, init=0x8053af0 <_init>, </FONT>
<BR><FONT SIZE=2 FACE="Arial"> fini=0x80e6de0 <_fini>, rtld_fini=0x4000dcd4 <_dl_fini>, stack_end=0xbffeb61c) at ../sysdeps/generic/libc-start.c:129</FONT></P>
<P><FONT SIZE=2 FACE="Arial">(gdb) </FONT>
</P>
</BODY>
</HTML>