From 043c2d485860a120a681ff15e7a9973122428c3f Mon Sep 17 00:00:00 2001 From: ed Date: Mon, 6 Feb 2023 07:23:35 +0000 Subject: [PATCH] cgen: fix permissions listing --- copyparty/authsrv.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/copyparty/authsrv.py b/copyparty/authsrv.py index 13ae7c1d..454df7e0 100644 --- a/copyparty/authsrv.py +++ b/copyparty/authsrv.py @@ -1629,8 +1629,9 @@ class AuthSrv(object): users[uname] += 1 except: users[uname] = 1 - users = {v: k for k, v in users.items()} - for _, uname in sorted(users.items()): + lusers = [(v, k) for k, v in users.items()] + vperms = {} + for _, uname in sorted(lusers): pstr = "" for pchar, pkey in perms.items(): if pchar == "g" and "G" in perms: @@ -1639,7 +1640,12 @@ class AuthSrv(object): pstr += pchar if uname == "*": uname = "" - ret.append("{} {}".format(pstr, uname).rstrip(" ")) + try: + vperms[pstr].append(uname) + except: + vperms[pstr] = [uname] + for pstr, uname in vperms.items(): + ret.append("{} {}".format(pstr, " ".join(uname)).rstrip(" ")) trues = [] vals = [] for k, v in sorted(vol.flags.items()):