Browse Source

software: Draw a single pixel for a line with the same start/end point.

Otherwise it would drop it, which seems like a bug to me, as it normally
fills the endpoint on lines.

Reference #2006.
Ryan C. Gordon 3 years ago
parent
commit
86c0cf2bb1
1 changed files with 2 additions and 2 deletions
  1. 2 2
      src/render/software/SDL_drawline.c

+ 2 - 2
src/render/software/SDL_drawline.c

@@ -193,8 +193,8 @@ SDL_DrawLines(SDL_Surface * dst, const SDL_Point * points, int count,
             continue;
         }
 
-        /* Draw the end if it was clipped */
-        draw_end = (x2 != points[i].x || y2 != points[i].y);
+        /* Draw the end if the whole line is a single point or it was clipped */
+        draw_end = ((x1 == x2) && (y1 == y2)) || (x2 != points[i].x || y2 != points[i].y);
 
         func(dst, x1, y1, x2, y2, color, draw_end);
     }