Bug 1048147

Summary: decode_utf8() returns gibberish on non-string value
Product: Red Hat Enterprise Linux 7 Reporter: Petr Pisar <ppisar>
Component: perl-EncodeAssignee: Petr Pisar <ppisar>
Status: CLOSED CURRENTRELEASE QA Contact: Martin Kyral <mkyral>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.0CC: mkyral
Target Milestone: rcKeywords: Patch
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://rt.cpan.org/Public/Bug/Display.html?id=91569
Whiteboard:
Fixed In Version: perl-Encode-2.51-6.el7 Doc Type: Bug Fix
Doc Text:
Cause: Calling decode_utf8() on non-string value. Consequence: A random value is returned. Fix: An upstream fix has been applied to stringify any argument regardless of its type. Result: Calling decode_utf8() on non-string value will return a string representation of the value.
Story Points: ---
Clone Of: 1048134 Environment:
Last Closed: 2014-06-12 08:41:39 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1048910    
Bug Blocks:    
Attachments:
Description Flags
Upstream fix ported to 2.51 none

Description Petr Pisar 2014-01-03 09:48:12 UTC
+++ This bug was initially created as a clone of Bug #1048134 +++

$ perl -e 'use Encode; print decode_utf8(*foo), qq{\n}'
Wide character in print at -e line 1.
0 AH��@��
[...]

Expected value is '*main::foo'.

Fixed in upstream version 2.56 with commit:

commit 14307cf7e433056128727f5d738ee317ef05b016
Author: Dan Kogai <dankogai+github>
Date:   Sun Dec 22 13:07:05 2013 +0900

    VERSION 2.56

Fedora < 21 are affected.

-----
RHEL-7 is affected too (perl-Encode-2.51-3.el7.x86_64).

Comment 2 Petr Pisar 2014-01-03 10:01:41 UTC
Created attachment 844894 [details]
Upstream fix ported to 2.51