Drop support for running without GLib event loop

Bug #1111216 reported by Sam Spilsbury on 2013-01-31
This bug affects 1 person
Affects Status Importance Assigned to Milestone
nux (Ubuntu)
Andrea Azzarone

Bug Description

Nux has support in conditional compilation for running without the GLib event loop.

This bug is about getting support for that dropped. Considering that the GLib event loop is supported on all platforms that Nux supports, there isn't much of a reason for running without it.

The main reasons it should be removed are :
1. Its not used by anybody
2. Maintenance burden - every time you want to use some new event source, you have to provide support on both
3. Its completely broken from a code inspection POV:

 -> It uses while (true) and busy-waits for new events (most of the time)
 -> Sometimes the event retrieval sources block, sometimes they don't.
 -> The check-for-events and dispatch-event code is in the same function for every source, which means that if one source blocks (eg XLib), and the other has pending events (Geis) then there's a potential deadlock until the first one unblocks
 -> There's support for both Geis and XLib in the non-glib event loop, except that the Geis portion depends on compiling with GLib in order to actually retrieve events, rendering it non-functional in this mode.

Related branches

Stephen M. Webb (bregma) on 2013-05-10
Changed in nux:
status: New → Confirmed
importance: Undecided → Medium
status: Confirmed → Triaged
Andrea Azzarone (azzar1) on 2015-07-28
Changed in nux (Ubuntu):
status: New → In Progress
Changed in nux:
status: Triaged → In Progress
Changed in nux (Ubuntu):
importance: Undecided → Medium
Changed in nux:
assignee: nobody → Andrea Azzarone (azzar1)
Changed in nux (Ubuntu):
assignee: nobody → Andrea Azzarone (azzar1)
Changed in nux:
milestone: none → 4.0.7
Stephen M. Webb (bregma) on 2015-08-12
Changed in nux:
milestone: 4.0.7 → 4.0.8
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package nux - 4.0.8+15.10.20150921.1-0ubuntu1

nux (4.0.8+15.10.20150921.1-0ubuntu1) wily; urgency=medium

  [ Stephen M. Webb ]
  * new upstream release 4.0.8
  * debian/control (Standards-Version): bump to 3.9.6 (no changes)

  [ Marco Trevisan (Treviño) ]
  * debian/control:
    - add xserver-xorg-video-dummy as build dependency
    - set libnux-4.0-common arch to all
    - depend on source:Version of libnux-4.0-common

  [ Andrea Azzarone <email address hidden> ]
  * Remove alternative select mainloop. (LP: #1111216)

  [ Marco Trevisan (Treviño) ]
  * WindowCompositor: emit mouse_leave signal when releasing mouse over
    a new area (LP: #1496140)

 -- Marco Trevisan (Treviño) <mail@3v1n0.net> Mon, 21 Sep 2015 17:41:54 +0000

Changed in nux (Ubuntu):
status: In Progress → Fix Released
Andrea Azzarone (azzar1) on 2016-07-11
no longer affects: nux
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers