View Single Post
Old 02-28-2018, 01:33 PM   #17
KevinH
Sigil Developer
KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.
 
Posts: 8,554
Karma: 5703586
Join Date: Nov 2009
Device: many
Okay a ran flightcrew-plugin from the command line inside lldb focused on an unzipped folder holding your test ebook and then put a breakpoint to catch the throwing of an exception.

Here is the backtrace:
Code:
(lldb) process launch dug/
Process 808 launched: './flightcrew-plugin' (x86_64)
Error during run: std::exception
Process 808 exited with status = 1 (0x00000001) 
(lldb) b __cxa_throw
Breakpoint 1: where = libc++abi.dylib`__cxa_throw, address = 0x00007fff501bb1f4
(lldb) run
Process 816 launched: './flightcrew-plugin' (x86_64)
Process 816 stopped
* thread #1: tid = 0x22343, 0x00007fff501bb1f4 libc++abi.dylib`__cxa_throw, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1
    frame #0: 0x00007fff501bb1f4 libc++abi.dylib`__cxa_throw
libc++abi.dylib`__cxa_throw:
->  0x7fff501bb1f4 <+0>: pushq  %rbp
    0x7fff501bb1f5 <+1>: movq   %rsp, %rbp
    0x7fff501bb1f8 <+4>: pushq  %r15
    0x7fff501bb1fa <+6>: pushq  %r14
(lldb) bt
* thread #1: tid = 0x22343, 0x00007fff501bb1f4 libc++abi.dylib`__cxa_throw, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1
  * frame #0: 0x00007fff501bb1f4 libc++abi.dylib`__cxa_throw
    frame #1: 0x000000010002dc09 flightcrew-plugin`void boost::throw_exception<FlightCrew::PathNotInUtf8>(FlightCrew::PathNotInUtf8 const&) + 201
    frame #2: 0x0000000100029d63 flightcrew-plugin`void boost::exception_detail::throw_exception_<FlightCrew::PathNotInUtf8>(FlightCrew::PathNotInUtf8 const&, char const*, char const*, int) + 179
    frame #3: 0x00000001000293ed flightcrew-plugin`FlightCrew::Util::Utf8PathToBoostPath(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) + 765
    frame #4: 0x000000010006467b flightcrew-plugin`FlightCrew::ReachabilityAnalysis::GetLinkedResourcesFromOps(boost::filesystem::path const&) + 683
    frame #5: 0x0000000100063590 flightcrew-plugin`FlightCrew::ReachabilityAnalysis::GetLinkedResourcesFromAllOps(boost::unordered::unordered_set<boost::filesystem::path, boost::hash<boost::filesystem::path>, std::__1::equal_to<boost::filesystem::path>, std::__1::allocator<boost::filesystem::path> > const&) + 208
    frame #6: 0x00000001000630d6 flightcrew-plugin`FlightCrew::ReachabilityAnalysis::GetDirectlyReachableResources(boost::unordered::unordered_set<boost::filesystem::path, boost::hash<boost::filesystem::path>, std::__1::equal_to<boost::filesystem::path>, std::__1::allocator<boost::filesystem::path> > const&) + 54
    frame #7: 0x000000010005fb42 flightcrew-plugin`FlightCrew::ReachabilityAnalysis::DetermineReachableResources(boost::unordered::unordered_set<boost::filesystem::path, boost::hash<boost::filesystem::path>, std::__1::equal_to<boost::filesystem::path>, std::__1::allocator<boost::filesystem::path> > const&) + 82
    frame #8: 0x000000010005ebc9 flightcrew-plugin`FlightCrew::ReachabilityAnalysis::ValidateXml(xercesc_3_1::DOMDocument const&, boost::filesystem::path const&) + 105
    frame #9: 0x0000000100023ee3 flightcrew-plugin`FlightCrew::ValidateOpf(boost::filesystem::path const&) + 451
    frame #10: 0x0000000100014ccb flightcrew-plugin`FlightCrew::DescendToContentXml(boost::filesystem::path const&) + 363
    frame #11: 0x0000000100015a82 flightcrew-plugin`FlightCrew::ValidateEpubRootFolder(boost::filesystem::path const&) + 402
    frame #12: 0x000000010000ae95 flightcrew-plugin`FlightCrew::ValidateEpubRootFolder(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) + 37
    frame #13: 0x0000000100001bf2 flightcrew-plugin`ValidateFiles(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) + 50
    frame #14: 0x0000000100002695 flightcrew-plugin`main + 1445
    frame #15: 0x00007fff52118115 libdyld.dylib`start + 1
    frame #16: 0x00007fff52118115 libdyld.dylib`start + 1
So it is walking the OPF making sure that all files are there and runs into a filename or path that can NOT be converted to utf-8 via boost.

I will try to get more info.
KevinH is offline   Reply With Quote