[Libreoffice-bugs] [Bug 98930] Integer values passed to a C++ function, appear to corrupt stack
https://bugs.documentfoundation.org/show_bug.cgi?id=98930 Xisco FaulĂchanged: What|Removed |Added CC||xiscofa...@libreoffice.org Resolution|FIXED |WORKSFORME -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 98930] Integer values passed to a C++ function, appear to corrupt stack
https://bugs.documentfoundation.org/show_bug.cgi?id=98930 Erikchanged: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #4 from Erik --- Additional finding: If I declare the parameters 'byval' in the Macro, as such: Declare Function fnlotest Lib "lotest.dll" (byval integer, byval integer, byval integer, byval integer) As Integer It DOES work as expected. To verify, I also executed the same test code in MS Word VBA, and it has exactly the same result when using byval. When not using byval, I still get the addresses. Conclusion: LibreOffice now behaves exactly as VBA when calling the external DLL. So we can close this issue. -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 98930] Integer values passed to a C++ function, appear to corrupt stack
https://bugs.documentfoundation.org/show_bug.cgi?id=98930 --- Comment #3 from Erik--- Verified with the following build: Version: 5.3.0.1 Build ID: 3b800451b1d0c48045de03b5b3c7bbbac87f20d9 CPU Threads: 4; OS Version: Windows 6.2; UI Render: GL; Layout Engine: new; Locale: da-DK (da_DK); Calc: group Right now when running the sample below, instead of getting 1,0,2,0, I get the pointer addresses to the right variables. Tested by debugging and running the following code in the immediate window: ? first 986344488 ? *((int*)first) 1 ? *((int*)second) 2 ? *((int*)third) 3 ? *((int*)fourth) 4 While I now at least would be able to get to the actual values, I think the issue is still not completely resolved. -- You are receiving this mail because: You are the assignee for the bug.___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 98930] Integer values passed to a C++ function, appear to corrupt stack
https://bugs.documentfoundation.org/show_bug.cgi?id=98930 Oliver Specht (CIB)changed: What|Removed |Added Status|UNCONFIRMED |NEW CC||oliver.spe...@cib.de Ever confirmed|0 |1 --- Comment #2 from Oliver Specht (CIB) --- basic\source\runtime\dllmgr-x86.cxx The align method seems to create too many or wrong objects that are later converted to function parameters. Only the first parameter is actually used. > sblo.dll!`anonymous > namespace'::align(std::vector & blob, unsigned > int alignment, unsigned int offset, unsigned int add) Line 140 C++ sblo.dll!`anonymous namespace'::add(std::vector & blob, const SbxValues & data, unsigned int alignment, unsigned int offset) Line 150 C++ sblo.dll!`anonymous namespace'::marshal(bool outer, SbxVariable * variable, bool special, std::vector & blob, unsigned int offset, `anonymous-namespace'::MarshalData & data) Line 333C++ sblo.dll!`anonymous namespace'::call(const rtl::OUString & dll, const `anonymous-namespace'::ProcData & proc, SbxArray * arguments, SbxVariable & result) Line 497C++ sblo.dll!SbiDllMgr::Call(const rtl::OUString & function, const rtl::OUString & library, SbxArray * arguments, SbxVariable & result, bool cdeclConvention) Line 719C++ sblo.dll!SbiRuntime::DllCall(const rtl::OUString & aFuncName, const rtl::OUString & aDLLName, SbxArray * pArgs, SbxDataType eResType, bool bCDecl) Line 1292C++ sblo.dll!SbiRuntime::StepCALL(unsigned long nOp1, unsigned long nOp2) Line 4164C++ -- You are receiving this mail because: You are the assignee for the bug. ___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 98930] Integer values passed to a C++ function, appear to corrupt stack
https://bugs.documentfoundation.org/show_bug.cgi?id=98930 Cor Nouwschanged: What|Removed |Added CC||c...@nouenoff.nl See Also||https://bugs.documentfounda ||tion.org/show_bug.cgi?id=88 ||953 -- You are receiving this mail because: You are the assignee for the bug. ___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 98930] Integer values passed to a C++ function, appear to corrupt stack
https://bugs.documentfoundation.org/show_bug.cgi?id=98930 Erikchanged: What|Removed |Added Hardware|All |x86 (IA32) OS|All |Windows (All) -- You are receiving this mail because: You are the assignee for the bug. ___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
[Libreoffice-bugs] [Bug 98930] Integer values passed to a C++ function, appear to corrupt stack
https://bugs.documentfoundation.org/show_bug.cgi?id=98930 Erikchanged: What|Removed |Added Version|5.0.4.2 release |4.4.0.3 release --- Comment #1 from Erik --- Verified that it's still an issue in 5.1.1.3, updated the version field to reflect that the last version that is known to work is 4.3.7.2. -- You are receiving this mail because: You are the assignee for the bug. ___ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs