Hi William,

The VNC Free Edition 4.1.2 release doesn't provide OpenGL support (via the
GLX extension) at all, and is not built against the Xorg 7.1 server, so it
sounds like you're using a third-party server based upon VNC Free Edition
4.1.2.

Looking at the dimensions you've listed below, the "ClipXXX" ones are way
beyond the 16-bit range supported by the standard X server's region-handling
code, which would explain the crash you're seeing.

Regards,

--
Wez @ RealVNC Ltd
 

> -----Original Message-----
> From: [EMAIL PROTECTED] 
> [mailto:[EMAIL PROTECTED] On Behalf Of William K. Foster
> Sent: 17 December 2007 04:47
> To: vnc-list@realvnc.com
> Subject: Server crashes when OpenGL draws very long lines 
> extending off screen
> 
> Hello,
> 
> I have tracked down an issue where our OpenGL application can 
> cause the real VNC server Xvnc v4.1.2 to crash by executing 
> the following C++ code:
> 
>   glBegin(GL_LINES);
>   glVertex2i(x1, y1);
>   glVertex2i(x2, y2);
>   glEnd();
> 
> Then on the subsequent call to:
> 
>   glXMakeCurrentReadSGI();
> 
> The application detects that the socket has been closed 
> (becaus the server has crashed) and this results in our 
> application exiting with the Qt message:
> 
>   Qt-subapplication: Fatal IO error: client killed
> 
> The crash only occurs when the values for x1, x2, y1, and y2 
> are such that the line being drawn extends way beyond the 
> window.  That is, it occurs when I have zoomed in very far 
> into my data to be visualized via OpenGL.
> 
> For example, these settings for the line to draw caused a crash:
>    x1 = 657250 x2 = 657250 y1 = 456500 y2 = 954250 Where the 
> window is defined with these coordinates:
>    ClipRight = 667799 ClipLeft = 653992 ClipTop = 677810 
> ClipBottom 670455 And the number of pixels of the window is 
> defined to be:
>    Width = 1774 and Height = 945
> 
> In this case the y dimension of the line extends beyond the 
> window from 456500 to 954250, a distance of 497750 units 
> where the window is defined to run from 653992 to 670455, a 
> distance of 16463 units, thus making the line span a distance 
> of over thirty window heights with about 12 spans heights 
> below the window and the other 18 above the window.
> 
> I have a work around to conditionally clip the coordinates to 
> the screen when the server is a VNC server, but I would 
> expect that since this only crashes VNC X Displays, that this 
> is an issue with the OpenGL library being used by VNC and 
> thus deserves to be fixed there.
> 
> Is this the correct place to report this issue or can you 
> tell me what OpenGL library is used by real VNC's Free 
> Edition Xvnc on Suse 10 linux so that I can report the issue 
> to the maintainers of that OpenGL library.  It also states 
> that underlying X server release is 70100000.
> 
> Thanks.
> 
> -William
> _______________________________________________
> VNC-List mailing list
> VNC-List@realvnc.com
> To remove yourself from the list visit:
> http://www.realvnc.com/mailman/listinfo/vnc-list
> 
_______________________________________________
VNC-List mailing list
VNC-List@realvnc.com
To remove yourself from the list visit:
http://www.realvnc.com/mailman/listinfo/vnc-list

Reply via email to