On 29/10/18 13:55, Luc Van Oostenryck wrote:
On Mon, Oct 29, 2018 at 01:40:06PM +0000, Ben Dooks wrote:
On 26/10/18 22:33, Luc Van Oostenryck wrote:
On Fri, Oct 26, 2018 at 04:26:31PM +0100, Ben Dooks wrote:
---
tokenize.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tokenize.c b/tokenize.c
index 99b9580..c32f8c7 100644
--- a/tokenize.c
+++ b/tokenize.c
@@ -124,7 +124,7 @@ const char *show_string(const struct string *string)
char *ptr;
int i;
- if (!string->length)
+ if (!string || !string->length)
return "<bad_string>";
I don't understand this change. What about a zero-length string ("")?
The original checks for string->length but not if the string itself
was NULL. I've eliminated the original mistake that triggered this.
Oh yes, sorry. I didn't noticed that the original test checked the length
and not the pointer.
I'll investigate why the length was tested.
Have you an example/testcase where it crashed?
I was using it in earlier code, but I removed the call to show_string
I think (debugging).
--
Ben Dooks http://www.codethink.co.uk/
Senior Engineer Codethink - Providing Genius
https://www.codethink.co.uk/privacy.html