Created attachment 39752 [details] [review] The patch Lines of length greater than 46340 can be drawn with one of the coordinates being negative. However with dashed lines, miPolyBuildPoly overflows the int type when setting up edges for a section of the dashed line. This fix casts the results into long long so that the numbers don't wrap around and result in the line not being drawn at all.
Created attachment 39753 [details] Test case Compile with: gcc -o line line.c -lX11 to see the dotted line and with: gcc -DBREAK -o line line.c -lX11 The difference is that defining BREAK sets y2 to 31341 while otherwise it is set to 31341.
Comment on attachment 39752 [details] [review] The patch Please submit patches to xorg-devel for review/applying: http://www.x.org/wiki/Development/Documentation/SubmittingPatches
Thanks, done. The email is awaiting moderator approval since I am not subscribed to the list.
Fixed by git commit be7cf14c365c8ee0d69c4335e01316bcfcba69a4.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.