Merge branch 'stable-3.2' into pandora-3.2
[pandora-kernel.git] / fs / open.c
index 76e2012..1ae8e82 100644 (file)
--- a/fs/open.c
+++ b/fs/open.c
@@ -883,9 +883,10 @@ static inline int build_open_flags(int flags, int mode, struct open_flags *op)
        int lookup_flags = 0;
        int acc_mode;
 
        int lookup_flags = 0;
        int acc_mode;
 
-       if (!(flags & O_CREAT))
-               mode = 0;
-       op->mode = mode;
+       if (flags & O_CREAT)
+               op->mode = (mode & S_IALLUGO) | S_IFREG;
+       else
+               op->mode = 0;
 
        /* Must never be set by userspace */
        flags &= ~FMODE_NONOTIFY;
 
        /* Must never be set by userspace */
        flags &= ~FMODE_NONOTIFY;