Re: [XFree86] BadAccess errors using XShmPutImage

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



>   1) Does your X-server have SHM support?  "MIT-SHM" should show up in 
>      the list of extensions reported by xdpyinfo.

Yep - that extension is listed when i run xdpyinfo.

>   2) Does your operating system have SHM support?  This sort of thing
>      is often disabled for security reasons.

i'm not sure how to test this - i'm very much a x/unix novice - but after adding printf's to
another library i've been looking at (SDL), it seems that it is - SDL is certainly calling
XShmPutImage () successfully.

>   3) Programming errors on your part?  BadAccess is generated if:

Very likely.

>        a) the server doesn't know about the segment (you called 
>           XShmAttach on it didn't you?).

Yep - I do that.

>        b) The size is bad, that is, the segment is too small to
>           contain the source you specified (or the XImage is
>           improperly initialized).

I suspect that it is some kind of unitialized structure problem.

I chopped the return value tests and the error handler out of my code for clarity and tacked
it on the end of this message - might be something obvious.

Thanks.

cp


-------- snip --------
shmInfo.shmid = shmget ( IPC_PRIVATE, windowWidth * windowDepthBytes * windowHeight, IPC_CREAT
| 0777 );
shmInfo.shmaddr = (char *)shmat ( shmInfo.shmid, 0, 0);
shminfo.readOnly = False;
	
XShmAttach ( display, &shmInfo );

XSync ( display, True );
	
shmctl ( shmInfo.shmid, IPC_RMID, NULL );

pixels = shmInfo.shmaddr;

ximage = XShmCreateImage ( display, DefaultVisual ( display, screen ), windowDepth, ZPixmap,
shmInfo.shmaddr, &shmInfo, windowWidth, windowHeight );
	
XShmPutImage ( display, window, DefaultGC ( display, screen ), ximage, 0, 0, 0, 0,
windowWidth, windowHeight, False );

----------------------





> > i'm attempting to put together a simple test that creates a window, allocates a buffer in
> > memory and using an XImage and XShmPutImage () displays it on my screen.
> > 
> > i have a tiny piece of code that (as far as i know) does all the right things - it creates
> the
> > window but when i try to display the contents of my buffer via an XImage i get a message
> like
> > this:
> > 
> > X Error of failed request:  BadAccess (attempt to access private resource denied)
> >   Major opcode of failed request:  144 (MIT-SHM)
> >   Minor opcode of failed request:  3 (X_ShmPutImage)
> > 
> > i've seen this type of problem described in the newsgroups but there don't seem to be any
> > answers posted.
> > 
> > i check the return from all my previous calls and they're fine.
> > 
> > i'm using XFree86 version 4.3.0 (27 feb 2003), X Protocol version 11, rev 0, rel 6.6 and
> my OS
> > is NetBSD/i386 1.6 [elf].
_______________________________________________
XFree86 mailing list
XFree86@xxxxxxxxxxx
http://XFree86.Org/mailman/listinfo/xfree86

[Index of Archives]     [X Forum]     [Xorg]     [XFree86 Newbie]     [IETF Announce]     [Security]     [Font Config]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux Kernel]

  Powered by Linux