--- ./src/unionfs.c.00 2009-03-22 19:58:01.000000000 +0100 +++ ./src/unionfs.c 2010-01-10 14:59:21.000000000 +0100 @@ -510,8 +510,8 @@ stbuf->f_files += stb.f_files; } - if (!stb.f_flag & ST_RDONLY) stbuf->f_flag &= ~ST_RDONLY; - if (!stb.f_flag & ST_NOSUID) stbuf->f_flag &= ~ST_NOSUID; + if (!stb.f_flag && ST_RDONLY) stbuf->f_flag &= ~ST_RDONLY; + if (!stb.f_flag && ST_NOSUID) stbuf->f_flag &= ~ST_NOSUID; if (stb.f_namemax < stbuf->f_namemax) stbuf->f_namemax = stb.f_namemax; }