external/clucene/UnpackedTarball_clucene.mk  |    1 +
 external/clucene/patches/clucene-mutex.patch |   13 +++++++++++++
 2 files changed, 14 insertions(+)

New commits:
commit 10314b5d8b653864c92d392cbb774438633b2fe1
Author: Stephan Bergmann <sberg...@redhat.com>
Date:   Thu May 8 11:08:51 2014 +0200

    CLucene: Helgrind reported "pthread_mutex_destroy of a locked mutex"
    
    > pthread_mutex_destroy 
(/usr/src/debug/valgrind-3.9.0/helgrind/hg_intercepts.c:478)
    > lucene::util::mutex_thread::~mutex_thread() 
(workdir/UnpackedTarball/clucene/src/shared/CLucene/config/threads.cpp:179)
    > lucene::store::FSDirectory::FSIndexInput::close() 
(workdir/UnpackedTarball/clucene/src/core/CLucene/store/FSDirectory.cpp:225)
    > lucene::index::SegmentInfos::read(lucene::store::Directory*, char const*) 
(workdir/UnpackedTarball/clucene/src/core/CLucene/index/SegmentInfos.cpp:770)
    > 
lucene::index::IndexFileDeleter::IndexFileDeleter(lucene::store::Directory*, 
lucene::index::IndexDeletionPolicy*, lucene::index::SegmentInfos*, 
std::ostream*, lucene::index::DocumentsWriter*) 
(workdir/UnpackedTarball/clucene/src/core/CLucene/index/IndexFileDeleter.cpp:149)
    > lucene::index::IndexWriter::init(lucene::store::Directory*, 
lucene::analysis::Analyzer*, bool, bool, lucene::index::IndexDeletionPolicy*, 
bool) 
(workdir/UnpackedTarball/clucene/src/core/CLucene/index/IndexWriter.cpp:262)
    > lucene::index::IndexWriter::IndexWriter(char const*, 
lucene::analysis::Analyzer*, bool) 
(workdir/UnpackedTarball/clucene/src/core/CLucene/index/IndexWriter.cpp:158)
    > HelpIndexer::indexDocuments() (helpcompiler/source/HelpIndexer.cxx:55)
    
    Change-Id: I19cb9bd49b339d206a624c1f1d3dacdd909f4e25

diff --git a/external/clucene/UnpackedTarball_clucene.mk 
b/external/clucene/UnpackedTarball_clucene.mk
index 5148fb7..4407f73 100644
--- a/external/clucene/UnpackedTarball_clucene.mk
+++ b/external/clucene/UnpackedTarball_clucene.mk
@@ -31,6 +31,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,clucene,\
        external/clucene/patches/clucene-aix.patch \
        external/clucene/patches/clucene-git1-win64.patch \
        external/clucene/patches/clucene-ub.patch \
+       external/clucene/patches/clucene-mutex.patch \
 ))
 
 ifneq ($(OS),WNT)
diff --git a/external/clucene/patches/clucene-mutex.patch 
b/external/clucene/patches/clucene-mutex.patch
new file mode 100644
index 0000000..2a6b7d2
--- /dev/null
+++ b/external/clucene/patches/clucene-mutex.patch
@@ -0,0 +1,13 @@
+--- src/core/CLucene/store/FSDirectory.cpp
++++ src/core/CLucene/store/FSDirectory.cpp
+@@ -219,9 +219,8 @@
+               _CLDECDELETE(handle);
+ 
+               //printf("handle=%d\n", handle->__cl_refcount);
+-              if ( dounlock ){
+                       mutex->unlock();
+-              }else{
++              if ( !dounlock ){
+                       delete mutex;
+               }
+       }
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to