Mercurial > prosody-hg
comparison plugins/mod_http.lua @ 5205:f7ff48494c2b
Merge 0.9->trunk
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Thu, 29 Nov 2012 07:16:45 +0500 |
| parents | 0b4f680ea116 |
| children | 6f5640375358 |
comparison
equal
deleted
inserted
replaced
| 5196:a63c4ad6cb36 | 5205:f7ff48494c2b |
|---|---|
| 86 if event_name then | 86 if event_name then |
| 87 if type(handler) ~= "function" then | 87 if type(handler) ~= "function" then |
| 88 local data = handler; | 88 local data = handler; |
| 89 handler = function () return data; end | 89 handler = function () return data; end |
| 90 elseif event_name:sub(-2, -1) == "/*" then | 90 elseif event_name:sub(-2, -1) == "/*" then |
| 91 local base_path = event_name:match("/(.+)/*$"); | 91 local base_path_len = #event_name:match("(/.+/)%*$")+1; |
| 92 local _handler = handler; | 92 local _handler = handler; |
| 93 handler = function (event) | 93 handler = function (event) |
| 94 local path = event.request.path:sub(#base_path+1); | 94 local path = event.request.path:sub(base_path_len); |
| 95 return _handler(event, path); | 95 return _handler(event, path); |
| 96 end; | 96 end; |
| 97 end | 97 end |
| 98 if not app_handlers[event_name] then | 98 if not app_handlers[event_name] then |
| 99 app_handlers[event_name] = handler; | 99 app_handlers[event_name] = handler; |
