aMule Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

We're back! (IN POG FORM)

Author Topic: amuled -f CRASHED  (Read 2258 times)

sasku

  • Newbie
  • Karma: 0
  • Offline Offline
  • Posts: 1
amuled -f CRASHED
« on: January 12, 2006, 09:06:11 AM »

running amule from crond
/etc/cron.daily/amule
Code: [Select]
su user -c /usr/local/bin/amuled -f >/tmp/amule.log 2>/tmp/amule.err
and :
amule.err:
Code: [Select]
amuled: OnInit - starting timer
Initialising aMule
Checking if there is an instance already running...
No other instances are running.
        aMule Version: aMuled 2.1.0 using wxGTK1 v2.6.0

Terminated after throwing an instance of 'CInvalidStateEx'
        what(): CRunTimeException::CInvalidStateException: CFile: Cannot get length of closed file.
        backtrace:
[2] CamuleApp::OnUnhandledException() in :0
[3] wxEntry(int&, char**) in /usr/lib/libwx_base-2.6.so.0[0x17dc16]
[4] __gxx_personality_v0 in :0
[5] __libc_start_main in /lib/tls/libc.so.6[0x8e0e33]
[6] wxEvtHandler::ProcessEvent(wxEvent&) in :0


what is it ?
Logged

Xaignar

  • Admin and Code Junky
  • Hero Member
  • *****
  • Karma: 19
  • Offline Offline
  • Posts: 1103
Re: amuled -f CRASHED
« Reply #1 on: January 12, 2006, 01:15:09 PM »

A bug. I'll look into it, but sadly the backtrace isn't of much help =/
Logged

ken

  • Hero Member
  • *****
  • Karma: 4
  • Offline Offline
  • Posts: 825
Re: amuled -f CRASHED
« Reply #2 on: January 13, 2006, 05:36:17 AM »

Hmm.  Is it possible to take a snapshot of the stack at the time that one of our exception classes is constructed and then later return it in the what() function?  Keep in mind, we don't need to translate addresses into file names and line number unless and until what() is called.  We can just keep the addresses.  Also, we can allocate a fixed-length array of them (say, 20), so we don't have to worry about unbounded memory requirements.

I realize that non-fatal exceptions may be thrown in the course of aMule's operation.  So, this is a bad idea if gathering the stack trace snapshot is very expensive.

Anyway, just an idea.  I'd write it myself, but stack traces aren't available on the Mac.

P.S. Maybe it could/should be broken out to a where() function, instead of the what() function.
Logged