https://bugs.documentfoundation.org/show_bug.cgi?id=138155

--- Comment #6 from Mike Kaganski <[email protected]> ---
The problem happens in SbRtl_CallByName [1], in SbMethod::Call [2], when
calling SbxValue::Put [3]. The latter one checks if rVal.eType & 0xF000 gives
non-zero, and errors out in that case. When the assigned value is an array,
rVal.eType has SbxDataType::SbxARRAY flag (0x2000) [4].

Returning arrays from functions works, so we need to check how the return is
implemented, and use that instead of SbxValue::Put. Andreas: the one for you?
;)

[1]
https://opengrok.libreoffice.org/xref/core/basic/source/runtime/methods1.cxx?r=bc1ab88f&mo=2931&fi=96#205
[2]
https://opengrok.libreoffice.org/xref/core/basic/source/classes/sbxmod.cxx?r=f4ff0ed5#2071
[3]
https://opengrok.libreoffice.org/xref/core/basic/source/sbx/sbxvalue.cxx?r=565a5fde#392
[4]
https://opengrok.libreoffice.org/xref/core/include/basic/sbxdef.hxx?r=de81c254&mo=3494&fi=80#80

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to