[comp.windows.x.motif] Motif program dies on popup menus?

aihaug@AUSTIN.LOCKHEED.COM (Daniel A Haug) (04/09/91)

I'm having an unusual problem, and am desparately in need of some help
in solving it.  My motif application has been developed on a Sparcstation
running SunOS4.1 and Motif 1.1.  It runs fine there.  I move this
application to another workstation, in another lab, which is running
SunOS4.1, but does not have Motif installed.  In that environment, the
program runs fine up until I bring up a popup menu.  The menu never
appears, but rather, the program dies with the following X error:

   Request Major code  28
   Request Minor code  0
   Resource ID         0x80000e
   Error Serial        #205
   Current Serial      #206

There is nothing particularly funny or unusual about my program.  I had
suspected that the problem may be the incorrect patch level of the R4
server running on that host.  However, I brought my version down and
installed it, and the same error happened.  I brought down my own
shared libraries too, but I'm not sure if those libraries were being
used (don't know enough about shared libraries...).

I know this isn't much, but can anyone shed some light on this?  I'm
also very interested in what types of debugging tools I should use
to try to track this down myself.

thanks,

dan haug
-- 
Internet: haug@austin.lockheed.com
UUCP:     ut-emx!lad-shrike!aihaug
Phone:    (512) 386-4634

tjhorton@vis.toronto.edu ("Timothy J. Horton") (04/11/91)

aihaug@AUSTIN.LOCKHEED.COM (Daniel A Haug) writes:
>[...] the program dies with the following X error:
>
>   Request Major code  28
>   Request Minor code  0
>   Resource ID         0x80000e
>   Error Serial        #205
>   Current Serial      #206
>
>[...]I'm also very interested in what types of debugging tools I should use
>to try to track this down myself.

Run your process with _Xdebug set to 1 (or is that _xdebug?), or make a call
to XSynchronise, so that you can trace the error to the line which causes it.

These messages can tell you a lot, by the way.  Look up the Request Major Code
in /usr/include/X11/Xproto.h (on most machines).  Code 28 is defined there:
    #define X_GrabButton 28
meaning that a call to XGrabButton caused the problem (a passive grab of a
pointer button).  That may not mean much, but it narrows down the problem
in many cases.  Look, especially, for resource id's of 0.  In this case,
however, there doesn't seem to have been a return code with the error
(one of BadAccess, BadAlloc, BadCursor, BadValue, or BadWindow), or you
forgot to include the whole error message, so I can't even guess what is wrong.

Tim
-------------------------------------------------------------------------
Timothy Horton, unix software consulting
574 Spadina Avenue, Toronto, Canada M5S 2H2
tjhorton@vis.toronto.edu   (or) utai!tjhorton