km@emory.uucp (Ken Mandelberg) (03/12/88)
I am trying to bring up the Andrew Toolkit from contrib.src for the x11r2 distribution on the Sun 3, running SunOS 3.4. Except for minor (but timeconsuming) problems, it all builds ok. When I run "cwm", I find that it seems to start up sanely. It rearragnes my windows, and responds properly to button 2 bringing up a set of cascading menus. The problem appears when I release button 2. Whether I choose an item or not cwm aborts and I get a core dump. If I select nothing the core is from cwm, if I do select an option the core is from runapp. In the cwm case, dbx tells me that cwm was in EventLoop when it aborted. Thats all I know so far. Has anyone got cwm running in this environment? Any suggestions? -- Ken Mandelberg | {decvax,sun!sunatl,gatech}!emory!km UUCP Emory University | km@emory BITNET Dept of Math and CS | km@emory.ARPA ARPA,CSNET Atlanta, GA 30322 | Phone: (404) 727-7963
salzman@garfield.RDL.COM (Gumby) (03/13/88)
In article <2743@emory.uucp> km@emory.uucp (Ken Mandelberg) writes: >I am trying to bring up the Andrew Toolkit from contrib.src >for the x11r2 distribution on the Sun 3, running SunOS 3.4. > >The problem appears when I release button 2. Whether I choose >an item or not cwm aborts and I get a core dump. If I select >nothing the core is from cwm, if I do select an option the >core is from runapp. In the cwm case, dbx tells me that cwm >was in EventLoop when it aborted. Thats all I know so far. > >Has anyone got cwm running in this environment? Any suggestions? I've got some of the Andrew code working under SunOS 3.5 on a 3/60. It was a real pain to build. I think those makefiles are somewhat brain damaged. There were some nil pointer bugs (trying to access a member of a pointer to a structure where the pointer was nil) in the cwm code and I assume they exist elsewhere. I didn't spend a lot of time on it, but I did get cwm to run ok. Here's an example (XV11R2/contrib/andrew/overhead/cwm): *** arbitrator.c~ Fri Mar 4 18:11:18 1988 --- arbitrator.c Fri Mar 4 18:11:18 1988 *************** *** 720,729 **** debug ( ("w 0x%x ", w) ); wqe = (struct wqe *) XLookUpAssoc (XDisplay, windowinfo, w); ! if (w == Destroyee->titlebar) debug ( ("It's the Destroyee's title bar - do nothing \n") ); ! else if (w == Destroyee->client) { debug ( ("It's the Destroyee's client window - cleaning up \n") ); free (Destroyee); --- 720,729 ---- debug ( ("w 0x%x ", w) ); wqe = (struct wqe *) XLookUpAssoc (XDisplay, windowinfo, w); ! if (Destroyee && (w == Destroyee->titlebar)) debug ( ("It's the Destroyee's title bar - do nothing \n") ); ! else if (Destroyee && (w == Destroyee->client)) { debug ( ("It's the Destroyee's client window - cleaning up \n") ); free (Destroyee); *************** *** 739,745 **** { debug ( ("Client destroyed its window - cleaning up \n") ); KillWindow (W); ! free (Destroyee); memdebug ( ("FREE wqe 0x%x %d bytes \n", Destroyee, sizeof (struct wqe) ) ); Destroyee = 0; --- 739,746 ---- { debug ( ("Client destroyed its window - cleaning up \n") ); KillWindow (W); ! if (Destroyee) ! free (Destroyee); memdebug ( ("FREE wqe 0x%x %d bytes \n", Destroyee, sizeof (struct wqe) ) ); Destroyee = 0; ========= I suppose some compilers will let you get away with it, wether they should or not it's an assumption that never should be made.... Runaps probably has similar problems. I'd love to see the whole thing working. Anyone else get anywhere on this? Anyone figure out what's wrong with xmh??? -Isaac. -- * Isaac Salzman - Sr. Systems Analyst ---- * Research & Development Labs (RDL) /o o/ / * 5721 W. Slauson Ave., Culver City, CA. 90230-6509 | v | | * AT&T: +1 213 410 1244, x118 _| |_/ * ARPA: salzman@rdlvax.RDL.COM / | | * UUCP: ...!{psivax,csun,sdcrdcf,ttidca}!rdlvax!salzman | | |
km@emory.uucp (Ken Mandelberg) (03/13/88)
In article <2743@emory.uucp> km@emory.uucp (Ken Mandelberg) writes: >I am trying to bring up the Andrew Toolkit from contrib.src >for the x11r2 distribution on the Sun 3, running SunOS 3.4. > >The problem appears when I release button 2. Whether I choose >an item or not cwm aborts and I get a core dump. Well I bit the bullet, compiled with symbols and let dbx find the problem for me. As usual, the Sun was chasing a null pointer that presumably doesn't bother a Vax. I'm a little surprised this didn't show up in testing on at least one of the non Vax machines. I will include a diff of the fix. Its not clear to me how I submit an Andrew bug report. If someone will tell me, I'll be glad to do it. Fix for overhead/cwm/arbitrator.c *** arbitrator.c Sun Mar 13 00:29:49 1988 --- arbitrator.c.orig Thu Mar 10 19:32:20 1988 *************** *** 720,729 **** debug ( ("w 0x%x ", w) ); wqe = (struct wqe *) XLookUpAssoc (XDisplay, windowinfo, w); ! if (Destroyee && w == Destroyee->titlebar) debug ( ("It's the Destroyee's title bar - do nothing \n") ); ! else if (Destroyee && w == Destroyee->client) { debug ( ("It's the Destroyee's client window - cleaning up \n") ); free (Destroyee); --- 720,729 ---- debug ( ("w 0x%x ", w) ); wqe = (struct wqe *) XLookUpAssoc (XDisplay, windowinfo, w); ! if (w == Destroyee->titlebar) debug ( ("It's the Destroyee's title bar - do nothing \n") ); ! else if (w == Destroyee->client) { debug ( ("It's the Destroyee's client window - cleaning up \n") ); free (Destroyee); ******* -- Ken Mandelberg | {decvax,sun!sunatl,gatech}!emory!km UUCP Emory University | km@emory BITNET Dept of Math and CS | km@emory.ARPA ARPA,CSNET Atlanta, GA 30322 | Phone: (404) 727-7963
rapatel@topaz.rutgers.edu ( Rakesh Patel) (03/15/88)
I found the same *exact* problem previously. If you run the applications under uwm it should solve that particular problem. I did fix it, but due to various problems, I had removed the sources and rebuilt from scratch. I'll try to pin point it again and send a message about it. Rakesh Patel.