Re: XBoard 4.9.0 release

Joshua Pettus <[email protected]> Tue, 10 May 2016 19:36:10 -0400
Newsgroups gmane.comp.gnu.xboard.devel
Message-ID <[email protected]>
Thanks Harm,

I gave it a try, and now loads correctly. Thanks.  But now when I save a 
new theme (testing out the new DataDir to ~~/ translation) XBoard now 
crashes :

XBoard: line 69:   889 Segmentation fault: 11

I did a backtrace  but I bet it's the translation that's giving us trouble:

(lldb) thread backtrace all
* thread #1: tid = 0xa99f, 0x00007fff980d4152 libsystem_c.dylib`strlen + 
18, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS 
(code=1, address=0x11cfe0)
   * frame #0: 0x00007fff980d4152 libsystem_c.dylib`strlen + 18
     frame #1: 0x00007fff98119a54 libsystem_c.dylib`__vfprintf + 5713
     frame #2: 0x00007fff981426c9 libsystem_c.dylib`__v2printf + 669
     frame #3: 0x00007fff98126915 libsystem_c.dylib`_vsnprintf + 596
     frame #4: 0x00007fff981269ca libsystem_c.dylib`vsnprintf + 80
     frame #5: 0x00007fff98157d08 libsystem_c.dylib`__snprintf_chk + 128
     frame #6: 0x00000001000591d6 xboard-bin`LoadTheme + 401
     frame #7: 0x0000000100081d3d xboard-bin`BoardOptionsOK + 156
     frame #8: 0x0000000100080745 xboard-bin`GenericReadout + 2575
     frame #9: 0x00000001000a1b81 xboard-bin`GenericPopDown + 174
     frame #10: 0x0000000100bdd9a5 
libgobject-2.0.0.dylib`g_cclosure_marshal_VOID__INTv + 110
     frame #11: 0x0000000100bdca15 
libgobject-2.0.0.dylib`_g_closure_invoke_va + 433
     frame #12: 0x0000000100bf04c4 
libgobject-2.0.0.dylib`g_signal_emit_valist + 1201
     frame #13: 0x0000000100bf13a3 libgobject-2.0.0.dylib`g_signal_emit 
+ 148
     frame #14: 0x0000000100bdca15 
libgobject-2.0.0.dylib`_g_closure_invoke_va + 433
     frame #15: 0x0000000100bf04c4 
libgobject-2.0.0.dylib`g_signal_emit_valist + 1201
     frame #16: 0x0000000100bf13a3 libgobject-2.0.0.dylib`g_signal_emit 
+ 148
     frame #17: 0x000000010037f5a8 
libgtk-quartz-2.0.0.dylib`gtk_real_button_released + 52
     frame #18: 0x0000000100bdca15 
libgobject-2.0.0.dylib`_g_closure_invoke_va + 433
     frame #19: 0x0000000100bf04c4 
libgobject-2.0.0.dylib`g_signal_emit_valist + 1201
     frame #20: 0x0000000100bf13a3 libgobject-2.0.0.dylib`g_signal_emit 
+ 148
     frame #21: 0x000000010037cd7a 
libgtk-quartz-2.0.0.dylib`gtk_button_button_release + 15
     frame #22: 0x000000010041d67c 
libgtk-quartz-2.0.0.dylib`_gtk_marshal_BOOLEAN__BOXED + 169
     frame #23: 0x0000000100bdcc5e 
libgobject-2.0.0.dylib`g_closure_invoke + 399
     frame #24: 0x0000000100bef6e1 
libgobject-2.0.0.dylib`signal_emit_unlocked_R + 4564
     frame #25: 0x0000000100bf0f8a 
libgobject-2.0.0.dylib`g_signal_emit_valist + 3959
     frame #26: 0x0000000100bf13a3 libgobject-2.0.0.dylib`g_signal_emit 
+ 148
     frame #27: 0x0000000100516670 
libgtk-quartz-2.0.0.dylib`gtk_widget_event_internal + 711
     frame #28: 0x0000000100416d71 
libgtk-quartz-2.0.0.dylib`gtk_propagate_event + 300
     frame #29: 0x0000000100417d37 
libgtk-quartz-2.0.0.dylib`gtk_main_do_event + 1214
     frame #30: 0x00000001007ea0f2 
libgdk-quartz-2.0.0.dylib`gdk_event_dispatch + 87
     frame #31: 0x0000000100c5d3fe 
libglib-2.0.0.dylib`g_main_context_dispatch + 346
     frame #32: 0x0000000100c5fc2f 
libglib-2.0.0.dylib`g_main_context_iterate + 385
     frame #33: 0x0000000100c5fe01 
libglib-2.0.0.dylib`g_main_context_iteration + 65
     frame #34: 0x0000000100417eb2 
libgtk-quartz-2.0.0.dylib`gtk_main_iteration + 33
     frame #35: 0x000000010009c9cf xboard-bin`main + 5481
     frame #36: 0x0000000100007780 xboard-bin`start + 52

   thread #3: tid = 0xa9a3, 0x00007fff947a5efa 
libsystem_kernel.dylib`kevent_qos + 10, queue = 
'com.apple.libdispatch-manager'
     frame #0: 0x00007fff947a5efa libsystem_kernel.dylib`kevent_qos + 10
     frame #1: 0x00007fff9c6d9165 libdispatch.dylib`_dispatch_mgr_invoke 
+ 216
     frame #2: 0x00007fff9c6d8dcd libdispatch.dylib`_dispatch_mgr_thread 
+ 52

   thread #6: tid = 0xa9a4, 0x00007fff947a55e2 
libsystem_kernel.dylib`__workq_kernreturn + 10
     frame #0: 0x00007fff947a55e2 
libsystem_kernel.dylib`__workq_kernreturn + 10
     frame #1: 0x00007fff8a8ed578 
libsystem_pthread.dylib`_pthread_wqthread + 1283
     frame #2: 0x00007fff8a8eb341 libsystem_pthread.dylib`start_wqthread 
+ 13

   thread #7: tid = 0xaa9d, 0x00007fff947a55e2 
libsystem_kernel.dylib`__workq_kernreturn + 10
     frame #0: 0x00007fff947a55e2 
libsystem_kernel.dylib`__workq_kernreturn + 10
     frame #1: 0x00007fff8a8ed578 
libsystem_pthread.dylib`_pthread_wqthread + 1283
     frame #2: 0x00007fff8a8eb341 libsystem_pthread.dylib`start_wqthread 
+ 13

   thread #8: tid = 0xaa9e, 0x00007fff947a55e2 
libsystem_kernel.dylib`__workq_kernreturn + 10
     frame #0: 0x00007fff947a55e2 
libsystem_kernel.dylib`__workq_kernreturn + 10
     frame #1: 0x00007fff8a8ed578 
libsystem_pthread.dylib`_pthread_wqthread + 1283
     frame #2: 0x00007fff8a8eb341 libsystem_pthread.dylib`start_wqthread 
+ 13

   thread #9: tid = 0xaaa0, 0x00007fff947a55e2 
libsystem_kernel.dylib`__workq_kernreturn + 10
     frame #0: 0x00007fff947a55e2 
libsystem_kernel.dylib`__workq_kernreturn + 10
     frame #1: 0x00007fff8a8ed578 
libsystem_pthread.dylib`_pthread_wqthread + 1283
     frame #2: 0x00007fff8a8eb341 libsystem_pthread.dylib`start_wqthread 
+ 13

   thread #10: tid = 0xaace, 0x00007fff9479ef72 
libsystem_kernel.dylib`mach_msg_trap + 10, name = 'com.apple.NSEventThread'
     frame #0: 0x00007fff9479ef72 libsystem_kernel.dylib`mach_msg_trap + 10
     frame #1: 0x00007fff9479e3b3 libsystem_kernel.dylib`mach_msg + 55
     frame #2: 0x00007fff94d671c4 
CoreFoundation`__CFRunLoopServiceMachPort + 212
     frame #3: 0x00007fff94d6668c CoreFoundation`__CFRunLoopRun + 1356
     frame #4: 0x00007fff94d65ed8 CoreFoundation`CFRunLoopRunSpecific + 296
     frame #5: 0x00007fff96d17e99 AppKit`_NSEventThread + 149
     frame #6: 0x00007fff8a8ed99d libsystem_pthread.dylib`_pthread_body 
+ 131
     frame #7: 0x00007fff8a8ed91a libsystem_pthread.dylib`_pthread_start 
+ 168
     frame #8: 0x00007fff8a8eb351 libsystem_pthread.dylib`thread_start + 13

   thread #11: tid = 0xaad4, 0x00007fff947a507a 
libsystem_kernel.dylib`__select + 10
     frame #0: 0x00007fff947a507a libsystem_kernel.dylib`__select + 10
     frame #1: 0x0000000100c67f59 libglib-2.0.0.dylib`g_poll + 325
     frame #2: 0x00000001007eac38 
libgdk-quartz-2.0.0.dylib`select_thread_func + 300
     frame #3: 0x00007fff8a8ed99d libsystem_pthread.dylib`_pthread_body 
+ 131
     frame #4: 0x00007fff8a8ed91a libsystem_pthread.dylib`_pthread_start 
+ 168
     frame #5: 0x00007fff8a8eb351 libsystem_pthread.dylib`thread_start + 13


Josh


On 5/10/16 3:31 AM, H.G. Muller wrote:
> This looks like the line simply gets clipped because of insufficient 
> buffer size. And on trying to activate it, it might be clipped even 
> shorter than on writing. Encountering an invalid option name still is 
> a fatal error when the options were not coming from a settings file 
> (where recovery is possible by skipping to the next line, and where it 
> was pretty annoying that after running a newer test version of 
> WinBoard, the old version would crash because of the new options it 
> did not knowthat were stored in the settings file). The "logout" is 
> now always sent to an ICS after a fatal error, to prevent the ICS from 
> starting a new game when XBoard is waiting for user confirmation of 
> the fatal-error popup before actually exiting (which you would then 
> forfeit on time).
>
> I will check which buffers the theme definition passes through, and 
> enlarge those. It would of course also be helpful if at some point 
> (e.g. creating the line in the -themeNames option in LoadTheme()) 
> XBoard would recognize the long path names obtained from the file 
> chooser as being in its DATADIR (which here is 
> "/Applications/Chess/Xboard/XBoard.app/Contents/Resources/share/xboard"?), 
> and replace it by ~~. This would of course not help against general 
> use of long path names, but it would surely make the theme lines more 
> readable in the typical case:
>
> "Marble(Blue)" -ubt true -lbtf 
> "~~/themes/textures/Transparent/stone-marble2-texture.png" -dbtf 
> "~~/themes/textures/Transparent/stone-marble1-texture.png" -lbtm 1 
> -dbtm 1 -lsc #cbdce1 -dsc #1b6883 -ub false -upf false -pid 
> "~~/themes/Habsburg" -trueColors false -wpc #ededed -bpc #000000 -hsc 
> #fff826 -phc #FF0000
>