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

--- Comment #31 from Lionel Elie Mamane <[email protected]> ---
(In reply to Howard Johnson from comment #28)
> Today I discovered that I could get a trace of the ODBC calls as they were
> occurring leading up to this crash.  From this I think Base might be
> crashing inside LO BASE, and not inside of the ODBC manager nor inside the
> ODBC driver.

While what you write is technically true, I think the ODBC driver overwrites
LibreOffice memory when  SQLGetInfo(... SQL_FILE_USAGE ...) is called. Namely
it writes, into a LibreOffice-provided pointer (buffer),  4 bytes instead of 2.
A patch correcting this was accepted in the driver.

So technically it crashes in LibreOffice code, but it is caused by the ODBC
driver.

So please, try with a version of the ODBC driver that is recent enough to
include the above accepted patch.

> From my trace just now (which I will attach) it appears the crash is
> happening after ODBC call originating in LGetInfo.c line # 554.  Here is the
> very last entry from the trace showing that the ODBC call completed
> successfully:
> 
> -----------------------------------------------------
> [ODBC][3715][1477058411.956470][SQLGetInfo.c][554]
>                 Entry:
>                         Connection = 0x3808a20
>                         Info Type = SQL_FILE_USAGE (84)
>                         Info Value = 0x7ffc36990c4e
>                         Buffer Length = 2
>                         StrLen = 0x7ffc36990c06
> 
> [ODBC][3715][1477058411.956513][SQLGetInfo.c][617]
>                 Exit:[SQL_SUCCESS]
> ------------------------------------------------------

As I wrote above, it successfully overwrote LibreOffice memory it is not
supposed to :)

-- 
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Libreoffice-bugs mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs

Reply via email to