]> granicus.if.org Git - cgit/commitdiff
Avoid null pointer dereference in reencode().
authorLukas Fleischer <cgit@cryptocrack.de>
Tue, 5 Apr 2011 08:35:43 +0000 (10:35 +0200)
committerLars Hjemli <hjemli@gmail.com>
Mon, 23 May 2011 20:58:35 +0000 (22:58 +0200)
Returning "*txt" if "txt" is a null pointer is a bad thing. Spotted with
clang-analyzer.

Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
parsing.c

index c9e43509242d1d3a4e6faf85da7ce46375659ab3..151c0fe468c64174ae260ba9b5ddd2d8de52e81e 100644 (file)
--- a/parsing.c
+++ b/parsing.c
@@ -103,7 +103,10 @@ const char *reencode(char **txt, const char *src_enc, const char *dst_enc)
 {
        char *tmp;
 
-       if (!txt || !*txt || !src_enc || !dst_enc)
+       if (!txt)
+               return NULL;
+
+       if (!*txt || !src_enc || !dst_enc)
                return *txt;
 
        /* no encoding needed if src_enc equals dst_enc */