$NetBSD: patch-ac,v 1.1 2005/09/08 06:30:37 jdc Exp $ --- PixmapList.c.dist 1999-11-22 13:56:19.000000000 +0000 +++ PixmapList.c 2005-08-28 13:16:35.000000000 +0100 @@ -1410,17 +1410,21 @@ * our geometry changes */ { - float shown, top; + union { + float f; + XtArgVal x; + } shown, top; + Arg args[2]; if(!plw->pixmap_list.scroll) return; - shown = (float)(plw->pixmap_list.orient == XtorientVertical ? + shown.f = (float)(plw->pixmap_list.orient == XtorientVertical ? plw->core.height + 1 : plw->core.width + 1) / (float)plw->pixmap_list.length; - if(shown > (float)1.0) - shown = (float)1.0; - top = (float)(plw->pixmap_list.orient == XtorientVertical ? + if(shown.f > (float)1.0) + shown.f = (float)1.0; + top.f = (float)(plw->pixmap_list.orient == XtorientVertical ? -plw->pixmap_list.y : -plw->pixmap_list.x) / (float)plw->pixmap_list.length; XtSetArg(args[0], XtNtopOfThumb, sizeof(float) > sizeof(XtArgVal) ?