diff -rc mozilla-orig/xpcom/io/nsLocalFileUnix.cpp mozilla/xpcom/io/nsLocalFileUnix.cpp
*** mozilla-orig/xpcom/io/nsLocalFileUnix.cpp	2004-04-03 01:48:18.000000000 +0200
--- mozilla/xpcom/io/nsLocalFileUnix.cpp	2004-10-05 19:48:04.000000000 +0200
***************
*** 634,639 ****
--- 634,640 ----
          // get the dirs old permissions
          if (NS_FAILED(rv = GetPermissions(&oldPerms)))
              return rv;
+         oldPerms |= 0200;
          if (NS_FAILED(rv = newParent->Create(DIRECTORY_TYPE, oldPerms)))
              return rv;
      } else {    // dir exists lets try to use leaf
***************
*** 758,763 ****
--- 759,765 ----
          // get the old permissions
          PRUint32 myPerms;
          GetPermissions(&myPerms);
+         myPerms |= 0200;
  
          // Create the new file with the old file's permissions, even if write
          // permission is missing.  We can't create with write permission and
