uhley@tybalt.caltech.edu (John Uhley) (11/02/88)
In running an application which redefines the color maps for all windows under the root window of the display I seem to have done *something* which breaks my X server. Any future requests made to the server after I run my re-coloring code result in the following error message: X Protocol error: BadMatch, invalid parameter attributes Major opcode of failed request: 1 (X_CreateWindow) Minor opcode of failed request: 0 Resource id in failed request: 0x8006b Serial number of failed rquest: 30 Current seriel number in output stream: 38 Is this a known bug? Any previously opened X windows (ie: xterms) are still happy, but any new windows I try to create give my a BadMatch. John Uhley uhley@smaug.caltech.edu uhley@tybalt.caltech.edu
rws@EXPO.LCS.MIT.EDU (Bob Scheifler) (11/03/88)
In running an application which redefines the color maps for all windows
under the root window of the display I seem to have done *something* which
breaks my X server.
As usual, it would help a lot to know a lot more about exactly what your
code is doing. But, here is a wild guess. If you are creating a new
colormap and storing as the colormap attribute of the root window, and
then having that client terminate with a CloseDownMode of DestroyAll,
then the result is that the colormap gets destroyed and the root window
ends up with a colormap of None. All further attempts by clients to
create a top-level window with colormap CopyFromParent (which is what
most clients do) will get a BadMatch error because the colormap of
the parent is None.
The protocol probably ought to special-case the root window and
force its colormap back to the default colormap, but on the other
hand, you shouldn't be playing with global resources without
proper supervision. :-)