Application: digikam (2.0.0-beta1) KDE Platform Version: 4.5.1 (KDE 4.5.1) Qt Version: 4.7.0 Operating System: Linux 2.6.35-24-generic i686 Distribution: Ubuntu 10.10 -- Information about the crash: - What I was doing when the application crashed: I changed Database-Settings which gave me an error (mysql privileges were not sufficient). Then I closed Digikam whereupon it crashed. -- Backtrace: Application: digiKam (digikam), signal: Aborted [Current thread is 1 (Thread 0xb5a5b890 (LWP 18264))] Thread 10 (Thread 0xb325eb70 (LWP 18268)): #0 0x009d6416 in __kernel_vsyscall () #1 0x002cc4dc in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169 #2 0x01a879c7 in wait (this=0x9d5cea0, mutex=0x9d5ce9c, time=4294967295) at thread/qwaitcondition_unix.cpp:88 #3 QWaitCondition::wait (this=0x9d5cea0, mutex=0x9d5ce9c, time=4294967295) at thread/qwaitcondition_unix.cpp:160 #4 0x0793efca in Digikam::ParkingThread::run (this=0x9d5ce90) at /home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threads/threadmanager.cpp:119 #5 0x01a86df9 in QThreadPrivate::start (arg=0x9d5ce90) at thread/qthread_unix.cpp:266 #6 0x002c7cc9 in start_thread (arg=0xb325eb70) at pthread_create.c:304 #7 0x04c4969e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130 Thread 9 (Thread 0xb18f9b70 (LWP 18269)): #0 0x009d6416 in __kernel_vsyscall () #1 0x04c570f3 in __lll_lock_wait_private () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:95 #2 0x04beb65f in _L_lock_9687 () from /lib/libc.so.6 #3 0x04be9e56 in __libc_free (mem=0x9efb680) at malloc.c:3736 #4 0x052f4441 in operator delete(void*) () from /usr/lib/libstdc++.so.6 #5 0x01bb80b5 in QEventDispatcherGlib::unregisterSocketNotifier (this=0x9efd088, notifier=0xb18f916c) at kernel/qeventdispatcher_glib.cpp:496 #6 0x01ba61da in QSocketNotifier::setEnabled (this=0xfffffe00, enable=false) at kernel/qsocketnotifier.cpp:298 #7 0x01bb7a02 in socketNotifierSourceCheck (source=0x9efcf48) at kernel/qeventdispatcher_glib.cpp:92 #8 0x050bbb39 in g_main_context_check () from /lib/libglib-2.0.so.0 #9 0x050bc45e in ?? () from /lib/libglib-2.0.so.0 #10 0x050bc848 in g_main_context_iteration () from /lib/libglib-2.0.so.0 #11 0x01bb7565 in QEventDispatcherGlib::processEvents (this=0x9efd088, flags=...) at kernel/qeventdispatcher_glib.cpp:415 #12 0x01b87609 in QEventLoop::processEvents (this=0xb18f9110, flags=) at kernel/qeventloop.cpp:149 #13 0x01b87a8a in QEventLoop::exec (this=0xb18f9110, flags=...) at kernel/qeventloop.cpp:201 #14 0x01a83b7e in QThread::exec (this=0x9efcbe8) at thread/qthread.cpp:490 #15 0x01b6635b in QInotifyFileSystemWatcherEngine::run (this=0x9efcbe8) at io/qfilesystemwatcher_inotify.cpp:248 #16 0x01a86df9 in QThreadPrivate::start (arg=0x9efcbe8) at thread/qthread_unix.cpp:266 #17 0x002c7cc9 in start_thread (arg=0xb18f9b70) at pthread_create.c:304 #18 0x04c4969e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130 Thread 8 (Thread 0xab183b70 (LWP 18270)): #0 0x009d6416 in __kernel_vsyscall () #1 0x002cc884 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_timedwait.S:236 #2 0x04afeb3f in ?? () from /usr/lib/libxine.so.1 Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 7 (Thread 0xaa577b70 (LWP 18271)): #0 0x009d6416 in __kernel_vsyscall () #1 0x04c42371 in select () at ../sysdeps/unix/syscall-template.S:82 #2 0x04b2af1c in xine_usec_sleep () from /usr/lib/libxine.so.1 #3 0x00000000 in ?? () Thread 6 (Thread 0xa9d76b70 (LWP 18272)): #0 0x009d6416 in __kernel_vsyscall () #1 0x04c570f3 in __lll_lock_wait_private () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:95 #2 0x04beb65f in _L_lock_9687 () from /lib/libc.so.6 #3 0x04be9e56 in __libc_free (mem=0xc353858) at malloc.c:3736 #4 0x052f4441 in operator delete(void*) () from /usr/lib/libstdc++.so.6 #5 0x01bba505 in QTimerInfoList::unregisterTimer (this=0xa4c5634, timerId=34) at kernel/qeventdispatcher_unix.cpp:499 #6 0x01bb746d in QEventDispatcherGlib::unregisterTimer (this=0xa4c4070, timerId=34) at kernel/qeventdispatcher_glib.cpp:532 #7 0x01b99875 in QObject::killTimer (this=0xb8dfb20, id=34) at kernel/qobject.cpp:1625 #8 0x08a4e53c in ?? () from /usr/lib/qt4/plugins/phonon_backend/phonon_xine.so #9 0x01b9b504 in QObject::event (this=0xb8dfb20, e=0xc353850) at kernel/qobject.cpp:1183 #10 0x08a4e57c in ?? () from /usr/lib/qt4/plugins/phonon_backend/phonon_xine.so #11 0x02552fdc in QApplicationPrivate::notify_helper (this=0x9b3f188, receiver=0xb8dfb20, e=0xa9d75e80) at kernel/qapplication.cpp:4396 #12 0x0255904e in QApplication::notify (this=0xbfd0307c, receiver=0xb8dfb20, e=0xa9d75e80) at kernel/qapplication.cpp:3798 #13 0x064aa68a in KApplication::notify (this=0xbfd0307c, receiver=0xb8dfb20, event=0xa9d75e80) at ../../kdeui/kernel/kapplication.cpp:310 #14 0x01b88b3b in QCoreApplication::notifyInternal (this=0xbfd0307c, receiver=0xb8dfb20, event=0xa9d75e80) at kernel/qcoreapplication.cpp:732 #15 0x01bbaad6 in sendEvent (this=0xa4c5634) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #16 QTimerInfoList::activateTimers (this=0xa4c5634) at kernel/qeventdispatcher_unix.cpp:602 #17 0x01bb7874 in timerSourceDispatch (source=0xa4c5600) at kernel/qeventdispatcher_glib.cpp:184 #18 0x050b8855 in g_main_context_dispatch () from /lib/libglib-2.0.so.0 #19 0x050bc668 in ?? () from /lib/libglib-2.0.so.0 #20 0x050bc848 in g_main_context_iteration () from /lib/libglib-2.0.so.0 #21 0x01bb759f in QEventDispatcherGlib::processEvents (this=0xa4c4070, flags=...) at kernel/qeventdispatcher_glib.cpp:417 #22 0x01b87609 in QEventLoop::processEvents (this=0xa9d76100, flags=) at kernel/qeventloop.cpp:149 #23 0x01b87a8a in QEventLoop::exec (this=0xa9d76100, flags=...) at kernel/qeventloop.cpp:201 #24 0x01a83b7e in QThread::exec (this=0xa4c3c78) at thread/qthread.cpp:490 #25 0x08a3581a in ?? () from /usr/lib/qt4/plugins/phonon_backend/phonon_xine.so #26 0x01a86df9 in QThreadPrivate::start (arg=0xa4c3c78) at thread/qthread_unix.cpp:266 #27 0x002c7cc9 in start_thread (arg=0xa9d76b70) at pthread_create.c:304 #28 0x04c4969e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130 Thread 5 (Thread 0xa9575b70 (LWP 18273)): #0 __libc_enable_asynccancel () at ../nptl/cancellation.c:44 #1 0x04c3ade0 in __poll (fds=0xa4c8d60, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:85 #2 0x009c4562 in ?? () from /usr/lib/libpulse.so.0 #3 0x009b0ab9 in pa_mainloop_poll () from /usr/lib/libpulse.so.0 #4 0x009b2a73 in pa_mainloop_iterate () from /usr/lib/libpulse.so.0 #5 0x009b2b44 in pa_mainloop_run () from /usr/lib/libpulse.so.0 #6 0x009c4303 in ?? () from /usr/lib/libpulse.so.0 #7 0x08843bd5 in ?? () from /usr/lib/libpulsecommon-0.9.21.so #8 0x002c7cc9 in start_thread (arg=0xa9575b70) at pthread_create.c:304 #9 0x04c4969e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130 Thread 4 (Thread 0xa4d73b70 (LWP 18274)): #0 0x009d6416 in __kernel_vsyscall () #1 0x002cc4dc in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169 #2 0x04b10b54 in ?? () from /usr/lib/libxine.so.1 Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 3 (Thread 0xa15feb70 (LWP 20231)): #0 0x009d6416 in __kernel_vsyscall () #1 0x04c570f3 in __lll_lock_wait_private () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:95 #2 0x04beb65f in _L_lock_9687 () from /lib/libc.so.6 #3 0x04be9e56 in __libc_free (mem=0xc8bfbd8) at malloc.c:3736 #4 0x052f4441 in operator delete(void*) () from /usr/lib/libstdc++.so.6 #5 0x01b9aaa8 in QObjectPrivate::cleanConnectionLists (this=0x9bc2770) at kernel/qobject.cpp:383 #6 0x01b9abea in QObjectPrivate::addConnection (this=0x9bc2770, signal=4, c=0x9a61ad88) at kernel/qobject.cpp:357 #7 0x01b9f2e2 in QMetaObjectPrivate::connect (sender=0x9bc26e4, signal_index=4, receiver=0x9dea821c, method_index=4, type=<value optimized out>, types=0x0) at kernel/qobject.cpp:2919 #8 0x01b9f8ce in QObject::connect (sender=0x9bc26e4, signal=0x1c491ea "2aboutToClose()", receiver=0x9dea821c, method=0x1c491db "1flushStream()", type=Qt::AutoConnection) at kernel/qobject.cpp:2590 #9 0x01b25125 in setupDevice (this=0x9dea6c48, device=0x9bc26e4) at io/qtextstream.cpp:333 #10 QTextStream::QTextStream (this=0x9dea6c48, device=0x9bc26e4) at io/qtextstream.cpp:1028 #11 0x05933945 in Stream (this=0x9bc26b0, type=QtWarningMsg, area=50003, debugFile=0x7a9fdb8 "/home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/thumbnailcreator.cpp", line=539, funcinfo=0x7aa0080 "Digikam::ThumbnailImage Digikam::ThumbnailCreator::createThumbnail(const Digikam::ThumbnailInfo&, const QRect&, bool) const") at /usr/include/qt4/QtCore/qdebug.h:65 #12 QDebug (this=0x9bc26b0, type=QtWarningMsg, area=50003, debugFile=0x7a9fdb8 "/home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/thumbnailcreator.cpp", line=539, funcinfo=0x7aa0080 "Digikam::ThumbnailImage Digikam::ThumbnailCreator::createThumbnail(const Digikam::ThumbnailInfo&, const QRect&, bool) const") at /usr/include/qt4/QtCore/qdebug.h:76 #13 KDebugPrivate::stream (this=0x9bc26b0, type=QtWarningMsg, area=50003, debugFile=0x7a9fdb8 "/home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/thumbnailcreator.cpp", line=539, funcinfo=0x7aa0080 "Digikam::ThumbnailImage Digikam::ThumbnailCreator::createThumbnail(const Digikam::ThumbnailInfo&, const QRect&, bool) const") at ../../kdecore/io/kdebug.cpp:616 #14 0x0592feb9 in kDebugStream (level=QtWarningMsg, area=50003, file=0x7a9fdb8 "/home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/thumbnailcreator.cpp", line=539, funcinfo=0x7aa0080 "Digikam::ThumbnailImage Digikam::ThumbnailCreator::createThumbnail(const Digikam::ThumbnailInfo&, const QRect&, bool) const") at ../../kdecore/io/kdebug.cpp:746 #15 0x07912f48 in operator() (this=0xa937920, info=..., detailRect=..., isFace=false) at /usr/include/kdebug.h:248 #16 Digikam::ThumbnailCreator::createThumbnail (this=0xa937920, info=..., detailRect=..., isFace=false) at /home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/thumbnailcreator.cpp:539 #17 0x07913bc4 in Digikam::ThumbnailCreator::load (this=0xa937920, path=..., rect=..., pregenerate=false) at /home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/thumbnailcreator.cpp:257 #18 0x0791449b in Digikam::ThumbnailCreator::load (this=0xa937920, path=...) at /home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/thumbnailcreator.cpp:196 #19 0x0791f1e5 in Digikam::ThumbnailLoadingTask::execute (this=0xcef1558) at /home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/thumbnailtask.cpp:169 #20 0x078f33e3 in Digikam::LoadSaveThread::run (this=0xa913f58) at /home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/loadsavethread.cpp:124 #21 0x07940cfe in Digikam::DynamicThread::DynamicThreadPriv::run (this=0xa937528) at /home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threads/dynamicthread.cpp:324 #22 0x01a7b523 in QThreadPoolThread::run (this=0xb2f0f38) at concurrent/qthreadpool.cpp:106 #23 0x01a86df9 in QThreadPrivate::start (arg=0xb2f0f38) at thread/qthread_unix.cpp:266 #24 0x002c7cc9 in start_thread (arg=0xa15feb70) at pthread_create.c:304 #25 0x04c4969e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130 Thread 2 (Thread 0xa1dffb70 (LWP 20239)): #0 0x009d6416 in __kernel_vsyscall () #1 0x04c570f3 in __lll_lock_wait_private () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:95 #2 0x04beb65f in _L_lock_9687 () from /lib/libc.so.6 #3 0x04be9e56 in __libc_free (mem=0xc38fad8) at malloc.c:3736 #4 0x052f4441 in operator delete(void*) () from /usr/lib/libstdc++.so.6 #5 0x01b9aaa8 in QObjectPrivate::cleanConnectionLists (this=0xb1ee6d8) at kernel/qobject.cpp:383 #6 0x01ba1a5a in QMetaObject::activate (sender=0xb1ee6c0, m=0x85614b4, local_signal_index=1, argv=0x0) at kernel/qobject.cpp:3316 #7 0x01bf0617 in QThread::finished (this=0xb1ee6c0) at .moc/release-shared/moc_qthread.cpp:105 #8 0x01a8658f in QThreadPrivate::finish (arg=0xb1ee6c0) at thread/qthread_unix.cpp:296 #9 0x01a86e01 in ~__pthread_cleanup_class (arg=0xb1ee6c0) at /usr/include/pthread.h:545 #10 QThreadPrivate::start (arg=0xb1ee6c0) at thread/qthread_unix.cpp:271 #11 0x002c7cc9 in start_thread (arg=0xa1dffb70) at pthread_create.c:304 #12 0x04c4969e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130 Thread 1 (Thread 0xb5a5b890 (LWP 18264)): [KCrash Handler] #7 0x009d6416 in __kernel_vsyscall () #8 0x04ba3941 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #9 0x04ba6e42 in abort () at abort.c:92 #10 0x04bdb305 in __libc_message (do_abort=2, fmt=0x4cb3280 "*** glibc detected *** %s: %s: 0x%s ***\n") at ../sysdeps/unix/sysv/linux/libc_fatal.c:189 #11 0x04be5501 in malloc_printerr (action=<value optimized out>, str=0x6 <Address 0x6 out of bounds>, ptr=0xa796dc8) at malloc.c:6283 #12 0x04be595a in malloc_consolidate (av=<value optimized out>) at malloc.c:5169 #13 0x04be6ced in _int_free (av=<value optimized out>, p=0xcedd6c8) at malloc.c:5034 #14 0x04be9e5d in __libc_free (mem=0xcedf7d8) at malloc.c:3738 #15 0x052f4441 in operator delete(void*) () from /usr/lib/libstdc++.so.6 #16 0x07920c19 in Digikam::ThumbnailLoadingTask::~ThumbnailLoadingTask() () from /usr/lib/libdigikamcore.so.2 #17 0x078f4880 in Digikam::ManagedLoadSaveThread::removeLoadingTasks (this=0xa913f58, description=..., filter=Digikam::ManagedLoadSaveThread::LoadingTaskFilterAll) at /home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/managedloadsavethread.cpp:571 #18 0x078f5d1f in Digikam::ManagedLoadSaveThread::shutDown (this=0xa913f58) at /home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/managedloadsavethread.cpp:65 #19 0x07918106 in Digikam::ThumbnailLoadThread::~ThumbnailLoadThread (this=0xa913f58, __in_chrg=<value optimized out>) at /home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/thumbnailloadthread.cpp:175 #20 0x07915658 in destroy () at /home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/thumbnailloadthread.cpp:152 #21 Digikam::ThumbnailLoadThread::cleanUp () at /home/chris/src/digikam/digikam-2.0.0-beta1/core/libs/threadimageio/thumbnailloadthread.cpp:198 #22 0x08234de2 in Digikam::DigikamApp::~DigikamApp (this=0x9c51738, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /home/chris/src/digikam/digikam-2.0.0-beta1/core/digikam/digikamapp.cpp:319 #23 0x01b999a5 in qDeleteInEventHandler (o=0x0) at kernel/qobject.cpp:3988 #24 0x01b9b6c8 in QObject::event (this=0x9c51738, e=0x6) at kernel/qobject.cpp:1202 #25 0x025b0936 in QWidget::event (this=0x9c51738, event=0xb93ef70) at kernel/qwidget.cpp:8646 #26 0x029f1917 in QMainWindow::event (this=0x9c51738, event=0xb93ef70) at widgets/qmainwindow.cpp:1417 #27 0x065a08a4 in KMainWindow::event (this=0x9c51738, ev=0xb93ef70) at ../../kdeui/widgets/kmainwindow.cpp:1100 #28 0x065e914f in KXmlGuiWindow::event (this=0x9c51738, ev=0xb93ef70) at ../../kdeui/xmlgui/kxmlguiwindow.cpp:130 #29 0x02552fdc in QApplicationPrivate::notify_helper (this=0x9b3f188, receiver=0x9c51738, e=0xb93ef70) at kernel/qapplication.cpp:4396 #30 0x025590e9 in QApplication::notify (this=0xbfd0307c, receiver=0x9c51738, e=0xb93ef70) at kernel/qapplication.cpp:4361 #31 0x064aa68a in KApplication::notify (this=0xbfd0307c, receiver=0x9c51738, event=0xb93ef70) at ../../kdeui/kernel/kapplication.cpp:310 #32 0x01b88b3b in QCoreApplication::notifyInternal (this=0xbfd0307c, receiver=0x9c51738, event=0xb93ef70) at kernel/qcoreapplication.cpp:732 #33 0x01b8bd8b in sendEvent (receiver=0x0, event_type=0, data=0x9b0c3d0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #34 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9b0c3d0) at kernel/qcoreapplication.cpp:1373 #35 0x01b8bf4d in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1266 #36 0x01bb7a74 in sendPostedEvents (s=0x9b41510) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220 #37 postEventSourceDispatch (s=0x9b41510) at kernel/qeventdispatcher_glib.cpp:277 #38 0x050b8855 in g_main_context_dispatch () from /lib/libglib-2.0.so.0 #39 0x050bc668 in ?? () from /lib/libglib-2.0.so.0 #40 0x050bc848 in g_main_context_iteration () from /lib/libglib-2.0.so.0 #41 0x01bb7565 in QEventDispatcherGlib::processEvents (this=0x9b0be98, flags=...) at kernel/qeventdispatcher_glib.cpp:415 #42 0x02614be5 in QGuiEventDispatcherGlib::processEvents (this=0x9b0be98, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #43 0x01b87609 in QEventLoop::processEvents (this=0xbfd02f64, flags=) at kernel/qeventloop.cpp:149 #44 0x01b87a8a in QEventLoop::exec (this=0xbfd02f64, flags=...) at kernel/qeventloop.cpp:201 #45 0x01b8c00f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009 #46 0x02551e07 in QApplication::exec () at kernel/qapplication.cpp:3672 #47 0x0831b8cb in main (argc=1, argv=0xbfd03314) at /home/chris/src/digikam/digikam-2.0.0-beta1/core/digikam/main.cpp:232 Possible duplicates by query: bug 239862. Reported using DrKonqi
Marcel, Crash appear in tread interface when thumbs are processed. I already see a lots of similar report, especially in 1.x releases. Gilles Caulier
This happens at shutdown. No idea currently. I will rewrite the relevant part using an iterator because it's a bit weird atm, but that should not be the reason to crash.
The promised rewrite was (inadvertently) included in commit 1215090. As I said, I dont know if it helps.
*** Bug 276097 has been marked as a duplicate of this bug. ***
digiKam 2.0.0 RC is out. Please check if crash is reproducible with this version. Thanks in advance Gilles Caulier
digiKam 2.2.0 is out since few weeks. Crash still valid with this version ? Gilles Caulier
We need feedback with 2.4.0 release... Gilles Caulier
New digiKam 4.11.0 is available : https://www.digikam.org/node/740 Can you reproduce the problem with this release ? Gilles caulier
digiKam 4.12.0 is out : https://www.digikam.org/node/741 We need a fresh feedback using this release please... Thanks in advance.
With digiKam 5.0.0, this problem is not reproducible. I close this file now. Don't hesitate to re-open if necessary. Gilles Caulier