fix
diff --git a/ChangeLog b/ChangeLog
index 3444ee4..d1f73c3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2005-02-15  Miklos Szeredi <miklos@szeredi.hu>
+
+	* libfuse: clean up some unitialized memory found with valgrind
+
 2005-02-10  Miklos Szeredi <miklos@szeredi.hu>
 
 	* fusermount: set umask, otherwise /etc/mtab will have
diff --git a/lib/fuse.c b/lib/fuse.c
index 104d654..72fd59a 100644
--- a/lib/fuse.c
+++ b/lib/fuse.c
@@ -1048,6 +1048,7 @@
     struct fuse_open_out outarg;
     struct fuse_file_info fi;
 
+    memset(&outarg, 0, sizeof(outarg));
     memset(&fi, 0, sizeof(fi));
     fi.flags = arg->flags;
     res = -ENOENT;
@@ -1523,10 +1524,11 @@
     struct fuse_dirhandle *dh;
 
     (void) arg;
-
+    memset(&outarg, 0, sizeof(outarg));
     res = -ENOMEM;
     dh = (struct fuse_dirhandle *) malloc(sizeof(struct fuse_dirhandle));
     if (dh != NULL) {
+        memset(dh, 0, sizeof(struct fuse_dirhandle));
         dh->fuse = f;
         dh->contents = NULL;
         dh->len = 0;