Author: bernhard
Date: Mon May  5 13:11:23 2008
New Revision: 27326

Modified:
   trunk/languages/plumhead/src/common/builtins.pir
   trunk/languages/plumhead/src/phc/past_xml_to_past_nqp.xsl

Log:
[Plumhead]
decode Base64 encoded string, before using them in setting up PAST


Modified: trunk/languages/plumhead/src/common/builtins.pir
==============================================================================
--- trunk/languages/plumhead/src/common/builtins.pir    (original)
+++ trunk/languages/plumhead/src/common/builtins.pir    Mon May  5 13:11:23 2008
@@ -1,5 +1,18 @@
 # $Id$
 
+# a helper for the PHC variant
+.sub 'decode_base64'
+   .param string base64
+
+   .local pmc dec_sub
+    dec_sub = get_global [ "MIME"; "Base64" ], 'decode_base64'
+
+    .local string result_decode
+    result_decode = dec_sub( base64 )
+
+    .return ( result_decode )
+.end
+
 .sub 'print_newline'
     say ''
 .end

Modified: trunk/languages/plumhead/src/phc/past_xml_to_past_nqp.xsl
==============================================================================
--- trunk/languages/plumhead/src/phc/past_xml_to_past_nqp.xsl   (original)
+++ trunk/languages/plumhead/src/phc/past_xml_to_past_nqp.xsl   Mon May  5 
13:11:23 2008
@@ -52,7 +52,7 @@
 <xsl:template match="@value">
   <xsl:choose>
     <xsl:when test="../@encoding = 'base64'" >
-      :<xsl:value-of select="name()" />( "\n" ),                              
+      :<xsl:value-of select="name()" />( decode_base64( '<xsl:value-of 
select="." />' ) ),
     </xsl:when>
     <xsl:otherwise>
       :<xsl:value-of select="name()" />( '<xsl:value-of select="." />' ),      
                        

Reply via email to