After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 646498 - GTK+ 3.0.7 causes gdm greeter to crash at startup
GTK+ 3.0.7 causes gdm greeter to crash at startup
Status: RESOLVED FIXED
Product: gdm
Classification: Core
Component: general
2.91.x
Other Linux
: High critical
: ---
Assigned To: GDM maintainers
GDM maintainers
Depends on:
Blocks:
 
 
Reported: 2011-04-02 00:29 UTC by Christopher Aillon
Modified: 2011-06-13 21:53 UTC
See Also:
GNOME target: 3.2
GNOME version: ---


Attachments
gdm greeter log, containing the backtrace (26.66 KB, patch)
2011-04-02 00:29 UTC, Christopher Aillon
none Details | Review
simple-greeter: Don't request an invalid size (4.08 KB, patch)
2011-04-02 02:15 UTC, Benjamin Otte (Company)
committed Details | Review

Description Christopher Aillon 2011-04-02 00:29:11 UTC
Created attachment 184919 [details] [review]
gdm greeter log, containing the backtrace

reverting to 3.0.6 fixes the crash.
Comment 1 Benjamin Otte (Company) 2011-04-02 02:14:59 UTC
This is a gdm bug. And because g_return_if_fail() makes the greeter explode (I suppose it's catching criticals on purpose?), it will always die, even though I've tried to reinstate the size_allocate checks as they were in 3.0.6. At least it doesn't crash inside gdb anymore.
Comment 2 Benjamin Otte (Company) 2011-04-02 02:15:54 UTC
Created attachment 184925 [details] [review]
simple-greeter: Don't request an invalid size

GTK widgets must at all times report a size they can handle. So it is
not allowed to return 0 when not realized, because then size allocations
break when GTK uses this size for its widget.
In this case, GTK uses the pre-realize size to determine the size it
should request when creating the greeter window - chicken and egg so to
say.

This patch just uses the default monitor (I guess the root window's
monitor is the default monitor?) for determining the login window size.

One thing this patch doesn't do is add a call to gtk_widget_queue_resize()
from the realize callback or from monitor-changing signals, though
that's probably technically necessary.
Comment 3 Christopher Aillon 2011-04-02 02:40:18 UTC
Comment on attachment 184925 [details] [review]
simple-greeter: Don't request an invalid size

Created a scratch build with this fix http://koji.fedoraproject.org/koji/taskinfo?taskID=2967748 and installed GTK+ 3.0.7 again (I had reverted it previously).

I can confirm this patch fixes this issue for me.
Comment 4 Ionut Biru 2011-04-02 11:05:00 UTC
that patch fixes this issue for me.
Comment 5 Matthias Clasen 2011-04-04 10:58:53 UTC
The gtk change has been reverted in 3.0.8, so this is no longer a 3.0 blocker
Comment 6 Ray Strode [halfline] 2011-06-13 21:53:16 UTC
Thanks, pushed