/*
 * -- $Header: /cec/src/nestor/servers/R3/shXlib/XCrCmap.c,v 1.1.1.1 90/04/23
 * 09:54:32 spanachi Exp $
 */
#include "copyright.h"

/* $XConsortium: XCrCmap.c,v 11.8 88/09/06 16:05:41 jim Exp $ */
/* Copyright    Massachusetts Institute of Technology    1986	 */

/* -- MULTIPLEX Extension -- */

#include "Xlibint.h"

/* -- additinol includes -- */
#include "resources.h"

Colormap
XCreateColormap (dpy, w, visual, alloc)
  register Display *dpy;
  Window w;
  Visual *visual;
  int alloc;
{
  register xCreateColormapReq *req;
  Colormap mid;

  LockDisplay (dpy);
  GetReq (CreateColormap, req);
  req->window = w;
  mid = req->mid = XAllocID (dpy);
  req->alloc = alloc;
  if (visual == CopyFromParent)
    req->visual = CopyFromParent;
  else
    req->visual = visual->visualid;

  /* -- store the new resource if necessary -- */
  if (XmuXStoreResources (dpy))
    /* -- second last arguments flags that this is a private colormap -- */
    XmuXCreateColormapInfo (dpy, mid, visual, w, True, alloc);

  UnlockDisplay (dpy);
  SyncHandle ();
  return (mid);
}
