diff options
Diffstat (limited to 'share/server')
-rw-r--r-- | share/server/render.js | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/share/server/render.js b/share/server/render.js index 11c76373..1e341ec7 100644 --- a/share/server/render.js +++ b/share/server/render.js @@ -212,8 +212,20 @@ var Render = (function() { function runShow(fun, ddoc, args) { try { + resetList(); Mime.resetProvides(); - var resp = fun.apply(ddoc, args); + var resp = fun.apply(ddoc, args) || {}; + + // handle list() style API + if (chunks.length && chunks.length > 0) { + resp = maybeWrapResponse(resp); + resp.headers = resp.headers || {}; + for(var header in startResp) { + resp.headers[header] = startResp[header] + } + resp.body = chunks.join("") + (resp.body || ""); + resetList(); + } if (Mime.providesUsed) { resp = Mime.runProvides(args[1]); |