Re: Problem with custom resource compiled filenames
Ivo Jansch <[email protected]> Mon, 22 Aug 2005 14:19:32 +0200
| Newsgroups | gmane.comp.php.smarty.devel |
|---|---|
| Message-ID | <[email protected]> |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi,
Ivo Jansch wrote:
>>>how would you handle the case that the filenames is invalid just
>>>because it is too long?
> I was thinking of generating a 32-character hash.
I was able to solve the problem by changing the code in Smarty.class.php to:
if(isset($auto_source)) {
// make source name safe for filename
$_filename = urlencode(basename($auto_source));
$_crc32 = sprintf('%08X', crc32($auto_source));
// prepend %% to avoid name conflicts with
// with $params['auto_id'] names
$_crc32 = substr($_crc32, 0, 2) . $_compile_dir_sep .
substr($_crc32, 0, 3) . $_compile_dir_sep .
$_crc32;
// Ivo hack.. use hash instead of actual name, if actual name has an
// invalid length
if (strlen($_filename)>100) {
$_filename = md5($_filename);
}
// end ivo hack
$_return .= '%%' . $_crc32 . '%%' . $_filename;
}
Would you consider modifying this code in the Smarty base code?
Greetings,
Ivo
- --
Ivo Jansch <[email protected]>
ibuildings.nl BV - information technology
http://www.ibuildings.nl
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (MingW32)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFDCcLT95NUnGFZm9cRAhx7AJ49LZwQr25t7RVFA0CihAfkBOZh/QCdFqu4
OH93xnn/FnT+sZe8SRiA6nU=
=CYlR
-----END PGP SIGNATURE-----
--
Smarty Development Mailing List (http://smarty.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php