Hi,
I'm getting a list of the file in a directory like that:
fs::directory_iterator end ;
for( fs::directory_iterator iter(myfilepath) ; iter != end ; ++iter )
{...}
And at some point in this for loop, the ++operator never return, see callstack (single-thread build).
I found a related thread here: http://marc.info/?l=boost-users&m=118835374908173&w=2
I compiled boost in threaded and non-threaded mode and still have the same pb in both mode...
This bug reproduce with iphone os21 and os3.0, boost 1.38.0 (multi/single thread).
Anybody?
Thanks,
Frank
#0 0x31d41270 in swtch_pri
#1 0x31dd19cc in sched_yield
#2 0x000ac1d4 in boost::detail::yield at yield_k.hpp:110
#3 0x000adb54 in scoped_lock [inlined] at detail:45
#4 0x000adb54 in boost::detail::spinlock::lock at detail:32
#5 0x000adb54 in atomic_exchange_and_add [inlined] at detail:61
#6 0x000adb54 in boost::detail::sp_counted_base::release at detail:100
#7 0x000adb54 in boost::shared_ptr<boost::filesystem::detail::dir_itr_imp<boost::filesystem::basic_path<std::string, boost::filesystem::path_traits> > >::reset at detail:216
#8 0x000adb54 in boost::filesystem::basic_directory_iterator<boost::filesystem::basic_path<std::string, boost::filesystem::path_traits> >::increment
#9 0x0009cc44 in boost::iterator_core_access::increment<boost::filesystem::basic_directory_iterator<boost::filesystem::basic_path<std::string, boost::filesystem::path_traits> > > at iterator_facade.hpp:522
#10 0x0009cc64 in boost::iterator_facade<boost::filesystem::basic_directory_iterator<boost::filesystem::basic_path<std::string, boost::filesystem::path_traits> >, boost::filesystem::basic_directory_entry<boost::filesystem::basic_path<std::string, boost::filesystem::path_traits> >, boost::single_pass_traversal_tag, boost::filesystem::basic_directory_entry<boost::filesystem::basic_path<std::string, boost::filesystem::path_traits> >&, int>::operator++ at iterator_facade.hpp:664