- /* If it's a directory, inherit the parent's default. */
- if (assign_default_acl(path, defacl) == ACL_ERROR) {
+ /* If it's a directory, inherit the parent's default. We sure hope
+ * that "path" still points to the same thing that "fd" and this
+ * "sp" describe. If not, we may wind up trying to set a default ACL
+ * on a file, and this will throw an error. I guess that's what we
+ * want to do?
+ */
+ if (S_ISDIR(sp->st_mode) && assign_default_acl(path, defacl) == ACL_ERROR) {