From bc6c656d60d5140ea59eec9484bbd0e245eee890 Mon Sep 17 00:00:00 2001 From: Ben Pfaff Date: Tue, 5 Jan 2016 17:45:37 -0800 Subject: [PATCH] segment: Fix buffer overrun error in segmenter_detect_command_name__(). Found by valgrind. --- src/language/lexer/segment.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/language/lexer/segment.c b/src/language/lexer/segment.c index 0c4a6bd800..52ff37a457 100644 --- a/src/language/lexer/segment.c +++ b/src/language/lexer/segment.c @@ -1,5 +1,5 @@ /* PSPP - a program for statistical analysis. - Copyright (C) 2010, 2011, 2013 Free Software Foundation, Inc. + Copyright (C) 2010, 2011, 2013, 2016 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -1010,6 +1010,9 @@ segmenter_detect_command_name__ (const char *input, size_t n, int ofs) ofs += mblen; } + if (!ofs) + return 0; + if (input[ofs - 1] == '.') ofs--; -- 2.30.2