in reply to
Understanding pack and unpack changes for binary data between 5.8 and 5.10
I think you either have to 'use bytes', or make sure you don't use variables that have their utf8 flag set.
I've been bitten by one of the changes in perl 5.10 :
pack('V/a*',$a) returns a value with the utf8 flag if $a has it, unless you "use bytes". It didn't do that in perl 5.8.
Am I the only one to find this new behavior very strange ? the value returned by pack('V/a*',$a) is binary, interpreting it as utf8 makes no sense :(