Lines Matching defs:shminfo
538 void X11SD_DropSharedSegment(XShmSegmentInfo *shminfo)
540 if (shminfo != NULL) {
541 XShmDetach(awt_display, shminfo);
542 shmdt(shminfo->shmaddr);
543 /* REMIND: we don't need shmctl(shminfo->shmid, IPC_RMID, 0); here. */
552 XShmSegmentInfo *shminfo;
556 shminfo = malloc(sizeof(XShmSegmentInfo));
557 if (shminfo == NULL) {
560 memset(shminfo, 0, sizeof(XShmSegmentInfo));
563 xsdo->depth, ZPixmap, NULL, shminfo,
566 free((void *)shminfo);
569 shminfo->shmid =
572 if (shminfo->shmid < 0) {
576 free((void *)shminfo);
581 shminfo->shmaddr = (char *) shmat(shminfo->shmid, 0, 0);
582 if (shminfo->shmaddr == ((char *) -1)) {
583 shmctl(shminfo->shmid, IPC_RMID, 0);
587 free((void *)shminfo);
592 shminfo->readOnly = False;
595 xShmAttachResult = TryXShmAttach(env, awt_display, shminfo);
602 shmctl(shminfo->shmid, IPC_RMID, 0);
608 shmdt(shminfo->shmaddr);
609 free((void *)shminfo);
614 img->data = shminfo->shmaddr;
615 img->obdata = (char *)shminfo;
639 XShmSegmentInfo *shminfo;
657 shminfo = (XShmSegmentInfo*)img->obdata;
664 shminfo->shmaddr, shminfo,
667 X11SD_DropSharedSegment(shminfo);
671 xsdo->shmPMData.shmSegInfo = shminfo;