Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
The get_sorted_session_displays() is broken in that it doesn't produce a sorted list of displays. The problem is the qsort comparison function which has 2 errors in 4 lines:- 1) The test is the wrong way round (i.e. arg1 < arg2 produces a +ve result instead of -ve) 2) Subtracting two unsigned ints in C will never return < 0 The broken function has been masked by other display checks which mean that it is only visible in a few situations:- 1) Starting two sessions very closely to each other may allocate the same display to both sessions. 2) If /tmp is namespaced, the other display checks do not work, and more than two sessions cannot be started. (cherry picked from commit 70f1b68)
- Loading branch information