bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#58850: 29.0.50; sqlite crashes on error


From: Gerd Möllmann
Subject: bug#58850: 29.0.50; sqlite crashes on error
Date: Tue, 01 Nov 2022 10:03:08 +0100
User-agent: Gnus/5.13 (Gnus v5.13)

Eli Zaretskii <eliz@gnu.org> writes:

> Armed with the accurate backtrace, we might have a different picture
> of what causes this problem.

Since I have debug build at hand, here is the result:

(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = Stack buffer 
overflow
  * frame #0: 0x0000000103759334 
libclang_rt.asan_osx_dynamic.dylib`__asan::AsanDie()
    frame #1: 0x0000000103771870 
libclang_rt.asan_osx_dynamic.dylib`__sanitizer::Die() + 192
    frame #2: 0x00000001037571c0 
libclang_rt.asan_osx_dynamic.dylib`__asan::ScopedInErrorReport::~ScopedInErrorReport()
 + 1124
    frame #3: 0x0000000103756498 
libclang_rt.asan_osx_dynamic.dylib`__asan::ReportGenericError(unsigned long, 
unsigned long, unsigned long, unsigned long, bool, unsigned long, unsigned int, 
bool) + 1436
    frame #4: 0x0000000103727964 libclang_rt.asan_osx_dynamic.dylib`wrap_memcpy 
+ 616
    frame #5: 0x000000019189acbc libsystem_c.dylib`__sfvwrite + 324
    frame #6: 0x0000000191899988 libsystem_c.dylib`__vfprintf + 7200
    frame #7: 0x00000001918a31cc libsystem_c.dylib`vsprintf_l + 204
    frame #8: 0x000000010372db70 
libclang_rt.asan_osx_dynamic.dylib`wrap_vsprintf + 184
    frame #9: 0x000000010372e148 
libclang_rt.asan_osx_dynamic.dylib`wrap_sprintf + 84
    frame #10: 0x00000001008276ec emacs`print_vectorlike(obj=(struct 
Lisp_Sqlite *) $5 = 0x0000000117d4ccd8, printcharfun=(struct Lisp_Symbol *) $8 
= 0x0000000101494c00, escapeflag=true, buf=" name=0dd48080") at print.c:2020:6
    frame #11: 0x00000001008228f0 emacs`print_object(obj=(struct Lisp_Sqlite *) 
$13 = 0x0000000117d4ccd8, printcharfun=(struct Lisp_Symbol *) $16 = 
0x0000000101494c00, escapeflag=true) at print.c:2569:11
    frame #12: 0x0000000100812f3c emacs`print(obj=(struct Lisp_Sqlite *) $21 = 
0x0000000117d4ccd8, printcharfun=(struct Lisp_Symbol *) $24 = 
0x0000000101494c00, escapeflag=true) at print.c:1298:3
    frame #13: 0x00000001008121fc emacs`Fprin1(object=(struct Lisp_Sqlite *) 
$29 = 0x0000000117d4ccd8, printcharfun=(struct buffer *) $34 = 
0x0000000121142d20, overrides=(struct Lisp_Symbol *) $37 = 0x0000000101494c00) 
at print.c:773:3
    frame #14: 0x0000000100780668 emacs`funcall_subr(subr=0x0000000100d15040, 
numargs=2, args=(struct Lisp_Symbol *) $40 = 0x0000000101494c00) at 
eval.c:3026:15
    frame #15: 0x00000001008918cc emacs`exec_byte_code(fun=(struct Lisp_Vector 
*) $45 = 0x0000000117d482d0, args_template=514, nargs=2, args=(struct 
Lisp_Symbol *) $48 = 0x0000000101494c00) at bytecode.c:809:14
    frame #16: 0x000000010078c740 emacs`fetch_and_exec_byte_code(fun=(struct 
Lisp_Vector *) $53 = 0x0000000117d482d0, args_template=514, nargs=2, 
args=(struct Lisp_Symbol *) $56 = 0x0000000101494c00) at eval.c:3069:10
    frame #17: 0x0000000100781a4c emacs`funcall_lambda(fun=(struct Lisp_Vector 
*) $61 = 0x0000000117d482d0, nargs=2, arg_vector=(struct Lisp_Symbol *) $64 = 
0x0000000101494c00) at eval.c:3141:9
    frame #18: 0x000000010077fb08 emacs`funcall_general(fun=(struct Lisp_Vector 
*) $69 = 0x0000000117d482d0, numargs=2, args=(struct Lisp_Symbol *) $72 = 
0x0000000101494c00) at eval.c:2933:12
    frame #19: 0x00000001007717cc emacs`Ffuncall(nargs=3, args=(struct 
Lisp_Symbol *) $75 = 0x0000000101494c00) at eval.c:2983:21
    frame #20: 0x000000010077dff4 emacs`Fapply(nargs=2, args=(struct 
Lisp_Symbol *) $78 = 0x0000000101494c00) at eval.c:2654:24
    frame #21: 0x0000000100781090 emacs`funcall_subr(subr=0x0000000100d110e0, 
numargs=2, args=(struct Lisp_Symbol *) $81 = 0x0000000101494c00) at 
eval.c:3047:9
    frame #22: 0x00000001008918cc emacs`exec_byte_code(fun=(struct Lisp_Vector 
*) $86 = 0x0000000121143240, args_template=128, nargs=0, args=(struct 
Lisp_Symbol *) $89 = 0x0000000101494c00) at bytecode.c:809:14
    frame #23: 0x000000010078c740 emacs`fetch_and_exec_byte_code(fun=(struct 
Lisp_Vector *) $94 = 0x000000011dc591f0, args_template=771, nargs=3, 
args=(struct Lisp_Symbol *) $97 = 0x0000000101494c00) at eval.c:3069:10
    frame #24: 0x0000000100781a4c emacs`funcall_lambda(fun=(struct Lisp_Vector 
*) $102 = 0x000000011dc591f0, nargs=3, arg_vector=(struct Lisp_Symbol *) $105 = 
0x0000000101494c00) at eval.c:3141:9
    frame #25: 0x000000010077fb08 emacs`funcall_general(fun=(struct Lisp_Vector 
*) $110 = 0x000000011dc591f0, numargs=3, args=(struct Lisp_Symbol *) $113 = 
0x0000000101494c00) at eval.c:2933:12
    frame #26: 0x00000001007717cc emacs`Ffuncall(nargs=4, args=(struct 
Lisp_Symbol *) $116 = 0x0000000101494c00) at eval.c:2983:21
    frame #27: 0x000000010077dff4 emacs`Fapply(nargs=3, args=(struct 
Lisp_Symbol *) $119 = 0x0000000101494c00) at eval.c:2654:24
    frame #28: 0x0000000100781090 emacs`funcall_subr(subr=0x0000000100d110e0, 
numargs=3, args=(struct Lisp_Symbol *) $122 = 0x0000000101494c00) at 
eval.c:3047:9
    frame #29: 0x00000001008918cc emacs`exec_byte_code(fun=(struct Lisp_Vector 
*) $127 = 0x0000000121132f20, args_template=128, nargs=2, args=(struct 
Lisp_Symbol *) $130 = 0x0000000101494c00) at bytecode.c:809:14
    frame #30: 0x000000010078c740 emacs`fetch_and_exec_byte_code(fun=(struct 
Lisp_Vector *) $135 = 0x0000000121132f20, args_template=128, nargs=2, 
args=(struct Lisp_Symbol *) $138 = 0x0000000101494c00) at eval.c:3069:10
    frame #31: 0x0000000100781a4c emacs`funcall_lambda(fun=(struct Lisp_Vector 
*) $143 = 0x0000000121132f20, nargs=2, arg_vector=(struct Lisp_Symbol *) $146 = 
0x0000000101494c00) at eval.c:3141:9
    frame #32: 0x000000010077fb08 emacs`funcall_general(fun=(struct Lisp_Vector 
*) $151 = 0x0000000121132f20, numargs=2, args=(struct Lisp_Symbol *) $154 = 
0x0000000101494c00) at eval.c:2933:12
    frame #33: 0x00000001007717cc emacs`Ffuncall(nargs=3, args=(struct 
Lisp_Symbol *) $157 = 0x0000000101494c00) at eval.c:2983:21
    frame #34: 0x000000010077cf8c emacs`Fapply(nargs=3, args=(struct 
Lisp_Symbol *) $160 = 0x0000000101494c00) at eval.c:2611:14
    frame #35: 0x0000000100781090 emacs`funcall_subr(subr=0x0000000100d110e0, 
numargs=3, args=(struct Lisp_Symbol *) $163 = 0x0000000101494c00) at 
eval.c:3047:9
    frame #36: 0x00000001008918cc emacs`exec_byte_code(fun=(struct Lisp_Vector 
*) $168 = 0x0000000107a49488, args_template=514, nargs=2, args=(struct 
Lisp_Symbol *) $171 = 0x0000000101494c00) at bytecode.c:809:14
    frame #37: 0x000000010078c740 emacs`fetch_and_exec_byte_code(fun=(struct 
Lisp_Vector *) $176 = 0x0000000117d48330, args_template=514, nargs=2, 
args=(struct Lisp_Symbol *) $179 = 0x0000000101494c00) at eval.c:3069:10
    frame #38: 0x0000000100781a4c emacs`funcall_lambda(fun=(struct Lisp_Vector 
*) $184 = 0x0000000117d48330, nargs=2, arg_vector=(struct Lisp_Symbol *) $187 = 
0x0000000101494c00) at eval.c:3141:9
    frame #39: 0x000000010077fb08 emacs`funcall_general(fun=(struct Lisp_Vector 
*) $192 = 0x0000000117d48330, numargs=2, args=(struct Lisp_Symbol *) $195 = 
0x0000000101494c00) at eval.c:2933:12
    frame #40: 0x00000001007717cc emacs`Ffuncall(nargs=3, args=(struct 
Lisp_Symbol *) $198 = 0x0000000101494c00) at eval.c:2983:21
    frame #41: 0x000000010077dff4 emacs`Fapply(nargs=2, args=(struct 
Lisp_Symbol *) $201 = 0x0000000101494c00) at eval.c:2654:24
    frame #42: 0x0000000100781090 emacs`funcall_subr(subr=0x0000000100d110e0, 
numargs=2, args=(struct Lisp_Symbol *) $204 = 0x0000000101494c00) at 
eval.c:3047:9
    frame #43: 0x00000001008918cc emacs`exec_byte_code(fun=(struct Lisp_Vector 
*) $209 = 0x0000000121143190, args_template=128, nargs=0, args=(struct 
Lisp_Symbol *) $212 = 0x0000000101494c00) at bytecode.c:809:14
    frame #44: 0x000000010078c740 emacs`fetch_and_exec_byte_code(fun=(struct 
Lisp_Vector *) $217 = 0x000000011dc591f0, args_template=771, nargs=3, 
args=(struct Lisp_Symbol *) $220 = 0x0000000101494c00) at eval.c:3069:10
    frame #45: 0x0000000100781a4c emacs`funcall_lambda(fun=(struct Lisp_Vector 
*) $225 = 0x000000011dc591f0, nargs=3, arg_vector=(struct Lisp_Symbol *) $228 = 
0x0000000101494c00) at eval.c:3141:9
    frame #46: 0x000000010077fb08 emacs`funcall_general(fun=(struct Lisp_Vector 
*) $233 = 0x000000011dc591f0, numargs=3, args=(struct Lisp_Symbol *) $236 = 
0x0000000101494c00) at eval.c:2933:12
    frame #47: 0x00000001007717cc emacs`Ffuncall(nargs=4, args=(struct 
Lisp_Symbol *) $239 = 0x0000000101494c00) at eval.c:2983:21
    frame #48: 0x000000010077dff4 emacs`Fapply(nargs=3, args=(struct 
Lisp_Symbol *) $242 = 0x0000000101494c00) at eval.c:2654:24
    frame #49: 0x0000000100781090 emacs`funcall_subr(subr=0x0000000100d110e0, 
numargs=3, args=(struct Lisp_Symbol *) $245 = 0x0000000101494c00) at 
eval.c:3047:9
    frame #50: 0x00000001008918cc emacs`exec_byte_code(fun=(struct Lisp_Vector 
*) $250 = 0x0000000121132e00, args_template=128, nargs=2, args=(struct 
Lisp_Symbol *) $253 = 0x0000000101494c00) at bytecode.c:809:14
    frame #51: 0x000000010078c740 emacs`fetch_and_exec_byte_code(fun=(struct 
Lisp_Vector *) $258 = 0x0000000121132e00, args_template=128, nargs=2, 
args=(struct Lisp_Symbol *) $261 = 0x0000000101494c00) at eval.c:3069:10
    frame #52: 0x0000000100781a4c emacs`funcall_lambda(fun=(struct Lisp_Vector 
*) $266 = 0x0000000121132e00, nargs=2, arg_vector=(struct Lisp_Symbol *) $269 = 
0x0000000101494c00) at eval.c:3141:9
    frame #53: 0x000000010077fb08 emacs`funcall_general(fun=(struct Lisp_Vector 
*) $274 = 0x0000000121132e00, numargs=2, args=(struct Lisp_Symbol *) $277 = 
0x0000000101494c00) at eval.c:2933:12
    frame #54: 0x00000001007717cc emacs`Ffuncall(nargs=3, args=(struct 
Lisp_Symbol *) $280 = 0x0000000101494c00) at eval.c:2983:21
    frame #55: 0x000000010077cf8c emacs`Fapply(nargs=3, args=(struct 
Lisp_Symbol *) $283 = 0x0000000101494c00) at eval.c:2611:14
    frame #56: 0x0000000100781090 emacs`funcall_subr(subr=0x0000000100d110e0, 
numargs=3, args=(struct Lisp_Symbol *) $286 = 0x0000000101494c00) at 
eval.c:3047:9
    frame #57: 0x00000001008918cc emacs`exec_byte_code(fun=(struct Lisp_Vector 
*) $291 = 0x000000010752ec50, args_template=257, nargs=1, args=(struct 
Lisp_Symbol *) $294 = 0x0000000101494c00) at bytecode.c:809:14
    frame #58: 0x000000010078c740 emacs`fetch_and_exec_byte_code(fun=(struct 
Lisp_Vector *) $299 = 0x0000000111116b30, args_template=128, nargs=2, 
args=(struct Lisp_Symbol *) $302 = 0x0000000101494c00) at eval.c:3069:10
    frame #59: 0x0000000100781a4c emacs`funcall_lambda(fun=(struct Lisp_Vector 
*) $307 = 0x0000000111116b30, nargs=2, arg_vector=(struct Lisp_Symbol *) $310 = 
0x0000000101494c00) at eval.c:3141:9
    frame #60: 0x000000010077fb08 emacs`funcall_general(fun=(struct Lisp_Vector 
*) $315 = 0x0000000111116b30, numargs=2, args=(struct Lisp_Symbol *) $318 = 
0x0000000101494c00) at eval.c:2933:12
    frame #61: 0x00000001007717cc emacs`Ffuncall(nargs=3, args=(struct 
Lisp_Symbol *) $321 = 0x0000000101494c00) at eval.c:2983:21
    frame #62: 0x000000010077dff4 emacs`Fapply(nargs=2, args=(struct 
Lisp_Symbol *) $324 = 0x0000000101494c00) at eval.c:2654:24
    frame #63: 0x00000001007645a8 emacs`apply1(fn=(struct Lisp_Symbol *) $327 = 
0x0000000101499dc0, arg=(struct Lisp_Cons *) $329 = 0x00000001074cd700) at 
eval.c:2870:43
    frame #64: 0x0000000100762c8c emacs`call_debugger(arg=(struct Lisp_Cons *) 
$331 = 0x00000001074cd700) at eval.c:315:9
    frame #65: 0x000000010078b91c emacs`maybe_call_debugger(conditions=(struct 
Lisp_Cons *) $333 = 0x00000001076b6390, sig=(struct Lisp_Symbol *) $336 = 
0x00000001014a2d60, data=(struct Lisp_Cons *) $338 = 0x00000001074cd6d0) at 
eval.c:2014:7
    frame #66: 0x000000010077787c emacs`signal_or_quit(error_symbol=(struct 
Lisp_Symbol *) $341 = 0x00000001014a2d60, data=(struct Lisp_Cons *) $343 = 
0x00000001074cd6d0, keyboard_quit=false) at eval.c:1789:4
    frame #67: 0x0000000100b92b84 emacs`Fsignal(error_symbol=(struct 
Lisp_Symbol *) $346 = 0x00000001014a2d60, data=(struct Lisp_Cons *) $348 = 
0x00000001074cd6d0) at eval.c:1685:3
    frame #68: 0x0000000100b92c60 emacs`xsignal(error_symbol=(struct 
Lisp_Symbol *) $351 = 0x00000001014a2d60, data=(struct Lisp_Cons *) $353 = 
0x00000001074cd6d0) at lisp.h:4553:3
    frame #69: 0x0000000100b92150 emacs`xsignal1(error_symbol=(struct 
Lisp_Symbol *) $356 = 0x00000001014a2d60, arg=(struct Lisp_Cons *) $358 = 
0x00000001074cd6c0) at eval.c:1879:3
    frame #70: 0x00000001009a0330 emacs`Fsqlite_execute(db=(struct Lisp_Sqlite 
*) $363 = 0x0000000117d4ccd8, query=(struct Lisp_String *) $365 = 
0x000000011aa11ea0, values=(struct Lisp_Symbol *) $368 = 0x0000000101494c00) at 
sqlite.c:510:3
    frame #71: 0x0000000100766ff0 emacs`eval_sub(form=(struct Lisp_Cons *) $370 
= 0x00000001074766e0) at eval.c:2492:15
    frame #72: 0x0000000100768a88 emacs`Fprogn(body=(struct Lisp_Symbol *) $373 
= 0x0000000101494c00) at eval.c:436:13
    frame #73: 0x0000000100770124 emacs`Flet(args=(struct Lisp_Cons *) $375 = 
0x00000001074766d0) at eval.c:1026:9
    frame #74: 0x00000001007663f4 emacs`eval_sub(form=(struct Lisp_Cons *) $377 
= 0x0000000107476650) at eval.c:2437:8
    frame #75: 0x0000000100768a88 emacs`Fprogn(body=(struct Lisp_Symbol *) $380 
= 0x0000000101494c00) at eval.c:436:13
    frame #76: 0x00000001007823a4 emacs`funcall_lambda(fun=(struct Lisp_Cons *) 
$382 = 0x0000000107475a00, nargs=0, arg_vector=(struct Lisp_Symbol *) $385 = 
0x0000000101494c00) at eval.c:3221:11
    frame #77: 0x000000010077c9c8 emacs`apply_lambda(fun=(struct Lisp_Cons *) 
$387 = 0x0000000107475a10, args=(struct Lisp_Symbol *) $390 = 
0x0000000101494c00, count=(bytes = 544)) at eval.c:3091:9
    frame #78: 0x0000000100767f90 emacs`eval_sub(form=(struct Lisp_Cons *) $392 
= 0x00000001074cd5f0) at eval.c:2576:9
    frame #79: 0x0000000100768a88 emacs`Fprogn(body=(struct Lisp_Symbol *) $395 
= 0x0000000101494c00) at eval.c:436:13
    frame #80: 0x00000001007663f4 emacs`eval_sub(form=(struct Lisp_Cons *) $397 
= 0x00000001074cd610) at eval.c:2437:8
    frame #81: 0x000000010077ab44 emacs`Feval(form=(struct Lisp_Cons *) $399 = 
0x00000001074cd610, lexical=(struct Lisp_Symbol *) $402 = 0x0000000101494c30) 
at eval.c:2349:28
    frame #82: 0x0000000100780560 emacs`funcall_subr(subr=0x0000000100d11080, 
numargs=2, args=(struct Lisp_Symbol *) $405 = 0x0000000101494c00) at 
eval.c:3024:15
    frame #83: 0x00000001008918cc emacs`exec_byte_code(fun=(struct Lisp_Vector 
*) $410 = 0x000000010760e440, args_template=513, nargs=2, args=(struct 
Lisp_Symbol *) $413 = 0x0000000101494c00) at bytecode.c:809:14
    frame #84: 0x000000010078c740 emacs`fetch_and_exec_byte_code(fun=(struct 
Lisp_Vector *) $418 = 0x00000001079d2418, args_template=256, nargs=1, 
args=(struct Lisp_Symbol *) $421 = 0x0000000101494c00) at eval.c:3069:10
    frame #85: 0x0000000100781a4c emacs`funcall_lambda(fun=(struct Lisp_Vector 
*) $426 = 0x00000001079d2418, nargs=1, arg_vector=(struct Lisp_Symbol *) $429 = 
0x0000000101494c00) at eval.c:3141:9
    frame #86: 0x000000010077fb08 emacs`funcall_general(fun=(struct Lisp_Vector 
*) $434 = 0x00000001079d2418, numargs=1, args=(struct Lisp_Symbol *) $437 = 
0x0000000101494c00) at eval.c:2933:12
    frame #87: 0x00000001007717cc emacs`Ffuncall(nargs=2, args=(struct 
Lisp_Symbol *) $440 = 0x0000000101494c00) at eval.c:2983:21
    frame #88: 0x0000000100756c78 emacs`Ffuncall_interactively(nargs=2, 
args=(struct Lisp_Symbol *) $443 = 0x0000000101494c00) at callint.c:248:32
    frame #89: 0x0000000100781090 emacs`funcall_subr(subr=0x0000000100d10420, 
numargs=2, args=(struct Lisp_Symbol *) $446 = 0x0000000101494c00) at 
eval.c:3047:9
    frame #90: 0x000000010077fab8 emacs`funcall_general(fun=(struct Lisp_Subr 
*) $451 = 0x0000000100d10420, numargs=2, args=(struct Lisp_Symbol *) $454 = 
0x0000000101494c00) at eval.c:2929:12
    frame #91: 0x00000001007717cc emacs`Ffuncall(nargs=3, args=(struct 
Lisp_Symbol *) $457 = 0x0000000101494c00) at eval.c:2983:21
    frame #92: 0x000000010075c48c emacs`Fcall_interactively(function=(struct 
Lisp_Symbol *) $460 = 0x00000001079d23e8, record_flag=(struct Lisp_Symbol *) 
$463 = 0x0000000101494c00, keys=(struct Lisp_Vector *) $467 = 
0x0000000107fd7c28) at callint.c:785:21
    frame #93: 0x0000000100780668 emacs`funcall_subr(subr=0x0000000100d103c0, 
numargs=3, args=(struct Lisp_Symbol *) $470 = 0x0000000101494c00) at 
eval.c:3026:15
    frame #94: 0x00000001008918cc emacs`exec_byte_code(fun=(struct Lisp_Vector 
*) $475 = 0x00000001075c5d38, args_template=1025, nargs=1, args=(struct 
Lisp_Symbol *) $478 = 0x0000000101494c00) at bytecode.c:809:14
    frame #95: 0x000000010078c740 emacs`fetch_and_exec_byte_code(fun=(struct 
Lisp_Vector *) $483 = 0x00000001075c5d38, args_template=1025, nargs=1, 
args=(struct Lisp_Symbol *) $486 = 0x0000000101494c00) at eval.c:3069:10
    frame #96: 0x0000000100781a4c emacs`funcall_lambda(fun=(struct Lisp_Vector 
*) $491 = 0x00000001075c5d38, nargs=1, arg_vector=(struct Lisp_Symbol *) $494 = 
0x0000000101494c00) at eval.c:3141:9
    frame #97: 0x000000010077fb08 emacs`funcall_general(fun=(struct Lisp_Vector 
*) $499 = 0x00000001075c5d38, numargs=1, args=(struct Lisp_Symbol *) $502 = 
0x0000000101494c00) at eval.c:2933:12
    frame #98: 0x00000001007717cc emacs`Ffuncall(nargs=2, args=(struct 
Lisp_Symbol *) $505 = 0x0000000101494c00) at eval.c:2983:21
    frame #99: 0x00000001004d6448 emacs`call1(fn=(struct Lisp_Symbol *) $508 = 
0x0000000101499250, arg1=(struct Lisp_Symbol *) $511 = 0x00000001079d23e8) at 
lisp.h:3242:10
    frame #100: 0x00000001004ca430 emacs`command_loop_1 at keyboard.c:1493:13
    frame #101: 0x0000000100774d0c 
emacs`internal_condition_case(bfun=(emacs`command_loop_1 at keyboard.c:1268), 
handlers=(struct Lisp_Symbol *) $514 = 0x0000000101494c90, 
hfun=(emacs`cmd_error at keyboard.c:926)) at eval.c:1474:25
    frame #102: 0x00000001004c887c emacs`command_loop_2(handlers=(struct 
Lisp_Symbol *) $517 = 0x0000000101494c90) at keyboard.c:1123:11
    frame #103: 0x0000000100772804 emacs`internal_catch(tag=(struct Lisp_Symbol 
*) $520 = 0x00000001014a3c90, func=(emacs`command_loop_2 at keyboard.c:1119), 
arg=(struct Lisp_Symbol *) $523 = 0x0000000101494c90) at eval.c:1197:25
    frame #104: 0x00000001004c61a0 emacs`command_loop at keyboard.c:1101:2
    frame #105: 0x00000001004c5c08 emacs`recursive_edit_1 at keyboard.c:710:9
    frame #106: 0x00000001004c6d34 emacs`Frecursive_edit at keyboard.c:793:3
    frame #107: 0x00000001004be3c0 emacs`main(argc=2, argv=0x000000016fdff650) 
at emacs.c:2515:3
    frame #108: 0x00000001916abe50 dyld`start + 2544

(lldb) f 10
frame #10: 0x00000001008276ec emacs`print_vectorlike(obj=(struct Lisp_Sqlite *) 
$528 = 0x0000000117d4ccd8, printcharfun=(struct Lisp_Symbol *) $531 = 
0x0000000101494c00, escapeflag=true, buf=" name=0dd48080") at print.c:2020:6
   2017             i = sprintf (buf, " stmt=%p", XSQLITE (obj)->stmt);
   2018             strout (buf, i, i, printcharfun);
   2019           }
-> 2020         i = sprintf (buf, " name=%s", XSQLITE (obj)->name);
   2021         strout (buf, i, i, printcharfun);
   2022         printchar ('>', printcharfun);
   2023       }

(lldb) p obj
(Lisp_Object) $532 = 0x0000000117d4ccdd (struct Lisp_Sqlite *) $537 = 
0x0000000117d4ccd8
(lldb) p *$537
(struct Lisp_Sqlite) $538 = {
  header = (size = 4611686018863616000)
  db = 0x000000010dd48080
  stmt = 0x0000000000000000
  name = 0x0000000120c131f0 
"/var/folders/1d/k_6t25f94sl83szqbf8gpkrh0000gn/T/will-failVznhDE"
  finalizer = 0x00000001009a2bf4 (emacs`sqlite_free at sqlite.c:201)
  eof = false
  is_statement = false
}

buf comes from print_object

  char buf[max (sizeof "from..to..in " + 2 * INT_STRLEN_BOUND (EMACS_INT),
                max (sizeof " . #" + INT_STRLEN_BOUND (intmax_t),
                     max ((sizeof " with data 0x"
                           + (sizeof (uintmax_t) * CHAR_BIT + 4 - 1) / 4),
                          40)))];

which I find quite funny :-).

I haven't taken a close look, but I know that reading symbols goes so
great lengths of growing its buffer as needed.  Maybe this is missing in
this case.  Or something similar.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]