Ticket #36088: fuse.diff

File fuse.diff, 921 bytes (added by mateusz@…, 12 years ago)

Patch that fixes umask where possible (mkdir call was affected only, but just in case)

  • fuse4x-0.9.1/lib/fuse.c

    diff -ruNabi fuse4x-0.9.1/lib/fuse.c /Users/mklatt/fuse4x-0.9.1/lib/fuse.c
    old new  
    15371537        if (fs->op.create) {
    15381538                int err;
    15391539
     1540                fuse_get_context()->umask &= ~0700;
     1541               
    15401542                if (fs->debug)
    15411543                        fprintf(stderr,
    15421544                                "create flags: 0x%x %s 0%o umask=0%03o\n",
     
    16881690                  dev_t rdev)
    16891691{
    16901692        fuse_get_context()->private_data = fs->user_data;
     1693       
     1694        fuse_get_context()->umask &= ~0700;
     1695       
    16911696        if (fs->op.mknod) {
    16921697                if (fs->debug)
    16931698                        fprintf(stderr, "mknod %s 0%o 0x%llx umask=0%03o\n",
     
    17031708int fuse_fs_mkdir(struct fuse_fs *fs, const char *path, mode_t mode)
    17041709{
    17051710        fuse_get_context()->private_data = fs->user_data;
     1711       
     1712        fuse_get_context()->umask &= ~0700;
     1713       
    17061714        if (fs->op.mkdir) {
    17071715                if (fs->debug)
    17081716                        fprintf(stderr, "mkdir %s 0%o umask=0%03o\n",