Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!apple!rutgers!bellcore!dino!dana From: dana@dino.bellcore.com (Dana A. Chee) Newsgroups: comp.windows.x Subject: Re: Fatal Sun R4 server bug Message-ID: <22014@bellcore.bellcore.com> Date: 11 Apr 90 21:33:35 GMT References: <3078@goanna.oz.au> Sender: news@bellcore.bellcore.com Reply-To: dana@thumper.bellcore.com Organization: Packet Communications Research Group (Bellcore) Lines: 58 In article <3078@goanna.oz.au>, dmh@goanna.oz.au (Darren Hosking) writes: |> Running the ULE (Utah raster toolkit) image display program getX11 causes |> the following error and subsequent server crash on a Sun 3 (OS 3.5): |> |> sunCG4CUpdateColormap: Invalid argument |> |> Fatal server bug! |> sunCG4CUpdateColormap: FBIOPUTCMAP failed |> |> We are running X11R4 with fixes 1 to 9. Does anyone have any idea of what |> the problem (and solution) is? |> |> Thanks in advance, dmh |> |> Darren Hosking ACSnet: dmh@goanna.oz |> Department Of Computer Science ARPA: dmh%goanna.oz.au@uunet.uu.net |> RMIT CSNET: dmh%goanna.oz.au@australia |> GPO Box 2476V UUCP: ...!uunet!goanna.oz.au!dmh |> Melbourne Vic., Australia 3001 I know the cure, but not the complete disease. The problems are many, but here's a brief description: 1) getX11 is a very naughty boy trying to install its own colormap without setting the window resource and letting the window manager do it. 2) more important, getX11 creates a colormap, puts absolutely nothing in it, and then installs it. No telling what the server receives but it makes it REALLY unhappy. Below is the code: color_map = XCreateColormap (dpy, root_window, visual, AllocNone ); if (color_map == NULL) { fprintf (stderr, "Could not create color map for visual\n"); exit (EXIT_STATUS_FAILURE); } XInstallColormap (dpy, color_map); 3) The sun server advertises that it supports all sorts of visuals that it doesn't have. getX11 likes to chose DirectColor if it can find it. I have no idea (haven't had time to look) what effect allocating a colormap under DirectColor has on a PseudoColor device. Anyway, my fix was to nuke the CreateColormap/InstallColormap stuff for now (this was for someone else, and he needed it to run NOW), set: color_map = DefaultColormap (dpy, screen); and run it as pseudocolor. It would be nicer if it was really fixed but that's enought to hold it for now. +*************************************************************************+ * Dana Chee (201) 829-4488 * * Bellcore * * Room 2Q-250 * * 445 South Street ARPA: dana@bellcore.com * * Morristown, NJ 07960-1910 UUCP: {gateways}!bellcore!dana * +*************************************************************************+