|
|
d73fd1 |
From 44cc1d696b6528712d92d33660dd8017dcd0b3e2 Mon Sep 17 00:00:00 2001
|
|
|
d73fd1 |
From: Stephan Bergmann <sbergman@redhat.com>
|
|
|
d73fd1 |
Date: Wed, 31 Jul 2019 16:57:31 +0200
|
|
|
d73fd1 |
Subject: [PATCH 1/2] Make sure to return value from non-void function
|
|
|
d73fd1 |
|
|
|
d73fd1 |
This had been commented out with 92145f058c88a9607341d8a20c3944a96ec00cf8
|
|
|
d73fd1 |
"All remaining memory leaks int tests removed. Fixes made by Veit and Anthony
|
|
|
d73fd1 |
Novatsis are incorporated" for no apparent reason---presumably by accident.
|
|
|
d73fd1 |
|
|
|
d73fd1 |
The effect (besides a -Wreturn-type warning) when building e.g. RelWithDebInfo
|
|
|
d73fd1 |
(i.e., with optimizations) on Fedora 30 (with GCC 9.1) was that the implicit
|
|
|
d73fd1 |
call to ~WhitespaceAnalyzer at the end of searchDocs was directly followed
|
|
|
d73fd1 |
(lacking the code sequence corresponding to "return 0;") by some compiler-
|
|
|
d73fd1 |
generated code to jump into some _Z10searchDocsPv.cold code (which is apparently
|
|
|
d73fd1 |
meant as an optimization, to be called from certain cold conditions) which
|
|
|
d73fd1 |
happened to also call ~WhitespaceAnalyzer. The net effect was that the
|
|
|
d73fd1 |
|
|
|
d73fd1 |
WhitespaceAnalyzer an;
|
|
|
d73fd1 |
|
|
|
d73fd1 |
object was deleted twice, causing a SIGSEGV.
|
|
|
d73fd1 |
---
|
|
|
d73fd1 |
src/test/search/TestIndexSearcher.cpp | 2 +-
|
|
|
d73fd1 |
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
d73fd1 |
|
|
|
d73fd1 |
diff --git a/src/test/search/TestIndexSearcher.cpp b/src/test/search/TestIndexSearcher.cpp
|
|
|
d73fd1 |
index 5c410ff4..02c21aaf 100644
|
|
|
d73fd1 |
--- a/src/test/search/TestIndexSearcher.cpp
|
|
|
d73fd1 |
+++ b/src/test/search/TestIndexSearcher.cpp
|
|
|
d73fd1 |
@@ -28,7 +28,7 @@ _LUCENE_THREAD_FUNC(searchDocs, _searcher) {
|
|
|
d73fd1 |
_CLLDELETE(query);
|
|
|
d73fd1 |
|
|
|
d73fd1 |
CONDITION_WAIT(deleteMutex, deleteCondition);
|
|
|
d73fd1 |
-// _LUCENE_THREAD_FUNC_RETURN(0);
|
|
|
d73fd1 |
+ _LUCENE_THREAD_FUNC_RETURN(0);
|
|
|
d73fd1 |
}
|
|
|
d73fd1 |
|
|
|
d73fd1 |
void testEndThreadException(CuTest *tc) {
|
|
|
d73fd1 |
--
|
|
|
d73fd1 |
2.21.0
|
|
|
d73fd1 |
|