I attempted some basic debugging but although I can put a stop in the
32-bit code and halt within "configure_event" (which is where the
variables in question are mostly set), this doesn't work in the 64-bit
version (see sample session below).
I wonder if this is the root of the problem - the assertion is
correctly flagging that these two variables have not been set and
somehow the assertion is being invoked out of sequence.
coclass 'jglcanvas'
13!:3 'configure_event 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
18 19 20 21 22 23 24 25 26 27 28 29 30 : 0 1 2 3 4 5 6 7 8 9 10 11 12
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30'
coclass 'base'
NB. Just because I'm paranoid...
13!:3 'configure_event_jglcanvas_ 0 1 2 3 4 5 6 7 8 9 10 11 12 13
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 : 0 1 2 3 4 5 6 7 8
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30'
13!:0]1
plot 1 o. i:5j99
|assertion failure: cairo_glcmds
| 0~:gtkcr,gtkpl
|cairo_glcmds[1]
13!:1''
|assertion failure
* 0~:gtkcr,gtkpl
|cairo_glcmds[1]
|glcmds__l[0]
| glcmds__l y[[l=.locGL2_jgl2_
|glcmds[0]
| glcmds buf
|gtk_gpapply[0]
| gtk_gpapply''
|gtk_gpinit[4]
| gtk_gpinit''
|gtk_paintit[0]
| gtk_paintit 0 0,Cw,Ch
|gtk_paint[2]
| gtk_paint''
|gtk_show[6]
|pd_gtk[0]
| fn~arg
|pd_show[7]
| r=. ('pd_',ndx pick hdr)~ndx pick prm
|pdcmd[18]
| pdcmd boxcmd dat
|pd[6]
| pd'show'
|plot_jwplot_[:30]
| '' plot_jwplot_ y
|plot[1]
| plot 1 o.i:5j99
NB. Trying to stop in the (older version) 32-bit code succeeds:
13!:0]1
plot i.10
|stop: configure_event_10_
| 'widget event data'=.y
|configure_event_10_[0]
13!:1''
|stop
* 'widget event data'=.y
|configure_event_10_[0]
| z=. h~w
|cdcallback[10]
| cdcallback''
|gtk_widget_show_all_jgtk_[0]
| gtk_widget_show_all_jgtk_ PFormhwnd
|gtk_show[8]
|pd_gtk[0]
| fn~arg
|pd_show[7]
| r=. ('pd_',ndx pick hdr)~ndx pick prm
|pdcmd[18]
| pdcmd boxcmd dat
|pd[6]
| pd'show'
|plot_jwplot_[:30]
| '' plot_jwplot_ y
|plot[1]
| plot i.10
NB. You can see that these two stacks differ about 5 calls deep, at
"gtk_show[8]" (32-bit) versus "gtk_show[6]" (64-bit).
--
Devon McCormick, CFA
^me^ at acm.
org is my
preferred e-mail
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm