[comp.windows.x] Wcl/Motif crash during create

acs@pccuts.pcc.amdahl.com (Tony Sumrall) (03/29/91)

I've got (what I consider to be) a strange problem with Wcl 1.05, Motif
1.1.1 and X11R4 PL18.  I have a wcCallback on a Motif widget.  Wcl
converts the wcCallback string to an XtCallbackList nicely when it
retrieves the value from the resource database.  Xt subsequently compiles
the external callback form into its internal form just fine.  During the
creation process, Motif adds callbacks to the callback list with
XtAddCallback[s] -- the problem is that Xt tromps on Wcl's callback list
during *one* of these calls.

Wcl uses XtGetSubResources() to retrieve the value of the wcCallback (this
causes the conversion from string to callback) prior to the XtCreate()
call then does another XtGetSubresources for the classname after the
XtCreate().  The wcCallback resource returned from each of the
XtGetSubResources() calls begins with an external form (XtCallbackList) but
is followed by a Motif callback in internal form.  As the format of the 2
lists is incompatible, Wcl crashed when it loops through the callback list
calling each of the callbacks, in turn, in CallCreationCallbacks().

I've got this problem to repeat on 2 different machines (a Sun SPARC 1 as
well as an Amdahl machine running UTS).  If anyone thinks they can shed
some light, *please* contact me at the address below.  I can provide a
small (49 line) resource file as well as a small change to Mri.c (about 20
lines).
-- 
Tony Sumrall acs@pcc.amdahl.com <=> amdahl!pcc.amdahl.com!acs

[ Opinions expressed herein are the author's and should not be construed
  to reflect the views of Amdahl Corp. ]