summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gst/librfb/vncauth.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gst/librfb/vncauth.c b/gst/librfb/vncauth.c
index d6ce7e488..dc6817366 100644
--- a/gst/librfb/vncauth.c
+++ b/gst/librfb/vncauth.c
@@ -96,15 +96,18 @@ vncDecryptPasswdFromFile (char *fname)
{
FILE *fp;
int32_t i, ch;
- unsigned char *passwd = (unsigned char *) malloc (9);
+ unsigned char *passwd;
if ((fp = fopen (fname, "r")) == NULL)
return NULL;
+ passwd = (unsigned char *) malloc (9);
+
for (i = 0; i < 8; i++) {
ch = getc (fp);
if (ch == EOF) {
fclose (fp);
+ free (passwd);
return NULL;
}
passwd[i] = ch;