Hylafax Mailing List Archives

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [hylafax-users] Send program terminated abnormally with exit status 0xa



Xavier,

I'm glad that the code change helped. I'm not sure, however, that it gives me any conclusive information as far as *what* is wrong.

In the problem scenario...

   for (u_short fnum = 0; fnum < frameNumber; fnum++) {
       ... stuff ...
   }

frameNumber here *is supposed to be* 256. So by changing that to...


for (u_short fnum = 0; fnum < frameNumber && fnum < 256; fnum++) { ... stuff ... }

is just being redundant (fnum < 256 && fnum < 256). It, however, would seem to indicate that frameNumber *is not* 256. Yet, there also is the problem that here your system also thinks that (u_short) 255 + 1 = 2336. So, I'm not sure if we're looking at a problem with fnum, frameNumber, or both.

If your compiler does limit u_short to 8 bits (and that's not clearly evident because fnum was shown to contain a value larger than 255), then (your compiler, frankly, is broken) we'd have to scour the source code to make sure that no other shorts can get that big. There may not be any other cases of it other those that deal with frame numbering. But, I'm more inclined to let you pursue this with Apple, as it's very evident (255 + 1 = 2336) that something's wrong with the compiler.

Lee.


Xavier Blanco wrote:


Hi Lee,

I have done your suggested changes in source code, recompille and reinstall
and now I am able to send faxes without crashing faxsend :-)

But reading your words I understand that I can find more crashing code due
my compiler is not assigning the correct bit length to short type. Perhaps
some option at compile time is needed ?

Thank you

regards

xavier




De: Lee Howard <faxguy@xxxxxxxxxxxxxxxx>
Fecha: Tue, 15 Mar 2005 15:57:44 -0800
Para: xavier@xxxxxxxxxxxxx
CC: hylafax-users@xxxxxxxxxxx
Asunto: Re: [hylafax-users] Send program terminated abnormally with exit
status 0xa

Xavier Blanco wrote:



Mar 15 17:59:16.86: [ 2014]: SEND send frame number 251
Mar 15 17:59:16.86: [ 2014]: SEND send frame number 252
Mar 15 17:59:16.86: [ 2014]: SEND send frame number 253
Mar 15 17:59:16.86: [ 2014]: SEND send frame number 254
Mar 15 17:59:16.86: [ 2014]: SEND send frame number 255
Mar 15 17:59:16.86: [ 2014]: SEND send frame number 2336
Mar 15 17:59:16.86: [ 2014]: SEND send frame number 2337
Mar 15 17:59:16.86: [ 2014]: SEND send frame number 2338
Mar 15 17:59:16.86: [ 2014]: SEND send frame number 2340




This is a problem. There can only be frames up to number 255.

The code responsible here is faxd/Class1Send.c++ at approximately line
955.  The number mentioned there in the logs ("fnum" in the code)is
defined as type u_short.  It does this:

for (u_short fnum = 0; fnum < frameNumber; fnum++) {
... stuff ...
}

Somehow it thinks that 255+1 = 2336

As you're using a platform (and probably a compiler) that is largely
untested (OS X 10.3.8 is rather new), I'm guessing that the compiler
doesn't like u_short.

According to the information I have, we're *supposed* to have 16 bits
with a short type.  As 0-255 only consume 8 bits, I can only suppose
that your compiler is only allocating 8 bytes to shorts.  If this is
correct then this could be a problem throughout the code, as HylaFAX
uses shorts quite frequently.

You could do a couple of tests, perhaps. Change the code to read...

for (u_short fnum = 0; fnum < frameNumber && fnum < 256; fnum++) {
... stuff ...
}

Lee.





____________________ HylaFAX(tm) Users Mailing List _______________________
 To subscribe/unsubscribe, click http://lists.hylafax.org/cgi-bin/lsg2.cgi
On UNIX: mail -s unsubscribe hylafax-users-request@xxxxxxxxxxx < /dev/null
 *To learn about commercial HylaFAX(tm) support, mail sales@xxxxxxxxx*





____________________ HylaFAX(tm) Users Mailing List _______________________
 To subscribe/unsubscribe, click http://lists.hylafax.org/cgi-bin/lsg2.cgi
On UNIX: mail -s unsubscribe hylafax-users-request@xxxxxxxxxxx < /dev/null
 *To learn about commercial HylaFAX(tm) support, mail sales@xxxxxxxxx*



Home
Report any problems to webmaster@hylafax.org

HylaFAX is a trademark of Silicon Graphics Corporation.
Internet connectivity for hylafax.org is provided by:
VirtuALL Private Host Services