diff --git a/mozilla/gfx/src/gtk/nsRenderingContextGTK.cpp b/mozilla/gfx/src/gtk/nsRenderingContextGTK.cpp index a9ee1240422..1e28ecc497f 100644 --- a/mozilla/gfx/src/gtk/nsRenderingContextGTK.cpp +++ b/mozilla/gfx/src/gtk/nsRenderingContextGTK.cpp @@ -1109,9 +1109,15 @@ NS_IMETHODIMP nsRenderingContextGTK::FillEllipse(nscoord aX, nscoord aY, nscoord UpdateGC(); - ::gdk_draw_arc(mSurface->GetDrawable(), mGC, FALSE, - x, y, w, h, - 0, 360 * 64); + if (w < 16 || h < 16) { + /* Fix for bug 91816 ("bullets are not displayed correctly on certain text zooms") + * De-uglify bullets on some X servers: + * 1st: Draw... */ + ::gdk_draw_arc(mSurface->GetDrawable(), mGC, FALSE, + x, y, w, h, + 0, 360 * 64); + /* ...then fill. */ + } ::gdk_draw_arc(mSurface->GetDrawable(), mGC, TRUE, x, y, w, h, 0, 360 * 64); diff --git a/mozilla/gfx/src/xlib/nsRenderingContextXlib.cpp b/mozilla/gfx/src/xlib/nsRenderingContextXlib.cpp index e1d5030c19d..50fe9149c47 100644 --- a/mozilla/gfx/src/xlib/nsRenderingContextXlib.cpp +++ b/mozilla/gfx/src/xlib/nsRenderingContextXlib.cpp @@ -1043,18 +1043,20 @@ nsRenderingContextXlib::FillEllipse(nscoord aX, nscoord aY, nscoord aWidth, nsco UpdateGC(); Drawable drawable; mRenderingSurface->GetDrawable(drawable); - /* Fix for bug 91816 ("bullets are not displayed correctly on certain text zooms") - * De-uglify bullets on some X servers: - * 1st: Draw... */ - ::XDrawArc(mDisplay, - drawable, - *mGC, - x,y,w,h, 0, 360 * 64); - /* ...then fill. */ + if (w < 16 || h < 16) { + /* Fix for bug 91816 ("bullets are not displayed correctly on certain text zooms") + * De-uglify bullets on some X servers: + * 1st: Draw... */ + ::XDrawArc(mDisplay, + drawable, + *mGC, + x, y, w, h, 0, 360 * 64); + /* ...then fill. */ + } ::XFillArc(mDisplay, drawable, *mGC, - x,y,w,h, 0, 360 * 64); + x, y, w, h, 0, 360 * 64); return NS_OK; }