[COVERITY] Fix memory leak in libe2p (e2p_edit_mntopts)

Need to free memory allocated to buf.

Coverity ID: 17: Resource Leak
Coverity ID: 18: Resource Leak

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
diff --git a/lib/e2p/mntopts.c b/lib/e2p/mntopts.c
index 6d0eca0..4e50e9f 100644
--- a/lib/e2p/mntopts.c
+++ b/lib/e2p/mntopts.c
@@ -98,6 +98,7 @@
 	char	*cp, *buf, *next;
 	int	neg;
 	unsigned int	mask;
+	int	rc = 0;
 
 	buf = malloc(strlen(str)+1);
 	if (!buf)
@@ -120,10 +121,14 @@
 			cp++;
 			break;
 		}
-		if (e2p_string2mntopt(cp, &mask))
-			return 1;
-		if (ok && !(ok & mask))
-			return 1;
+		if (e2p_string2mntopt(cp, &mask)) {
+			rc = 1;
+			break;
+		}
+		if (ok && !(ok & mask)) {
+			rc = 1;
+			break;
+		}
 		if (mask & EXT3_DEFM_JMODE)
 			*mntopts &= ~EXT3_DEFM_JMODE;
 		if (neg)
@@ -132,5 +137,6 @@
 			*mntopts |= mask;
 		cp = next ? next+1 : 0;
 	}
-	return 0;
+	free(buf);
+	return rc;
 }