webmcp
view framework/env/encode/file_path_element.lua @ 6:5cba83b3f411
Version 1.0.6
Bugfix: class_prototype:add_reference{...} uses now qualified names in SQL queries to allow JOINs
Fixes in the documentation of slot.put_into and trace.debug
Bugfix: class_prototype:add_reference{...} uses now qualified names in SQL queries to allow JOINs
Fixes in the documentation of slot.put_into and trace.debug
| author | jbe/bsw | 
|---|---|
| date | Fri Jan 22 12:00:00 2010 +0100 (2010-01-22) | 
| parents | 9fdfb27f8e67 | 
| children | 
 line source
     1 --[[--
     2 encoded_path_element =     -- string which can't contain evil stuff like "/"
     3 encode.file_path_element(
     4   path_element             -- string to be encoded
     5 )
     7 This function is encoding a string in a way that it can be used as a file or directory name, without security risks. See the source for details.
     9 --]]--
    11 function encode.file_path_element(path_element)
    12   return (
    13     string.gsub(
    14       string.gsub(
    15         path_element, "[^0-9A-Za-z_%.-]",
    16         function(char)
    17           return string.format("%%%02x", string.byte(char))
    18         end
    19       ), "^%.", string.format("%%%%%02x", string.byte("."))
    20     )
    21   )
    22 end
