Boost logo

Boost Users :

Subject: [Boost-users] directory_iterator ++operator never return
From: gtsml owevwr (gtsml.owevwr_at_[hidden])
Date: 2009-05-19 07:38:23


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



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net