From dfeb9c8094b4af984a25d6fdc521c2673ccd30df Mon Sep 17 00:00:00 2001 From: Arnaud Degroote <arnaud.degroote@isae.fr> Date: Mon, 28 Apr 2014 13:52:51 +0200 Subject: [PATCH] [wip/mrpt] Upgrade to 1.1.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Changes since 1.0.2: -------------------- New apps: DifOdometry-Camera. (By Mariano Jaimez Tarifa) DifOdometry-Datasets. (By Mariano Jaimez Tarifa) New classes: [mrpt-base] mrpt::synch::CPipe: OS-independent pipe support. [mrpt-hwdrivers] - mrpt::hwdrivers::CIMUXSens_MT4 : Support for 4th generation xSens MT IMU devices. - mrpt::hwdrivers::CNationalInstrumentsDAQ: Support for acquisition boards compatible with National Instruments DAQmx Base - mrpt::hwdrivers::CImageGrabber_FlyCapture2: Support for Point Grey Research's cameras via the FlyCapture2 libray [mrpt-maps] There are now two versions of octomaps (by Mariano Jaimez Tarifa/Jose Luis Blanco) mrpt::slam::COctoMap (only occupancy) mrpt::slam::CColouredOctoMap (occupancy + RGB color) [mrpt-obs] mrpt::slam::CObservationRawDAQ, a placeholder for raw and generic measurements from data acquisition devices. [mrpt-opengl] - mrpt::opengl::CMeshFast, an open gl object that draws a "mesh" as a structured point cloud which is faster to render (by Mariano Jaimez Tarifa). - mrpt::opengl::CVectorField2D, an opengl object that shows a 2D Vector Field (by Mariano Jaimez Tarifa). [mrpt-reactivenav] mrpt::reactivenav::CAbstractPTGBasedReactive, as part of a large code refactoring of these classes: mrpt::reactivenav::CReactiveNavigationSystem mrpt::reactivenav::CReactiveNavigationSystem3D [mrpt-vision] mrpt::vision::CDifodo, a class which implements visual odometry based on depth images and the "range flow constraint equation". (by Mariano Jaimez Tarifa) Changes in classes: - Clean up and slight optimization of metric map matching API: Methods marked as deprecated: mrpt::slam::CMetricMap::computeMatchingWith2D() –> mrpt::slam::CMetricMap::determineMatching2D() mrpt::slam::CMetricMap::computeMatchingWith3D() –> mrpt::slam::CMetricMap::determineMatching3D() New structures: mrpt::slam::TMatchingParams mrpt::slam::TMatchingExtraResults - mrpt::slam::CPointsMap::TInsertionOptions now have methods to save/load from binary streams, making more maintainable the serialization of point maps - New options in point maps: mrpt::slam::CPointsMap::TInsertionOptions::insertInvalidPoints - mrpt::slam::CObservationIMU now includes data fields for 3D magnetometers and altimeters. - Method renamed mrpt::utils::CEnhancedMetaFile::selectVectorTextFont() to avoid shadowing mrpt::utils::CCanvas::selectTextFont() - mrpt::reactivenav::CParameterizedTrajectoryGenerator: New methods: - mrpt::reactivenav::CParameterizedTrajectoryGenerator::inverseMap_WS2TP() for inverse look-up of WS to TP space - mrpt::reactivenav::CParameterizedTrajectoryGenerator::renderPathAsSimpleLine() - (commit) - Changed the signature of mrpt::reactivenav::build_PTG_collision_grids() to become more generic for 2D & 2.5D PTGs Deleted classes: mrpt::utils::CEvent, which was actually unimplemented (!) mrpt::hwdrivers::CInterfaceNI845x has been deleted. It didn't offer features enough to justify a class. New examples: [MRPT]/samples/threadsPipe [MRPT]/samples/NIDAQ_test [MRPT]/openNI2_RGBD_demo (by Mariano Jaimez Tarifa) [MRPT]/openNI2_proximity_demo (by Mariano Jaimez Tarifa) Build system: Fixed compilation with clang. Fixed building against OpenCV 3.0.0 (GIT head) Updated to the latest nanoflann 1.1.7. Updated to Eigen 3.2.0 Binary packages for Windows now include .pdb files to help debugging with Visual Studio. BUG FIXES: Fixed potential infinity loop in mrpt::math::make_vector<1,T>() Fixed build error with GCC when experimental parallelization is enabled. - mrpt::reactivenav::CReactiveNavigationSystem complained about missing config variables ROBOTMODEL_TAU & ROBOTMODEL_DELAY, which were removed in MRPT 1.0.2 - Fixed potential mem alignment errors (Eigen's UnalignedArrayAssert) in SRBA for 32bit builds. - mrpt::topography::geodeticToENU_WGS84() and related functions used a local +Z axis aligned to the line towards the Earth center; now the Z axis points normally to the ellipsoid surface. The difference with the previous behavior is small but may be of a few millimeters for each meter from the reference point. - Potential crash when setting mpPolygon::setPoints() with empty vectors - mrpt::reactivenav::CReactiveNavigationSystem and mrpt::reactivenav::CReactiveNavigationSystem3D didn't obey the "enableConsoleOutput" constructor flag - mrpt::synch::CSemaphore::waitForSignal() : Fixed error when thread got an external signal --- mrpt/Makefile | 6 ++--- mrpt/PLIST | 57 ++++++++++++++++++++++++++++++------------- mrpt/distinfo | 8 +++--- mrpt/patches/patch-aa | 13 ---------- mrpt/patches/patch-ab | 47 ----------------------------------- 5 files changed, 45 insertions(+), 86 deletions(-) delete mode 100644 mrpt/patches/patch-aa delete mode 100644 mrpt/patches/patch-ab diff --git a/mrpt/Makefile b/mrpt/Makefile index ff6ef6f2..bd54e807 100644 --- a/mrpt/Makefile +++ b/mrpt/Makefile @@ -3,10 +3,9 @@ # DISTNAME= mrpt-${VERSION} -VERSION= 1.0.2 +VERSION= 1.1.0 CATEGORIES= wip -PKGREVISION= 2 -MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=mrpt/} +MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=mrpt/} MASTER_REPOSITORY= https://github.com/jlblancoc/mrpt MAINTAINER= arnaud.degroote@isae.fr @@ -14,7 +13,6 @@ COMMENT= Mobile Robot Programming Toolkit HOMEPAGE= http://www.mrpt.org LICENSE= modified-bsd - DYNAMIC_PLIST_DIRS+= share/doc/mrpt-doc include ../../archivers/zlib/depend.mk diff --git a/mrpt/PLIST b/mrpt/PLIST index 7fb84785..6290915f 100644 --- a/mrpt/PLIST +++ b/mrpt/PLIST @@ -1,5 +1,6 @@ -@comment Wed Dec 11 16:54:01 CET 2013 +@comment Mon Apr 28 10:46:12 CEST 2014 bin/2d-slam-demo +bin/DifOdometry-Datasets bin/GridmapNavSimul bin/RawLogViewer bin/ReactiveNav3D-Demo @@ -154,7 +155,7 @@ include/mrpt/base/include/mrpt/random.h include/mrpt/base/include/mrpt/random/RandomGenerators.h include/mrpt/base/include/mrpt/synch.h include/mrpt/base/include/mrpt/synch/CCriticalSection.h -include/mrpt/base/include/mrpt/synch/CEvent.h +include/mrpt/base/include/mrpt/synch/CPipe.h include/mrpt/base/include/mrpt/synch/CSemaphore.h include/mrpt/base/include/mrpt/synch/CThreadSafeVariable.h include/mrpt/base/include/mrpt/synch/MT_buffer.h @@ -308,24 +309,27 @@ include/mrpt/hwdrivers/include/mrpt/hwdrivers/CBoardIR.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CBoardSonars.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CCANBusReader.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CCameraSensor.h +include/mrpt/hwdrivers/include/mrpt/hwdrivers/CEnoseModular.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CFFMPEG_InputStream.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CGPSInterface.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CGenericSensor.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CGyroKVHDSP3000.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CHokuyoURG.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CIMUXSens.h +include/mrpt/hwdrivers/include/mrpt/hwdrivers/CIMUXSens_MT4.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CIbeoLuxETH.h +include/mrpt/hwdrivers/include/mrpt/hwdrivers/CImageGrabber_FlyCapture2.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CImageGrabber_OpenCV.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CImageGrabber_dc1394.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CImpinjRFID.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CInterfaceFTDI.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CInterfaceFTDIMessages.h -include/mrpt/hwdrivers/include/mrpt/hwdrivers/CInterfaceNI845x.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CJoystick.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CKinect.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CLMS100eth.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CNTRIPClient.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CNTRIPEmitter.h +include/mrpt/hwdrivers/include/mrpt/hwdrivers/CNationalInstrumentsDAQ.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CPhidgetInterfaceKitProximitySensors.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CPtuBase.h include/mrpt/hwdrivers/include/mrpt/hwdrivers/CPtuDPerception.h @@ -388,12 +392,15 @@ include/mrpt/maps/include/mrpt/otherlibs/octomap/octomap_types.h include/mrpt/maps/include/mrpt/otherlibs/octomap/octomap_utils.h include/mrpt/maps/include/mrpt/slam/CBeacon.h include/mrpt/maps/include/mrpt/slam/CBeaconMap.h +include/mrpt/maps/include/mrpt/slam/CColouredOctoMap.h include/mrpt/maps/include/mrpt/slam/CColouredPointsMap.h include/mrpt/maps/include/mrpt/slam/CGasConcentrationGridMap2D.h include/mrpt/maps/include/mrpt/slam/CHeightGridMap2D.h include/mrpt/maps/include/mrpt/slam/CLogOddsGridMap2D.h include/mrpt/maps/include/mrpt/slam/COccupancyGridMap2D.h include/mrpt/maps/include/mrpt/slam/COctoMap.h +include/mrpt/maps/include/mrpt/slam/COctoMapBase.h +include/mrpt/maps/include/mrpt/slam/COctoMapBase_impl.h include/mrpt/maps/include/mrpt/slam/CPointsMap.h include/mrpt/maps/include/mrpt/slam/CRandomFieldGridMap2D.h include/mrpt/maps/include/mrpt/slam/CReflectivityGridMap2D.h @@ -427,6 +434,7 @@ include/mrpt/obs/include/mrpt/slam/CObservationImage.h include/mrpt/obs/include/mrpt/slam/CObservationOdometry.h include/mrpt/obs/include/mrpt/slam/CObservationRFID.h include/mrpt/obs/include/mrpt/slam/CObservationRange.h +include/mrpt/obs/include/mrpt/slam/CObservationRawDAQ.h include/mrpt/obs/include/mrpt/slam/CObservationReflectivity.h include/mrpt/obs/include/mrpt/slam/CObservationStereoImages.h include/mrpt/obs/include/mrpt/slam/CObservationStereoImagesFeatures.h @@ -457,6 +465,7 @@ include/mrpt/opengl/include/mrpt/opengl/CGridPlaneXY.h include/mrpt/opengl/include/mrpt/opengl/CGridPlaneXZ.h include/mrpt/opengl/include/mrpt/opengl/CLight.h include/mrpt/opengl/include/mrpt/opengl/CMesh.h +include/mrpt/opengl/include/mrpt/opengl/CMeshFast.h include/mrpt/opengl/include/mrpt/opengl/COctoMapVoxels.h include/mrpt/opengl/include/mrpt/opengl/COctreePointRenderer.h include/mrpt/opengl/include/mrpt/opengl/COpenGLScene.h @@ -478,6 +487,7 @@ include/mrpt/opengl/include/mrpt/opengl/CText3D.h include/mrpt/opengl/include/mrpt/opengl/CTextMessageCapable.h include/mrpt/opengl/include/mrpt/opengl/CTexturedObject.h include/mrpt/opengl/include/mrpt/opengl/CTexturedPlane.h +include/mrpt/opengl/include/mrpt/opengl/CVectorField2D.h include/mrpt/opengl/include/mrpt/opengl/gl_utils.h include/mrpt/opengl/include/mrpt/opengl/graph_tools.h include/mrpt/opengl/include/mrpt/opengl/graph_tools_impl.h @@ -491,6 +501,7 @@ include/mrpt/opengl/include/otherlibs/freeglut/GL/freeglut_std.h include/mrpt/opengl/include/otherlibs/freeglut/GL/glut.h include/mrpt/reactivenav/include/mrpt/reactivenav.h include/mrpt/reactivenav/include/mrpt/reactivenav/CAbstractHolonomicReactiveMethod.h +include/mrpt/reactivenav/include/mrpt/reactivenav/CAbstractPTGBasedReactive.h include/mrpt/reactivenav/include/mrpt/reactivenav/CAbstractReactiveNavigationSystem.h include/mrpt/reactivenav/include/mrpt/reactivenav/CHolonomicLogFileRecord.h include/mrpt/reactivenav/include/mrpt/reactivenav/CHolonomicND.h @@ -589,6 +600,7 @@ include/mrpt/vision/include/mrpt/slam/CLandmarksMap.h include/mrpt/vision/include/mrpt/slam/CObservationVisualLandmarks.h include/mrpt/vision/include/mrpt/vision.h include/mrpt/vision/include/mrpt/vision/CCamModel.h +include/mrpt/vision/include/mrpt/vision/CDifodo.h include/mrpt/vision/include/mrpt/vision/CFeature.h include/mrpt/vision/include/mrpt/vision/CFeatureExtraction.h include/mrpt/vision/include/mrpt/vision/CImagePyramid.h @@ -610,46 +622,46 @@ include/mrpt/vision/include/mrpt/vision/tracking.h include/mrpt/vision/include/mrpt/vision/types.h include/mrpt/vision/include/mrpt/vision/utils.h lib/libmrpt-base.so -lib/libmrpt-base.so.1.0 +lib/libmrpt-base.so.1.1 lib/libmrpt-base.so.${PKGVERSION} lib/libmrpt-detectors.so -lib/libmrpt-detectors.so.1.0 +lib/libmrpt-detectors.so.1.1 lib/libmrpt-detectors.so.${PKGVERSION} lib/libmrpt-gui.so -lib/libmrpt-gui.so.1.0 +lib/libmrpt-gui.so.1.1 lib/libmrpt-gui.so.${PKGVERSION} lib/libmrpt-hmtslam.so -lib/libmrpt-hmtslam.so.1.0 +lib/libmrpt-hmtslam.so.1.1 lib/libmrpt-hmtslam.so.${PKGVERSION} lib/libmrpt-hwdrivers.so -lib/libmrpt-hwdrivers.so.1.0 +lib/libmrpt-hwdrivers.so.1.1 lib/libmrpt-hwdrivers.so.${PKGVERSION} lib/libmrpt-kinematics.so -lib/libmrpt-kinematics.so.1.0 +lib/libmrpt-kinematics.so.1.1 lib/libmrpt-kinematics.so.${PKGVERSION} lib/libmrpt-maps.so -lib/libmrpt-maps.so.1.0 +lib/libmrpt-maps.so.1.1 lib/libmrpt-maps.so.${PKGVERSION} lib/libmrpt-obs.so -lib/libmrpt-obs.so.1.0 +lib/libmrpt-obs.so.1.1 lib/libmrpt-obs.so.${PKGVERSION} lib/libmrpt-opengl.so -lib/libmrpt-opengl.so.1.0 +lib/libmrpt-opengl.so.1.1 lib/libmrpt-opengl.so.${PKGVERSION} lib/libmrpt-reactivenav.so -lib/libmrpt-reactivenav.so.1.0 +lib/libmrpt-reactivenav.so.1.1 lib/libmrpt-reactivenav.so.${PKGVERSION} lib/libmrpt-scanmatching.so -lib/libmrpt-scanmatching.so.1.0 +lib/libmrpt-scanmatching.so.1.1 lib/libmrpt-scanmatching.so.${PKGVERSION} lib/libmrpt-slam.so -lib/libmrpt-slam.so.1.0 +lib/libmrpt-slam.so.1.1 lib/libmrpt-slam.so.${PKGVERSION} lib/libmrpt-topography.so -lib/libmrpt-topography.so.1.0 +lib/libmrpt-topography.so.1.1 lib/libmrpt-topography.so.${PKGVERSION} lib/libmrpt-vision.so -lib/libmrpt-vision.so.1.0 +lib/libmrpt-vision.so.1.1 lib/libmrpt-vision.so.${PKGVERSION} lib/pkgconfig/mrpt-base.pc lib/pkgconfig/mrpt-bayes.pc @@ -719,6 +731,7 @@ share/mime/packages/x-mrpt-hmtmap.xml share/mime/packages/x-mrpt-navlog.xml share/mime/packages/x-mrpt-rawlog.xml share/mime/packages/x-mrpt-simplemap.xml +share/mrpt/MRPTConfig-version.cmake share/mrpt/MRPTConfig.cmake share/mrpt/config_files/2d-slam-demo/2dslam-test.ini share/mrpt/config_files/README.txt @@ -741,8 +754,13 @@ share/mrpt/config_files/pbmap/configLocaliser.ini share/mrpt/config_files/pbmap/configPbMap.ini share/mrpt/config_files/pf-localization/localization_demo.ini share/mrpt/config_files/pf-localization/localization_demo_obsonly_rawlog.ini +share/mrpt/config_files/rawlog-grabber/.gitignore share/mrpt/config_files/rawlog-grabber/Enose_v2.ini share/mrpt/config_files/rawlog-grabber/KVHDSP3000.ini +share/mrpt/config_files/rawlog-grabber/NIDAQ_ains_encoders.ini +share/mrpt/config_files/rawlog-grabber/NIDAQ_analog_ins.ini +share/mrpt/config_files/rawlog-grabber/NIDAQ_digital_inputs.ini +share/mrpt/config_files/rawlog-grabber/NIDAQ_encoders.ini share/mrpt/config_files/rawlog-grabber/PhidgetIK.ini share/mrpt/config_files/rawlog-grabber/RFID.ini share/mrpt/config_files/rawlog-grabber/SICK_LMS_500k.ini @@ -751,8 +769,11 @@ share/mrpt/config_files/rawlog-grabber/Wifi.ini share/mrpt/config_files/rawlog-grabber/activmedia_robot.ini share/mrpt/config_files/rawlog-grabber/camera_1394.ini share/mrpt/config_files/rawlog-grabber/camera_opencv.ini +share/mrpt/config_files/rawlog-grabber/camera_pgr_flycap.ini +share/mrpt/config_files/rawlog-grabber/camera_pgr_flycap_stereo.ini share/mrpt/config_files/rawlog-grabber/camera_stereoBumblebee.ini share/mrpt/config_files/rawlog-grabber/dataset_citroen.ini +share/mrpt/config_files/rawlog-grabber/dataset_pid_gps.ini share/mrpt/config_files/rawlog-grabber/hokuyo_UTM.ini share/mrpt/config_files/rawlog-grabber/hokuyo_UXM.ini share/mrpt/config_files/rawlog-grabber/kinect.ini @@ -766,6 +787,8 @@ share/mrpt/config_files/rawlog-grabber/swissranger_cam.ini share/mrpt/config_files/rawlog-grabber/tuHokuyo.ini share/mrpt/config_files/rawlog-grabber/two_cameras_1394.ini share/mrpt/config_files/rawlog-grabber/xsens_IMU.ini +share/mrpt/config_files/rawlog-grabber/xsens_MT4.ini +share/mrpt/config_files/rawlog-grabber/xsens_MT4_multiple.ini share/mrpt/config_files/rbpf-slam/RO-SLAM_simulatedData_MC.ini share/mrpt/config_files/rbpf-slam/RO-SLAM_simulatedData_SOG.ini share/mrpt/config_files/rbpf-slam/example_3_gridmaps.ini diff --git a/mrpt/distinfo b/mrpt/distinfo index 6bc04fdf..bcdbb590 100644 --- a/mrpt/distinfo +++ b/mrpt/distinfo @@ -1,5 +1,3 @@ -SHA1 (mrpt-1.0.2.tar.gz) = b9c014df278c46f46f8ecba8d5e3d81332631db1 -RMD160 (mrpt-1.0.2.tar.gz) = 9918184447d7e3f106c98588e235accafe4f1171 -Size (mrpt-1.0.2.tar.gz) = 23763000 bytes -SHA1 (patch-aa) = a457469fb9a6bb1e0d4e6a63779ad8be78648382 -SHA1 (patch-ab) = ddf39b2585e1d22a65f8575f949e650faec1fcb5 +SHA1 (mrpt-1.1.0.tar.gz) = e8a8f67831171aa0f57478663173824fd14ed8ff +RMD160 (mrpt-1.1.0.tar.gz) = 76d5af8142a541fcb22101254c7650cfe1dde776 +Size (mrpt-1.1.0.tar.gz) = 21879287 bytes diff --git a/mrpt/patches/patch-aa b/mrpt/patches/patch-aa deleted file mode 100644 index ad325f51..00000000 --- a/mrpt/patches/patch-aa +++ /dev/null @@ -1,13 +0,0 @@ -Workaround for "old" eigen library - ---- libs/maps/include/mrpt/slam/CRandomFieldGridMap2D.h.orig 2013-12-12 12:03:49.905721000 +0100 -+++ libs/maps/include/mrpt/slam/CRandomFieldGridMap2D.h 2013-12-12 12:04:03.926058000 +0100 -@@ -44,6 +44,8 @@ - #include <mrpt/slam/CMetricMap.h> - #include <mrpt/slam/COccupancyGridMap2D.h> - -+#define EIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET -+ - #include <Eigen/Sparse> - - #include <mrpt/maps/link_pragmas.h> diff --git a/mrpt/patches/patch-ab b/mrpt/patches/patch-ab deleted file mode 100644 index 47950b06..00000000 --- a/mrpt/patches/patch-ab +++ /dev/null @@ -1,47 +0,0 @@ -From 511e95f03480537ff18ad2cad178c504b1cfbb53 Mon Sep 17 00:00:00 2001 -From: Jose Luis Blanco <joseluisblancoc@gmail.com> -Date: Mon, 23 Dec 2013 00:57:02 +0100 -Subject: [PATCH] CSemaphore::waitForSignal() : Fixed error when thread got an - external signal - ---- - doc/doxygen-pages/changeLog_doc.h | 2 +- - libs/base/src/synch/CSemaphore_LIN.cpp | 17 +++++++++++------ - 2 files changed, 12 insertions(+), 7 deletions(-) - -diff --git a/libs/base/src/synch/CSemaphore_LIN.cpp b/libs/base/src/synch/CSemaphore_LIN.cpp -index 32554bc..d01c9ea 100644 ---- libs/base/src/synch/CSemaphore_LIN.cpp -+++ libs/base/src/synch/CSemaphore_LIN.cpp -@@ -163,17 +163,22 @@ bool CSemaphore::waitForSignal( unsigned int timelimit ) - } - - #else -- rc = timelimit==0 ? -+ if (timelimit==0) -+ { - // No timeout -- sem_wait( token->semid ) -- : -+ rc = sem_wait( token->semid ); -+ } -+ else -+ { - // We have a timeout: -- sem_timedwait( token->semid, &tm ); --#endif -- -+ while ((rc = sem_timedwait( token->semid, &tm )) == -1 && errno == EINTR) -+ continue; // Restart if interrupted by handler -+ } -+ - // If there's an error != than a timeout, dump to stderr: - if (rc!=0 && errno!=ETIMEDOUT) - std::cerr << format("[CSemaphore::waitForSignal] In semaphore named '%s', error: %s\n", m_name.c_str(),strerror(errno) ); -+#endif - - return rc==0; // true: all ok. - --- -1.8.5.1 - -- GitLab