# HG changeset patch # User Timo Sirainen # Date 1245644913 14400 # Node ID ef644130d6c257f26eee11a4c32b1e1cdec049cb # Parent 31fe9a8740c361b6cd57313066f1dc4224ca4a98 acl: Handle empty rights (no rights) properly. diff -r 31fe9a8740c3 -r ef644130d6c2 src/plugins/acl/acl-backend-vfile.c --- a/src/plugins/acl/acl-backend-vfile.c Mon Jun 22 00:11:43 2009 -0400 +++ b/src/plugins/acl/acl-backend-vfile.c Mon Jun 22 00:28:33 2009 -0400 @@ -881,12 +881,9 @@ return FALSE; } - if (old_rights == NULL) - old_rights = &null; - switch (modify_mode) { case ACL_MODIFY_MODE_REMOVE: - if (*old_rights == NULL) { + if (old_rights == NULL || *old_rights == NULL) { /* nothing to do */ return FALSE; } @@ -922,6 +919,9 @@ } *rightsp = new_rights; + if (old_rights == NULL) + return new_rights != NULL; + /* see if anything changed */ for (i = 0; old_rights[i] != NULL && new_rights[i] != NULL; i++) { if (strcmp(old_rights[i], new_rights[i]) != 0)