The fix (as linked aboved) is simply to ensure split() stops when it has 4 items. That way, we ensure we won't pass more arguments than the D-Bus binding expects, which prevents the script from dying. So the garbage gets packed in the last field, i.e. users that are members of the group. This is not a problem since clients will simply get unknown users with strange names and ignore them.
Ideally, we should check that every field is valid, but for a backport, a one-line fix that works is better. Anyway, if the line is not correct, we can hardly behave better than clearing the list of members of the group.
The fix (as linked aboved) is simply to ensure split() stops when it has 4 items. That way, we ensure we won't pass more arguments than the D-Bus binding expects, which prevents the script from dying. So the garbage gets packed in the last field, i.e. users that are members of the group. This is not a problem since clients will simply get unknown users with strange names and ignore them.
Ideally, we should check that every field is valid, but for a backport, a one-line fix that works is better. Anyway, if the line is not correct, we can hardly behave better than clearing the list of members of the group.