I use Gio::FileEnumerator to tranverse each file in a directory,but the 
call of FileEnumertator::next_file() failed during execution,why?
 
      Glib::RefPtr<Gio::File> file=Gio::File::create_for_path ("./data");
          Glib::RefPtr<Gio::FileEnumerator> fileEnum=file->enumerate_children();
          Glib::RefPtr<Gio::FileInfo> fileInfo;
          while((fileInfo=fileEnum->next_file())!=NULL)       //failed
          {
                  Glib::ustring filename="./data"+"/"+fileInfo->get_name();
                  Glib::ustring suffix=filename.substr(filename.size()-3,3);
                  if(suffix=="jpg" || suffix=="bmp" || suffix=="png")
                          filenameArray.push_back(filename);
          }


   gdb result:

  glibmm-WARNING **: Failed to wrap object of type 'GLocalFileEnumerator'. 
Hint: this error is commonly caused by failing to    call a library init() 
function.    
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb6eda720 (LWP 13957)]
0xb761c2f4 in Gio::FileEnumerator::next_file () from /usr/lib/libgiomm-2.4.so.1


_______________________________________________
gtkmm-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gtkmm-list

Reply via email to