(gdb) break ma_error.c:289 Breakpoint 1 at 0x3fffd2b2c7e: file /home/test/maria db-connector-odbc/ma_error.c, line 289. (gdb) run The program being debugged has been started already. Start it from the beginning? (y or n) y Starting program: /home/test/build/test/unicode [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db .so.1". # DSN=maodbc_test;UID=root;PWD={********};PORT=3306; DATABASE=test;OPTION=67108866;SERVER=localhost; 1..27 # row_count: 52 # row_count: 52 ok 1 - test_CONO1 ok 2 - test_count ok 3 - sqlconnect ok 4 - sqlprepare # not relevant when using driver manager skip 5 - sqlprepare_ansi # my_fetch_str: São Paolo(10) # São Paolo São Paolo ok 6 - sqlchar ok 7 - sqldriverconnect Breakpoint 1, MADB_GetDiagRec (Err=0x10dc498, RecNumber=, SQLState=0x3ffffffecb4, NativeErrorPtr=0x3ffffffecac, MessageText=0x3ffffffecc0, BufferLength=512, TextLengthPtr=0x3ffffffecb0, isWChar=1 '\001', OdbcVersion=3) at /home/test/mariadb-connector-odbc/ma_error.c: 289 289 MADB_SetString(isWChar ? &utf8 : 0, (vo id *)SQLState, SQL_SQLSTATE_SIZE + 1, (gdb) print utf8 $1 = (MARIADB_CHARSET_INFO *) 0x104e830 (gdb) print sizeof(MARIADB_CHARSET_INFO *) $2 = 8 (gdb) print *utf8 $3 = {nr = 33, state = 1, csname = 0x103d6e8 "utf8", name = 0x1040b4a "utf8_general_ci", dir = 0x1042fc6 "", codepage = 65001, encoding = 0x1040954 "UTF-8", char_minlen = 1, char_maxlen = 3, mb_charlen = 0x101c260 , mb_valid = 0x101bb20 } (gdb) step MADB_SetString (cc=0x10563d0 , Dest=0x3ffffffecb4, DestLength=6, Src=0x10dc498 "01004", SrcLength=5, Error=0x3ffffffe810) at /home/test/mariadb-connector-odbc/ma_platform _posix.c:323 323 SQLLEN Length= 0; (gdb) print cc $4 = (Client_Charset *) 0x10563d0 (gdb) print *cc $5 = {CodePage = 0, cs_info = 0x53} (gdb) print cc->cs_info $6 = (MARIADB_CHARSET_INFO *) 0x53 (gdb) print *(cc->cs_info) Cannot access memory at address 0x53