From: <nir...@gm...> - 2009-05-29 13:07:09
|
I got same error while writing a program today and searched for this error. It looked like this was an uncommon error. I had used a custom comparing function (written by me) to sort a stl vector. Later I found that the function was returning wrong value. I was returning strcmp(a, b) from comparing function, but the currect return value would be return strcmp(a, b) < 0 ? true : false;. It seems that stl sort function somehow checks for consistency of sorting done in between while sorting the vector and if finds inconsistency then gives this error. Thanks, -- Niraj -- Torsten Dreyer wrote : I experience a reproducable crash in the greater London area: Start at London City Airport (eglc) with any aircraft you like. For simplicity, I use the UFO and enable real-weather-fetch, I use the following commandline: fgfs --aircraft=ufo --airport=eglc --fdm=magic --enable-real-weather-fetch Zoom up to approx 10000ft, fly westbound until passing Tower Bridge initiate a shallow 360 to the left and *BANG* Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb63e1910 (LWP 8643)] 0x085e9920 in SGGeodesy::SGGeodToCart (geod=@0x31, cart=@0xbfc7d0c0) at SGGeodesy.cxx:100 100 SGGeodesy::SGGeodToCart(const SGGeod& geod, SGVec3<double>& cart) (gdb) bt #0 0x085e9920 in SGGeodesy::SGGeodToCart (geod=@0x31, cart=@0xbfc7d0c0) at SGGeodesy.cxx:100 #1 0x0848d39a in FGPositioned::cart (this=0x21) at /usr/local/include/simgear/math/SGVec3.hxx:191 #2 0x0849057f in DistanceOrdering::operator() (this=0xbfc7d138, a=@0xbfc7d1c0, b=@0x18b56fcc) at positioned.cxx:221 #3 0x08491b61 in std::__unguarded_linear_insert<__gnu_cxx::__normal_iterator<SGSharedPtr<FGPositioned>*, std::vector<SGSharedPtr<FGPositioned>, std::allocator<SGSharedPtr<FGPositioned> > > >, SGSharedPtr<FGPositioned>, DistanceOrdering> (__last={_M_current = 0x18b56fd4}, __val={_ptr = 0xbfc7d1c0}, __comp= {mPos = {<SGVec3Storage<double>> = {<osg::Vec3d> = {_v = {3988693.4857778242, 19214.264641430258, 4960318.8364768205}}, <No data fields>}, <No data fields>}}) at /usr/include/c++/4.3/bits/stl_algo.h:1735 #4 0x08492e3e in std::__insertion_sort<__gnu_cxx::__normal_iterator<SGSharedPtr<FGPositioned>*, std::vector<SGSharedPtr<FGPositioned>, std::allocator<SGSharedPtr<FGPositioned> > > >, DistanceOrdering> (__first={_M_current = 0x18b56fd0}, __last={_M_current = 0x18b56fe8}, __comp= {mPos = {<SGVec3Storage<double>> = {<osg::Vec3d> = {_v = {3988693.4857778242, 19214.264641430258, 4960318.8364768205}}, <No data fields>}, <No data fields>}}) at /usr/include/c++/4.3/bits/stl_algo.h:1785 #5 0x08492fb9 in std::__final_insertion_sort<__gnu_cxx::__normal_iterator<SGSharedPtr<FGPositioned>*, std::vector<SGSharedPtr<FGPositioned>, std::allocator<SGSharedPtr<FGPositioned> > > >, DistanceOrdering> (__first={_M_current = 0xbfc7d0c0}, __last={_M_current = 0x18b56fe8}, __comp= {mPos = {<SGVec3Storage<double>> = {<osg::Vec3d> = {_v = {3988693.4857778242, 19214.264641430258, 4960318.8364768205}}, <No data fields>}, <No data fields>}}) at /usr/include/c++/4.3/bits/stl_algo.h:1849 #6 0x0848f25f in sortByDistance (aPos=<value optimized out>, aResult=<value optimized out>) at /usr/include/c++/4.3/bits/stl_algo.h:4822 #7 0x0848fcdd in spatialGetClosest (aPos=@0xbfc7d630, aN=1, aCutoffNm=10000, aFilter=0xbfc7d64c) at positioned.cxx:328 #8 0x0848fe06 in FGPositioned::findClosest (aPos=@0xbfc7d630, aCutoffNm=10000, aFilter=0xbfc7d64c) at positioned.cxx:537 #9 0x084b5a0a in FGAirport::findClosest (aPos=@0xbfc7d630, aCuttofNm=10000, filter=0xbfc7d64c) at simple.cxx:242 #10 0x0852f8dd in FGMetarEnvironmentCtrl::update (this=0x1043b5d0, delta_time_sec=0.5) at environment_ctrl.cxx:729 #11 0x08629809 in SGSubsystemGroup::Member::update (this=0x1043bec0, delta_time_sec=0.041666666666666664) at subsystem_mgr.cxx:306 #12 0x0862c29b in SGSubsystemGroup::update (this=0x1043aa88, delta_time_sec=0.041666666666666664) at subsystem_mgr.cxx:159 #13 0x08526f2a in FGEnvironmentMgr::update (this=0x1043aa88, dt=0.041666666666666664) at environment_mgr.cxx:258 #14 0x08629809 in SGSubsystemGroup::Member::update (this=0x10463cb8, delta_time_sec=0.041666666666666664) at subsystem_mgr.cxx:306 #15 0x0862c29b in SGSubsystemGroup::update (this=0x87a165c, delta_time_sec=0.041666666666666664) at subsystem_mgr.cxx:159 #16 0x0806a36b in fgMainLoop () at main.cxx:498 #17 0x080b20ec in fgOSMainLoop () at fg_os_osgviewer.cxx:177 #18 0x08069725 in fgMainInit (argc=3, argv=0xbfc7dd34) at main.cxx:1046 #19 0x080677ea in main (argc=-652280259, argv=0x3fe8fbc2) at bootstrap.cxx:177 (gdb) This is on OpenSuSE 11.1 with todays FlightGear/SimGear CVS and the terragear/SVN synced scenery. Anybody else gets this? Torsten ------------------------------------------------------------------------------ Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are powering Web 2.0 with engaging, cross-platform capabilities. Quickly and easily build your RIAs with Flex Builder, the Eclipse(TM)based development software that enables intelligent coding and step-through debugging. Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com _______________________________________________ Flightgear-devel mailing list Flightgear-devel@list... https://lists.sourceforge.net/lists/listinfo/flightgear-devel -- This message was sent on behalf of nir...@gm... at openSubscriber.com http://www.opensubscriber.com/message/fli...@li.../11674482.html |