Kurt Roeckx <[EMAIL PROTECTED]> wrote:
> >     I applied these and zelously went through and made sure everything
> > in those files is type-safe. Now the result isn't releaseable on 32-bit
> > platforms, it compiles fine, but it's causing segmentation faults after a
> > few minutes of operation. :-/ 
> I don't think the changes made to the printf()'s are causing
> segfaults.  I'm guessing some other changes where made.

        I changed the types of some variables along the way and converted as
much as I could to use PRI's instead of straight formatting codes. Like I
said, I got zealous about it. :)

> So, I still get those:

        Cool, I'll have a look at those tonight. Thanks, I'm learning a lot
from this. :)

                - Tyler


> bt_metainfo.c: In function 'load_metainfo':
> bt_metainfo.c:45: warning: format '%llu' expects type 'long long unsigned 
> int', but argument 4 has type '__off_t'
> bt_metainfo.c:66: warning: format '%llu' expects type 'long long unsigned 
> int', but argument 3 has type '__off_t'
> bt_metainfo.c:74: warning: format '%llu' expects type 'long long unsigned 
> int', but argument 4 has type '__off_t'
> 
> Which where the off_t problem.  I had changed those to %zu, but I
> assume that didn't work out on 32 bit.
> 
> And this seems to be new:
> btt_tracker_alloc.c: In function 'shmem_filename':
> btt_tracker_alloc.c:42: warning: format '%ld' expects type 'long int', but 
> argument 5 has type 'int'
> btt_tracker_alloc.c:42: warning: format '%ld' expects type 'long int', but 
> argument 6 has type 'int'
> 
> len is an int, and so since BT_FILE_LEN is a constant, so is the
> last argument.  I suggest you just change thsoe to "%d".
> 
> Then there is:
> btt_peer.c: In function 'btt_peer2bencode':
> btt_peer.c:274: warning: format '%u' expects type 'unsigned int', but 
> argument 3 has type 'size_t'
> 
> and a size_t requires %zu.
> 
> Then we get:
> Tracker.xs: In function 'XS_Net__BitTorrent__LibBT__Tracker_Infohash':
> Tracker.xs:580: warning: format '%zu' expects type 'size_t', but argument 4 
> has type 'int'
> Tracker.xs: In function 'XS_Net__BitTorrent__LibBT__Tracker__Infohash_Peer':
> Tracker.xs:1051: warning: format '%zu' expects type 'size_t', but argument 4 
> has type 'int'
> 
> The len has the correct %zu, but BT_INFOHASH_LEN and
> BT_PEERID_LEN are only an int.
> 
> That was it.
> 
> 
> Kurt
> 

-- 
Tank will collaboratively market mission-critical appliances.

Reply via email to