[comp.windows.x] 'awm' window manager: what's the newest

rang@cs.wisc.edu (Anton Rang) (08/18/90)

I'm one of the few people here who uses the 'awm' window manager, and
was wondering what the newest publically available version is.  I have
the version from February 1989, which I believe is patch level 9.  Is
there a newer one?  Where can I find it, if so?

  Please reply via e-mail, as I don't often read this group and this
probably isn't of general interest.  Thanks

	Anton (rang@cs.wisc.edu)
   
+---------------------------+------------------+-------------+
| Anton Rang (grad student) | rang@cs.wisc.edu | UW--Madison |
+---------------------------+------------------+-------------+

stolcke@ICSI.Berkeley.EDU (Andreas Stolcke) (08/26/90)

In article <RANG.90Aug17125059@jaguar.cs.wisc.edu>, rang@cs.wisc.edu
(Anton Rang) writes:
|> I'm one of the few people here who uses the 'awm' window manager,
and
|> was wondering what the newest publically available version is. 

|>   Please reply via e-mail, as I don't often read this group and this
|> probably isn't of general interest.  Thanks
|> 

This may be of general interest.  I had no trouble compiling the latest
version of awm under R4, but found it couldn't parse it's defaults
correctly
because the algorithm changed from R3 to R4.  The solution was to grab
lib/X/XGetDflt.c from the R3 dist and link it with awm.

--
Andreas Stolcke
International Computer Science Institute	stolcke@icsi.Berkeley.EDU
1957 Center St., Suite 600, Berkeley, CA 94704	(415) 642-4274 ext. 126

casey@gauss.llnl.gov (Casey Leedom) (08/29/90)

| From: stolcke@ICSI.Berkeley.EDU (Andreas Stolcke)
| 
| I had no trouble compiling the latest version of awm under R4, but found it
| couldn't parse it's defaults correctly because the algorithm changed from
| R3 to R4.  The solution was to grab lib/X/XGetDflt.c from the R3 dist and
| link it with awm.

  Or, you can apply the following patch to the R4 source.  Note that MIT has
specifically decided *NOT* to support this ability in future releases.  This
is just a work around hack.  All applications should be converted to do
something more standard.  Unfortunately for awm that may be fairly difficult.

Casey


%%% mit/lib/X/XGetDflt.c:
%%% 
%%% Fix XGetDefault so that XGetDefault(dpy, program, name) works when name
%%% containing a compound string (``foo.bar'', etc.)

*** mit/lib/X/XGetDflt.c-dist	Tue Jan 30 18:35:20 1990
--- mit/lib/X/XGetDflt.c	Sun Feb 11 22:32:00 1990
***************
*** 124,134 ****
  	register char *name;		/* name of option program wants */
  #endif
  {					/* to get, for example, "font"  */
! 	XrmName names[3];
! 	XrmClass classes[3];
  	XrmRepresentation fromType;
  	XrmValue result;
  	char *progname;
  
  	/*
  	 * strip path off of program name (XXX - this is OS specific)
--- 124,136 ----
  	register char *name;		/* name of option program wants */
  #endif
  {					/* to get, for example, "font"  */
! 	XrmName names[100];	/* 100: YECH -- and XrmStringToNameList */
! 	XrmClass classes[100];	/* does not even let us pass in this limit */
  	XrmRepresentation fromType;
  	XrmValue result;
  	char *progname;
+ 	register XrmClass classp;
+ 	register int i;
  
  	/*
  	 * strip path off of program name (XXX - this is OS specific)
***************
*** 150,160 ****
  	UnlockDisplay(dpy);
  
  	names[0] = XrmStringToName(progname);
- 	names[1] = XrmStringToName(name);
- 	names[2] = NULLQUARK;
  	classes[0] = XrmStringToClass("Program");
! 	classes[1] = XrmStringToClass("Name");
! 	classes[2] = NULLQUARK;
  	(void)XrmQGetResource(dpy->db, names, classes, &fromType, &result);
  	return (result.addr);
  }
--- 152,163 ----
  	UnlockDisplay(dpy);
  
  	names[0] = XrmStringToName(progname);
  	classes[0] = XrmStringToClass("Program");
! 	XrmStringToNameList(name, &names[1]);
! 	classp = XrmStringToClass("Name");
! 	for (i = 1; names[i] != NULLQUARK; i++)
! 		classes[i] = classp;
! 	classes[i] = NULLQUARK;
  	(void)XrmQGetResource(dpy->db, names, classes, &fromType, &result);
  	return (result.addr);
  }