diff -u -r xf86-input-penmount-X11R7.2-1.2.0-old/src/xf86PM.c xf86-input-penmount-X11R7.2-1.2.0-new/src/xf86PM.c --- xf86-input-penmount-X11R7.2-1.2.0-old/src/xf86PM.c 2007-01-09 00:39:35.000000000 +0100 +++ xf86-input-penmount-X11R7.2-1.2.0-new/src/xf86PM.c 2008-06-22 09:01:24.000000000 +0200 @@ -678,16 +678,16 @@ } x = ((((unsigned int) (priv->packet[1]&0x07)) << 7) | (priv->packet[2]&0x7F)); y = ((((unsigned int) (priv->packet[3]&0x07)) << 7) | (priv->packet[4]&0x7F)); - if (priv->invert_y) - { - y = priv->max_y - y; - } if ( priv->swap_xy) { tmp = y; y = x; x = tmp; } + if (priv->invert_y) + { + y = priv->max_y - y; + } priv->packet[0] = priv->pen_down ? 0x01 : 0x00; if (priv->reporting_mode == TS_Scaled)