X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_em%2Finit.c;h=9011788e1f7f3732523580003703f43fd2d51c94;hb=c405cf118d3d31c2b6e1fe935671ecdaeb031f8f;hp=cc2f6534e3b27719e2ebdf06a55951e62f7420ed;hpb=2b65ec99f743dde3ee41083cf89623d4d9b8740e;p=rocksndiamonds.git diff --git a/src/game_em/init.c b/src/game_em/init.c index cc2f6534..9011788e 100644 --- a/src/game_em/init.c +++ b/src/game_em/init.c @@ -439,6 +439,20 @@ int open_all(void) pcxBitmapsX2[i]->clip_mask = clip_mask; + /* add clip mask GC */ + { + XGCValues clip_gc_values; + unsigned long clip_gc_valuemask; + + clip_gc_values.graphics_exposures = False; + clip_gc_values.clip_mask = pcxBitmapsX2[i]->clip_mask; + clip_gc_valuemask = GCGraphicsExposures | GCClipMask; + pcxBitmapsX2[i]->stored_clip_gc = XCreateGC(display, + window->drawable, + clip_gc_valuemask, + &clip_gc_values); + } + #if 0 printf("::: %ld, %ld, %ld, %ld, %ld, %ld, %ld\n", pcxBitmaps[i]->gc, @@ -491,6 +505,11 @@ int open_all(void) return(1); } +#if 1 + screenBitmap->drawable = screenPixmap; + scoreBitmap->drawable = scorePixmap; +#endif + spriteBitmap = XCreatePixmap(display, xwindow, TILEX, TILEY, 1); if(spriteBitmap == 0) { fprintf(stderr, "%s: \"%s\": %s: %s\n", progname, XDisplayName(arg_display), "failed to create pixmap", strerror(errno)); @@ -948,7 +967,9 @@ void close_all(void) if(privateColourmap) XFreeColormap(display, privateColourmap); if(privateColours) free(privateColours); if(privateFlags) free(privateFlags); +#if 0 if(display) XCloseDisplay(display); +#endif } /* ---------------------------------------------------------------------- */