[epiar-devel] unhandled exception in xtree

Chris Walton chris.r.walton at gmail.com
Mon Aug 9 17:51:51 PDT 2010


Ah, found the bug from the callstack. Not that easy to fix, I'm
talking to Chris about it right now.

For now, change the permissions of your
Resources/Definitions/options.xml file so that you have read+write
access to it, and it should work (it might be set read-only or
something silly like that). That should be a sufficient work-around
for now. I'll make another post regarding the "real" fix later.



2010/8/10 Doug Mirro <dmirro at easytechtalk.com>:
> Rebuilt project with latest code and when I launch debug this is the stack
> trace.  crashes immediately upon launching debug
> looks like it is somewhere in file.cpp, in the fileStatus struct, but I
> could be wrong seeing as I'm fairly new at this :P
>
>>
>> Epiar_debug.exe!std::_Tree<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>> >,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>> >
>> >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>> > > >,0> >::_Root()  Line 1325 + 0x3 bytes    C++
>
>  Epiar_debug.exe!std::_Tree<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>>,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>>
>>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>> const ,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>> > >,0> >::_Lbound(const
> std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
> _Keyval="options/log/out")  Line 1264 + 0x8 bytes    C++
>
>  Epiar_debug.exe!std::_Tree<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>>,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>>
>>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>> const ,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>> > >,0> >::lower_bound(const
> std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
> _Keyval="options/log/out")  Line 1004 + 0x10 bytes    C++
>
> Epiar_debug.exe!std::_Tree<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>>,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>>
>>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>> const ,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>> > >,0> >::find(const
> std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
> _Keyval="options/log/out")  Line 978 + 0x10 bytes    C++
>
>  Epiar_debug.exe!XMLFile::Get(const
> std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
> path="options/log/out")  Line 66 + 0x13 bytes    C++
>
>  Epiar_debug.exe!Log::realLog(Log::Level lvl=ERR, const
> std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
> func="bool __cdecl File::Exists(const class std::basic_string<char,struct
> std::char_traits<char>,class std::allocator<char> > &)", const char *
> message=0x010a583c, ...)  Line 121 + 0x29 bytes    C++
>
>  Epiar_debug.exe!File::Exists(const
> std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
> filename="Resources/Definitions/options.xml")  Line 276 + 0x34 bytes    C++
>
>  Epiar_debug.exe!File::OpenRead(const
> std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
> filename="Resources/Definitions/options.xml")  Line 44 + 0x9 bytes    C++
>
>  Epiar_debug.exe!XMLFile::Open(const
> std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
> filename="Resources/Definitions/options.xml")  Line 32 + 0xc bytes    C++
>
> Epiar_debug.exe!XMLFile::XMLFile(const
> std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
> filename="Resources/Definitions/options.xml")  Line 25    C++
>
>  Epiar_debug.exe!SDL_main(int argc=1, char * * argv=0x00bbfe20)  Line 116 +
> 0x42 bytes    C++
>
>      Epiar_debug.exe!main(int argc=1, char * * argv=0x00bbfe20)  Line 315 +
> 0xd bytes    C
>
>      Epiar_debug.exe!WinMain(HINSTANCE__ * hInst=0x00ce0000, HINSTANCE__ *
> hPrev=0x00000000, char * szCmdLine=0x013d590e, int sw=1)  Line 398 + 0xd
> bytes    C
>
>      Epiar_debug.exe!__tmainCRTStartup()  Line 263 + 0x2c bytes    C
>
>      Epiar_debug.exe!WinMainCRTStartup()  Line 182    C
>      kernel32.dll!75373677()
>      [Frames below may be incorrect and/or missing, no symbols loaded for
> kernel32.dll]
>      ntdll.dll!777c9d42()
>      ntdll.dll!777c9d15()
>
> Doug Mirro
> Easy Tech Talk - Technology made simple
>
> On 8/9/2010 9:15 AM, Chris Walton wrote:
>
> no, xtree is used by the Microsoft STL internally. Somewhere, epiar is
> using a std::map or something similar.
>
> Next time one of you gets the crash, please post the call stack here.
> We can probably figure it out from that alone.
>
> On Mon, Aug 9, 2010 at 6:14 PM, Maoserr <maoserr at gmail.com> wrote:
>
>
> I just thought of something, isn't xtree part of libxml2? And I'm guessing
> that neither one of you have saved-games.xml.  If so, it's likely that the
> memory access violation is occurring when you're trying to read
> saved-games.xml.  The memory error is probably occurring somehwere around
> there.
>
> On Mon, 09 Aug 2010 05:20:53 -0400, Димитър Станчев <plural at abv.bg> wrote:
>
>
>
>  I have the very same problem but only in debug mode. In release it runs
> properly(haven`t tried the others) Was thinking it didn`t configure
> properly cause I have some duplicate libraries installed and some of the
> viriables say ...-NOTFOUND.
>
> Was wandering, does cmake configure the libraries too or we have to run
> their own cmake scripts?
>
>
>
>  >-------- Оригинално писмо --------
>  >От:  Maoserr
>  >Относно: Re: [epiar-devel] unhandled exception in xtree
>  >До: epiar-devel at epiar.net
>  >Изпратено на: Понеделник, 2010, Август 9 07:54:00 EEST
>
>  >that's probably not the source of the error, probably a memory error,
> try
>  >stepping around, either that or you have a really messed up visual
> studio
>  >environment
>  >
>  >On Sun, 08 Aug 2010 21:08:15 -0400, Doug Mirro
>  >wrote:
>  >
>  >> Unhandled exception at 0x011a9501 in Epiar_debug.exe: 0xC0000005:
> Access
>  >> violation reading location 0x00000018.
>  >>
>  >> this pops up immediately when i try to run after rebuilding the
> solution
>  >> in debug.  it occurs in xtree, which is part of visual studio
>  >>
>  >>                             _Nodeptr&amp; _Root() const
>  >>                                      {    // return root of
> nonmutable
>  >> tree
>  >> code breaks here  ->     return (_Parent(_Myhead));
>  >
>  >
>  >_______________________________________________
>  >epiar-devel mailing list
>  >epiar-devel at epiar.net
>  >http://epiar.net/mailman/listinfo/epiar-devel
>  >
>
>
> _______________________________________________
> epiar-devel mailing list
> epiar-devel at epiar.net
> http://epiar.net/mailman/listinfo/epiar-devel
>
>
>
> _______________________________________________
> epiar-devel mailing list
> epiar-devel at epiar.net
> http://epiar.net/mailman/listinfo/epiar-devel
>
>
> _______________________________________________
> epiar-devel mailing list
> epiar-devel at epiar.net
> http://epiar.net/mailman/listinfo/epiar-devel
>
>



More information about the epiar-devel mailing list