<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px"><div dir="ltr" id="yui_3_16_0_1_1419008847963_10207"><span id="yui_3_16_0_1_1419008847963_10206">actually you might need to checkout and test the holland branch HEAD, there's fixes around that are not on CPAN&nbsp;</span></div><div dir="ltr" id="yui_3_16_0_1_1419008847963_10207"><span><br></span></div><div dir="ltr" id="yui_3_16_0_1_1419008847963_10207"><span>and it looks like filename is right but&nbsp;baseman is using a regexp that is not unicode friendly. &nbsp;I'll take a look</span></div><div dir="ltr" id="yui_3_16_0_1_1419008847963_10207"><span><br></span></div><div dir="ltr" id="yui_3_16_0_1_1419008847963_10207"><span>jnap</span></div> <div class="qtdSeparateBR"><br><br></div><div class="yahoo_quoted" style="display: block;"> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;"> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;"> <div dir="ltr"> <font size="2" face="Arial"> On Friday, December 19, 2014 11:15 AM, John Napiorkowski &lt;jjn1056@yahoo.com&gt; wrote:<br> </font> </div>  <br><br> <div class="y_msg_container"><div id="yiv0252930392"><div><div style="color:#000;background-color:#fff;font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"><div dir="ltr" id="yiv0252930392yui_3_16_0_1_1419008847963_8542"><span id="yiv0252930392yui_3_16_0_1_1419008847963_8541">Any chance you can test this on the current dev release on CPAN? &nbsp;There's a ton of utf8 fixes there. &nbsp;</span></div><div dir="ltr" id="yiv0252930392yui_3_16_0_1_1419008847963_8542"><span><br clear="none"></span></div><div dir="ltr" id="yiv0252930392yui_3_16_0_1_1419008847963_8542"><a rel="nofollow" shape="rect" id="yiv0252930392yui_3_16_0_1_1419008847963_8546" target="_blank" href="https://metacpan.org/release/JJNAPIORK/Catalyst-Runtime-5.90079_003">Catalyst-Runtime-5.90079_003 - The Catalyst Framework Runtime - metacpan.org</a><span><br clear="none"></span></div><div class="yiv0252930392link-enhancr-attachment yiv0252930392link-enhancr-element" id="yiv0252930392enhancrCard_0" style="width:450px;font-family:'Georgia', 'Times', 'Times New Roman', 'serif';margin-top:5px;margin-bottom:5px;background-color:#ffffff;"><table class="yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8905" cellspacing="0" cellpadding="0" border="0" style="width:450px;height:auto;display:block;"><tbody id="yiv0252930392yui_3_16_0_1_1419008847963_8904"><tr class="yiv0252930392link-enhancr-element"><td colspan="7" rowspan="1" class="yiv0252930392link-enhancr-element" style="height:1px;background-color:#e5e5e5;font-size:1px;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="height:1px;background-color:#e5e5e5;font-size:1px;line-height:0px;">&nbsp;</div></td></tr><tr class="yiv0252930392link-enhancr-element"><td colspan="1" rowspan="5" class="yiv0252930392link-enhancr-element" style="width:1px;background-color:#e5e5e5;font-size:1pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="width:1px;background-color:#e5e5e5;font-size:1pt;">&nbsp;</div></td><td colspan="1" rowspan="5" class="yiv0252930392link-enhancr-element" style="width:14px;background-color:#ffffff;font-size:0pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="width:14px;background-color:#ffffff;font-size:14pt;">&nbsp;</div></td><td colspan="2" rowspan="1" class="yiv0252930392link-enhancr-element" style="height:6px;background-color:#ffffff;font-size:0pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="height:6px;background-color:#ffffff;font-size:6pt;">&nbsp;</div></td><td colspan="1" rowspan="5" class="yiv0252930392link-enhancr-element" style="width:20px;background-color:#ffffff;font-size:0pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="width:20px;background-color:#ffffff;font-size:20pt;">&nbsp;</div></td><td colspan="1" rowspan="5" class="yiv0252930392link-enhancr-element" width="1" style="width:1px;background-color:#e5e5e5;font-size:1pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="width:1px;background-color:#e5e5e5;font-size:1pt;">&nbsp;</div></td></tr><tr id="yiv0252930392yui_3_16_0_1_1419008847963_8903"><td colspan="2" rowspan="1" class="yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8902" style="width:100%;vertical-align:middle;font-family:'Georgia', 'Times', 'Times New Roman', 'serif';"><div class="yiv0252930392link-enhancr-text-part yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8901" style="line-height:16.5px;background-color:#ffffff;width:414px;"><div class="yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8900" style="word-wrap:break-word;"><span class="yiv0252930392link-enhancr-element yiv0252930392icon yiv0252930392icon-shrink yiv0252930392link-enhancr-toggle"></span><span class="yiv0252930392link-enhancr-element yiv0252930392icon yiv0252930392icon-close yiv0252930392link-enhancr-delete"></span><a rel="nofollow" shape="rect" class="yiv0252930392link-enhancr-card-urlWrapper yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8899" target="_blank" href="https://metacpan.org/release/JJNAPIORK/Catalyst-Runtime-5.90079_003" style="text-decoration:none;color:#000000;line-height:100%;font-size:18px;display:block;"><span class="yiv0252930392link-enhancr-element yiv0252930392link-enhancr-card-title" id="yiv0252930392yui_3_16_0_1_1419008847963_8898" style="margin:0;font-weight:normal;margin-bottom:3px;font-size:18px;line-height:21px;max-height:43px;color:#000000;overflow:hidden;display:inline-block;">Catalyst-Runtime-5.90079_003 - The Catalyst Framework Runtime - metacpan.org</span></a><div class="yiv0252930392link-enhancr-card-description yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8906" style="font-size:13px;line-height:20px;color:#999999;max-height:81px;font-family:'Georgia', 'Times', 'Times New Roman', 'serif';overflow:hidden;">The Catalyst Framework Runtime</div></div></div></td></tr><tr id="yiv0252930392yui_3_16_0_1_1419008847963_8909"><td colspan="2" rowspan="1" class="yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8908" style="height:6px;background-color:#ffffff;font-size:0pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8907" style="height:6px;background-color:#ffffff;font-size:6pt;"></div></td></tr><tr id="yiv0252930392yui_3_16_0_1_1419008847963_8912"><td colspan="1" rowspan="1" class="yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8911" style="vertical-align:middle;font-family:'Arial', 'Helvetica Neue', 'Helvetica', 'sans-serif';"><div class="yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8910" style="font-size:0pt;"><a rel="nofollow" shape="rect" class="yiv0252930392link-enhancr-card-url yiv0252930392link-enhancr-element" target="_blank" href="https://metacpan.org/release/JJNAPIORK/Catalyst-Runtime-5.90079_003" style="color:black;text-decoration:none;cursor:pointer;"><span class="yiv0252930392link-enhancr-element yiv0252930392link-enhancr-view-on" id="yiv0252930392yui_3_16_0_1_1419008847963_8561" style="display:inline-block;line-height:11px;max-width:314px;min-width:254px;overflow:hidden;max-height:13px;"><span class="yiv0252930392link-enhancr-element yiv0252930392link-enhancr-mobile-no-resize" style="vertical-align:middle;font-size:9px;line-height:11px;color:#999999;">View on <span class="yiv0252930392link-enhancr-view-on-domain" style="font-weight:bold;">metacpan.org</span></span></span></a></div></td><td colspan="1" rowspan="1" class="yiv0252930392link-enhancr-element" style="vertical-align:middle;width:100px;font-family:'Arial', 'Helvetica Neue', 'Helvetica', 'sans-serif';"><div class="yiv0252930392link-enhancr-element yiv0252930392link-enhancr-preview-wrapper" style="max-width:100px;min-width:80px;overflow:hidden;text-align:right;line-height:11px;max-height:13px;font-size:0pt;"><span class="yiv0252930392link-enhancr-element yiv0252930392link-enhancr-preview-by yiv0252930392link-enhancr-mobile-no-resize" style="vertical-align:middle;font-size:9px;line-height:11px;color:#999999;">Preview by Yahoo</span></div></td></tr><tr><td colspan="2" rowspan="1" class="yiv0252930392link-enhancr-element" style="height:9px;background-color:#ffffff;font-size:0pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="height:9px;background-color:#ffffff;font-size:9pt;"></div></td></tr><tr class="yiv0252930392link-enhancr-element"><td colspan="7" rowspan="1" class="yiv0252930392link-enhancr-element" style="height:1px;background-color:#e5e5e5;font-size:1px;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="height:1px;background-color:#e5e5e5;font-size:1px;line-height:0px;">&nbsp;</div></td></tr></tbody></table></div><div dir="ltr" id="yiv0252930392yui_3_16_0_1_1419008847963_8542"><br clear="none"></div><div dir="ltr" id="yiv0252930392yui_3_16_0_1_1419008847963_8542">If trouble remains, I'd love an issue or ideally a test case. &nbsp;There's a big UTF8 test case over here</div><div dir="ltr" id="yiv0252930392yui_3_16_0_1_1419008847963_8542"><br clear="none"></div><div dir="ltr" id="yiv0252930392yui_3_16_0_1_1419008847963_8542"><br clear="none"></div><div dir="ltr" id="yiv0252930392yui_3_16_0_1_1419008847963_8542"><a rel="nofollow" shape="rect" id="yiv0252930392yui_3_16_0_1_1419008847963_8880" target="_blank" href="https://github.com/perl-catalyst/catalyst-runtime/blob/holland/t/utf_incoming.t">perl-catalyst/catalyst-runtime</a><br clear="none"></div><div class="yiv0252930392link-enhancr-attachment yiv0252930392link-enhancr-element" id="yiv0252930392enhancrCard_1" style="width:450px;font-family:'Georgia', 'Times', 'Times New Roman', 'serif';margin-top:5px;margin-bottom:5px;background-color:#ffffff;"><table class="yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8919" cellspacing="0" cellpadding="0" border="0" style="width:450px;height:170px;display:block;"><tbody id="yiv0252930392yui_3_16_0_1_1419008847963_8918"><tr class="yiv0252930392link-enhancr-element"><td colspan="8" rowspan="1" class="yiv0252930392link-enhancr-element" style="height:1px;background-color:#e5e5e5;font-size:1px;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="height:1px;background-color:#e5e5e5;font-size:1px;line-height:0px;">&nbsp;</div></td></tr><tr class="yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8924"><td colspan="1" rowspan="5" class="yiv0252930392link-enhancr-element" style="width:1px;background-color:#e5e5e5;font-size:1pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="width:1px;background-color:#e5e5e5;font-size:1pt;">&nbsp;</div></td><td colspan="1" rowspan="5" class="yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8923" style="vertical-align:middle;width:168px;height:168px;background-color:#000000;border-collapse:collapse;"><div align="center" class="yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8922" style="width:168px;"><a rel="nofollow" shape="rect" class="yiv0252930392link-enhancr-card-urlWrapper yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8921" target="_blank" href="https://github.com/perl-catalyst/catalyst-runtime/blob/holland/t/utf_incoming.t" style="text-decoration:none;color:#000000;"><img class="yiv0252930392link-enhancr-thumbnail-image yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8920" alt="image" src="https://avatars0.githubusercontent.com/u/2287815?v=3&amp;s=400" width="168" height="168" style="display:block;margin:auto;"></a></div></td><td colspan="1" rowspan="5" class="yiv0252930392link-enhancr-element" style="width:1px;background-color:#e5e5e5;font-size:0pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="width:1px;background-color:#e5e5e5;font-size:1pt;">&nbsp;</div></td><td colspan="1" rowspan="5" class="yiv0252930392link-enhancr-element" style="width:14px;background-color:#ffffff;font-size:0pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="width:14px;background-color:#ffffff;font-size:14pt;">&nbsp;</div></td><td colspan="2" rowspan="1" class="yiv0252930392link-enhancr-element" style="height:6px;background-color:#ffffff;font-size:0pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="height:6px;background-color:#ffffff;font-size:6pt;">&nbsp;</div></td><td colspan="1" rowspan="5" class="yiv0252930392link-enhancr-element" style="width:20px;background-color:#ffffff;font-size:0pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="width:20px;background-color:#ffffff;font-size:20pt;">&nbsp;</div></td><td colspan="1" rowspan="5" class="yiv0252930392link-enhancr-element" width="1" style="width:1px;background-color:#e5e5e5;font-size:1pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="width:1px;background-color:#e5e5e5;font-size:1pt;">&nbsp;</div></td></tr><tr id="yiv0252930392yui_3_16_0_1_1419008847963_8917"><td colspan="2" rowspan="1" class="yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8916" style="width:100%;vertical-align:middle;font-family:'Georgia', 'Times', 'Times New Roman', 'serif';"><div class="yiv0252930392link-enhancr-text-part yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8915" style="line-height:16.5px;background-color:#ffffff;height:135px;width:245px;"><div class="yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8914" style="word-wrap:break-word;"><span class="yiv0252930392link-enhancr-element yiv0252930392icon yiv0252930392icon-shrink yiv0252930392link-enhancr-toggle"></span><span class="yiv0252930392link-enhancr-element yiv0252930392icon yiv0252930392icon-close yiv0252930392link-enhancr-delete"></span><a rel="nofollow" shape="rect" class="yiv0252930392link-enhancr-card-urlWrapper yiv0252930392link-enhancr-element" target="_blank" href="https://github.com/perl-catalyst/catalyst-runtime/blob/holland/t/utf_incoming.t" style="text-decoration:none;color:#000000;line-height:100%;font-size:18px;display:block;"><span class="yiv0252930392link-enhancr-element yiv0252930392link-enhancr-card-title" style="margin:0;font-weight:normal;margin-bottom:3px;font-size:18px;line-height:21px;max-height:43px;color:#000000;overflow:hidden;display:inline-block;">perl-catalyst/catalyst-runtime</span></a><div class="yiv0252930392link-enhancr-card-description yiv0252930392link-enhancr-element" id="yiv0252930392yui_3_16_0_1_1419008847963_8913" style="font-size:13px;line-height:20px;color:#999999;max-height:81px;font-family:'Georgia', 'Times', 'Times New Roman', 'serif';overflow:hidden;">catalyst-runtime - The Elegant MVC Web Application Framework</div></div></div></td></tr><tr><td colspan="2" rowspan="1" class="yiv0252930392link-enhancr-element" style="height:4px;background-color:#ffffff;font-size:0pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="height:4px;background-color:#ffffff;font-size:4pt;"></div></td></tr><tr><td colspan="1" rowspan="1" class="yiv0252930392link-enhancr-element" style="vertical-align:middle;font-family:'Arial', 'Helvetica Neue', 'Helvetica', 'sans-serif';"><div class="yiv0252930392link-enhancr-element" style="font-size:0pt;"><a rel="nofollow" shape="rect" class="yiv0252930392link-enhancr-card-url yiv0252930392link-enhancr-element" target="_blank" href="https://github.com/perl-catalyst/catalyst-runtime/blob/holland/t/utf_incoming.t" style="color:black;text-decoration:none;cursor:pointer;"><span class="yiv0252930392link-enhancr-element yiv0252930392link-enhancr-view-on" id="yiv0252930392yui_3_16_0_1_1419008847963_8896" style="display:inline-block;line-height:11px;max-width:145px;min-width:85px;overflow:hidden;max-height:13px;"><span class="yiv0252930392link-enhancr-element yiv0252930392link-enhancr-mobile-no-resize" style="vertical-align:middle;font-size:9px;line-height:11px;color:#999999;">View on <span class="yiv0252930392link-enhancr-view-on-domain" style="font-weight:bold;">github.com</span></span></span></a></div></td><td colspan="1" rowspan="1" class="yiv0252930392link-enhancr-element" style="vertical-align:middle;width:100px;font-family:'Arial', 'Helvetica Neue', 'Helvetica', 'sans-serif';"><div class="yiv0252930392link-enhancr-element yiv0252930392link-enhancr-preview-wrapper" style="max-width:100px;min-width:80px;overflow:hidden;text-align:right;line-height:11px;max-height:13px;font-size:0pt;"><span class="yiv0252930392link-enhancr-element yiv0252930392link-enhancr-preview-by yiv0252930392link-enhancr-mobile-no-resize" style="vertical-align:middle;font-size:9px;line-height:11px;color:#999999;">Preview by Yahoo</span></div></td></tr><tr><td colspan="2" rowspan="1" class="yiv0252930392link-enhancr-element" style="height:9px;background-color:#ffffff;font-size:0pt;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="height:9px;background-color:#ffffff;font-size:9pt;"></div></td></tr><tr class="yiv0252930392link-enhancr-element"><td colspan="8" rowspan="1" class="yiv0252930392link-enhancr-element" style="height:1px;background-color:#e5e5e5;font-size:1px;border-collapse:collapse;"><div class="yiv0252930392link-enhancr-element" style="height:1px;background-color:#e5e5e5;font-size:1px;line-height:0px;">&nbsp;</div></td></tr></tbody></table></div><div id="yiv0252930392yui_3_16_0_1_1419008847963_8542"> &nbsp;</div><div dir="ltr" id="yiv0252930392yui_3_16_0_1_1419008847963_8542">Take a look and let me know if we need &nbsp;more here. &nbsp;The file upload stuff is something that is a bit confusing to me that I got it all correct</div> <div class="yiv0252930392qtdSeparateBR"><br clear="none"><br clear="none"></div><div class="yiv0252930392yahoo_quoted" style="display: block;"> <div style="font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"> <div style="font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"> <div class="yiv0252930392yqt3624872988" id="yiv0252930392yqt82332"><div dir="ltr"> <font size="2" face="Arial"> On Wednesday, December 17, 2014 7:22 PM, Bill Moseley &lt;moseley@hank.org&gt; wrote:<br clear="none"> </font> </div>  <br clear="none"><br clear="none"> <div class="yiv0252930392y_msg_container"><div id="yiv0252930392"><div dir="ltr"><div>All my upload forms have&nbsp;accept-charset="utf-8". &nbsp; &nbsp;We expect that uploaded filenames could have wide-characters.</div><div><br clear="none"></div>The problem I hit was -&gt;basename does this:<div><br clear="none"></div><div><div>$ perl -le 'use Catalyst::Request::Upload; my $upload = Catalyst::Request::Upload-&gt;new( { filename =&gt; q[документ обучения.pdf] } ); print $upload-&gt;basename;'</div><div>_.pdf</div><div><br clear="none"></div><div>That's pretty mangled.</div><div><br clear="none"></div><div><br clear="none"></div><div>The problem is that $upload-&gt;filename is not decoded so the substitution is working on octets not characters.&nbsp;</div><div><div><br clear="none"></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><div><div><font face="monospace">sub _build_basename {</font></div></div><div><div><font face="monospace">&nbsp; &nbsp; my $self = shift;</font></div></div><div><div><font face="monospace">&nbsp; &nbsp; my $basename = $self-&gt;filename;</font></div></div><div><div><font face="monospace">&nbsp; &nbsp; $basename =~ s|\\|/|g;</font></div></div><div><div><font face="monospace">&nbsp; &nbsp; $basename = ( File::Spec::Unix-&gt;splitpath($basename) )[2];</font></div></div><div><div><font face="monospace">&nbsp; &nbsp; $basename =~ s|[^\w\.-]+|_|g;</font></div></div><div><div><font face="monospace">&nbsp; &nbsp; return $basename;</font></div></div><div><div><font face="monospace">}</font></div></div></blockquote><div><div><br clear="none"></div><div>Obviously, we want \w to work on characters, not encoded octets. &nbsp; Decoding the filename should be done -- it's character data.</div><div><br clear="none"></div><div>Does it make sense to do it in Engine's prepare_uploads?</div><div><br clear="none"></div><div>For example:</div><div><br clear="none"></div><div><div><font face="monospace">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; my $u = Catalyst::Request::Upload-&gt;new(</font></div><div><font face="monospace">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;size =&gt; $upload-&gt;{size},</font></div><div><font face="monospace">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;type =&gt; scalar $headers-&gt;content_type,</font></div><div><font face="monospace">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;headers =&gt; $headers,</font></div><div><font face="monospace">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;tempname =&gt; $upload-&gt;{tempname},</font></div><div><font face="monospace">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;filename =&gt; <b>$c-&gt;_handle_unicode_decoding($upload-&gt;{filename})</b>,</font></div><div><font face="monospace">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; );</font></div></div><div><br clear="none"></div><div><br clear="none"></div>-- <br clear="none"><div class="yiv0252930392gmail_signature">Bill Moseley<br clear="none"><a rel="nofollow" shape="rect" ymailto="mailto:moseley@hank.org" target="_blank" href="mailto:moseley@hank.org">moseley@hank.org</a></div>
</div></div></div></div></div><br clear="none">_______________________________________________<br clear="none">List: <a rel="nofollow" shape="rect" ymailto="mailto:Catalyst@lists.scsys.co.uk" target="_blank" href="mailto:Catalyst@lists.scsys.co.uk">Catalyst@lists.scsys.co.uk</a><br clear="none">Listinfo: <a rel="nofollow" shape="rect" target="_blank" href="http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst">http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst</a><br clear="none">Searchable archive: <a rel="nofollow" shape="rect" target="_blank" href="http://www.mail-archive.com/catalyst@lists.scsys.co.uk/">http://www.mail-archive.com/catalyst@lists.scsys.co.uk/</a><br clear="none">Dev site: <a rel="nofollow" shape="rect" target="_blank" href="http://dev.catalyst.perl.org/">http://dev.catalyst.perl.org/</a><br clear="none"><br clear="none"><br clear="none"></div></div>  </div> </div>  </div> </div></div></div><br><br></div>  </div> </div>  </div> </div></body></html>