Rockbox

  • Status Closed
  • Percent Complete
    100%
  • Task Type Patches
  • Category ID3 / meta data
  • Assigned To No-one
  • Operating System All players
  • Severity Low
  • Priority Very Low
  • Reported Version Daily build (which?)
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by Sean Bartell - 2011-06-22
Last edited by Nils Wallménius - 2011-08-27

FS#12163 - Fix AIFF on 64-bit systems

There’s a bug in get_long_be etc. in apps/metadata/metadata_common.c on 64-bit systems. An unsigned char is shifted left, so it’s converted to an int, which can result in a negative value. This value is sign-extended to 64 bits when it’s returned as an unsigned long. Changing the return type to uint32_t fixes the problem for now, although these functions should eventually be refactored.

This problem is unlikely to affect most formats, since they don’t have values >0x7fffffff. The exception is AIFF, when it reads the file’s frequency; this bug prevents 44100Hz AIFF files from being played.

Closed by  Nils Wallménius
2011-08-27 12:34
Reason for closing:  Accepted
Additional comments about closing:  

committed, thanks

Sean Bartell commented on 2011-08-17 16:59

Updated for new function in metadata_common.c.

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing