Bug Description

I have dual X screen configuration on Ubuntu 12.04 with NVidia 6600 nvidia-current-updates 295.40-0ubuntu1 and XFCE+Metacity. With libreoffice-gtk installed libreoffice fails to start on second X screen :0.1. On first X screen :0.0 it loads successfully. On Ubuntu 11.10 it also worked well on both screens.

(soffice:5545): Gdk-CRITICAL **: IA__gdk_screen_get_monitor_geometry: assertion `monitor_num < screen_x11->n_monitors' failed
WARNING: gnome-keyring:: couldn't connect to: /tmp/keyring-XTNyXK/pkcs11: Нет такого файла или каталога
The program 'soffice' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
(Details: serial 1595 error_code 8 request_code 62 minor_code 0)
(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.)

I have dual X screen configuration on Ubuntu 12.04 with NVidia 6600 nvidia-current-updates 295.40-0ubuntu1 and XFCE+Metacity. With libreoffice-gtk installed libreoffice fails to start on second X screen :0.1. On first X screen :0.0 it loads successfully. On Ubuntu 11.10 it also worked well on both screens.

(soffice:5545): Gdk-CRITICAL **: IA__gdk_screen_get_monitor_geometry: assertion `monitor_num < screen_x11->n_monitors' failed
WARNING: gnome-keyring:: couldn't connect to: /tmp/keyring-XTNyXK/pkcs11: Нет такого файла или каталога
The program 'soffice' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
(Details: serial 1595 error_code 8 request_code 62 minor_code 0)
(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.)

Not directly. What I think happens there is: Starting at first (and only) monitor of the second screen means that the internal monitor number will be 1. But the first screen also has one monitor, so the condition