• Status Closed
  • Percent Complete
  • 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 wtachi - 2011-06-22
Last edited by nls - 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  nls
2011-08-27 12:34
Reason for closing:  Accepted
Additional comments about closing:   Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407

committed, thanks

Updated for new function in metadata_common.c.


Available keyboard shortcuts


Task Details

Task Editing