[PATCH] 9p: fix marshalling bug in tcreate with empty extension field
authorRuss Ross <russross@gmail.com>
Sun, 30 Jul 2006 10:04:15 +0000 (03:04 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Mon, 31 Jul 2006 20:28:44 +0000 (13:28 -0700)
Signed-off-by: Russ Ross <russross@gmail.com>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
fs/9p/conv.c

index 1e898144eb7c167bb3a2ad30dc1760c8cb8f19ba..56d88c1a09c566baa5a0733f728cc7a8819b97b7 100644 (file)
@@ -673,8 +673,10 @@ struct v9fs_fcall *v9fs_create_tcreate(u32 fid, char *name, u32 perm, u8 mode,
        struct cbuf *bufp = &buffer;
 
        size = 4 + 2 + strlen(name) + 4 + 1;    /* fid[4] name[s] perm[4] mode[1] */
-       if (extended && extension!=NULL)
-               size += 2 + strlen(extension);  /* extension[s] */
+       if (extended) {
+               size += 2 +                     /* extension[s] */
+                   (extension == NULL ? 0 : strlen(extension));
+       }
 
        fc = v9fs_create_common(bufp, size, TCREATE);
        if (IS_ERR(fc))