Hi,

I'm looking into an issue with JDS on snv_95 + jds-devel_96  where
gnome-settings-daemon is generating a call to XRRSetScreensize and this is
resulting in an XError:

The error was 'BadMatch (invalid parameter attributes)'.
  (Details: serial 695 error_code 8 request_code 157 minor_code 7)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)

Previously on snv_93, this didn't happen using the same code.

The exact call is (from dbx):

    XRRSetScreenSize(0x807a008, 0x13a, 0x400, 0x300, 0x10f, 0xcb)

The machine I'm using is a MacBookPro (rev4) with an nVidia graphics card, but
it can be reproduced on other systems too.

The interesting thing is that the display *does* actually change resolution, yet
still report an XError.

For the XRRSetScreenSize call above, the GNOME code is calculating the width_mm
and height_mm as follows:

    /* The 'physical size' of an X screen is meaningless if that screen
     * can consist of many monitors. So just pick a size that make the
     * dpi 96.
     *
     * Firefox and Evince apparently believe what X tells them.
     */
    width_mm = (width / 96.0) * 25.4 + 0.5;
    height_mm = (height / 96.0) * 25.4 + 0.5;

Is this the cause of the XError? I can't seem to find any documentation on
XRRSetScreenSize that might help me.

I still find it strange that the XError is reported yet it changed resolution
though.

Any one any ideas?

Thanks,

Darren.






Reply via email to