[Bug 625798] Re: Don't use int constants with a long data type.

Launchpad Bug Tracker 625798 at bugs.launchpad.net
Mon Sep 6 10:35:10 BST 2010


This bug was fixed in the package tickcount - 0.1-0ubuntu13

---------------
tickcount (0.1-0ubuntu13) maverick; urgency=low

  * Fix wrap-around computation and test suite for it:
    Don't use int constants for a long data type. It doesn't work as expected
    on 64bit. (lp: #625798)
 -- Michael Bienia <geser at ubuntu.com>   Sat, 28 Aug 2010 14:34:37 +0200

** Changed in: tickcount (Ubuntu)
       Status: In Progress => Fix Released

-- 
Don't use int constants with a long data type.
https://bugs.launchpad.net/bugs/625798
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is a direct subscriber.

Status in Tickcount Python Extension: New
Status in “tickcount” package in Ubuntu: Fix Released

Bug description:
A debug session in #ubuntu-devel initiated by Emmet Hikory for the cause of the FTBFS for powerpc, revealing a but in the tickcount code.

tickcount's C code uses "long" for the variables but uses UINT_MAX for the wrap-around computation. The same applies to the test suite for it, it also uses UINT_MAX. This works for 32bit because sizeof(int)==4==sizeof(long) but not for 64bit where sizeof(int)==4!=8==sizeof(long). Therefore on 64bit the computation is wrong and the test suite doesn't check a wrap around (as the values used fit into 64bit and no wrap-around happens).





More information about the Ubuntu-sponsors mailing list