/*
 * -- $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);
}
