]> granicus.if.org Git - apache/commitdiff
mod_lua: Improve compatibility with Lua 5.1, 5.2 and 5.3.
authorRainer Jung <rjung@apache.org>
Tue, 4 Jul 2017 19:22:23 +0000 (19:22 +0000)
committerRainer Jung <rjung@apache.org>
Tue, 4 Jul 2017 19:22:23 +0000 (19:22 +0000)
PR58188, PR60831, PR61245.

Still to solve: replace uses of luaL_register().

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1800809 13f79535-47bb-0310-9956-ffa450edef68

CHANGES
modules/lua/lua_request.c
modules/lua/mod_lua.c

diff --git a/CHANGES b/CHANGES
index 4cacc2323341553821dbb0255211023f119083f5..bacedb82d5ea9514696c0bb947798b81cf7900e0 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,9 @@
                                                          -*- coding: utf-8 -*-
 Changes with Apache 2.5.0
 
+  *) mod_lua: Improve compatibility with Lua 5.1, 5.2 and 5.3.
+     PR58188, PR60831, PR61245. [Rainer Jung]
+  
   *) mod_http2: disable and give warning when mpm_prefork is encountered. The server will
      continue to work, but HTTP/2 will no longer be negotiated. [Stefan Eissing]
   
index 4cb4fd00674333eef8a9cda54a776a6dde2acca5..9a04968b8591db9dcacda2860d83f09b44d9b6eb 100644 (file)
@@ -345,7 +345,7 @@ static int req_parsebody(lua_State *L)
     char *multipart;
     const char *contentType;
     request_rec *r = ap_lua_check_request_rec(L, 1);
-    max_post_size = (apr_size_t) luaL_optint(L, 2, MAX_STRING_LEN);
+    max_post_size = (apr_size_t) luaL_optinteger(L, 2, MAX_STRING_LEN);
     multipart = apr_pcalloc(r->pool, 256);
     contentType = apr_table_get(r->headers_in, "Content-Type");
     lua_newtable(L);
@@ -418,7 +418,7 @@ static int lua_ap_requestbody(lua_State *L)
     
     r = ap_lua_check_request_rec(L, 1);
     filename = luaL_optstring(L, 2, 0);
-    maxSize = luaL_optint(L, 3, 0);
+    maxSize = (apr_off_t)luaL_optinteger(L, 3, 0);
 
     if (r) {
         apr_off_t size;
@@ -1708,7 +1708,7 @@ static int lua_ap_make_etag(lua_State *L)
     luaL_checktype(L, 1, LUA_TUSERDATA);
     r = ap_lua_check_request_rec(L, 1);
     luaL_checktype(L, 2, LUA_TBOOLEAN);
-    force_weak = luaL_optint(L, 2, 0);
+    force_weak = (int)luaL_optinteger(L, 2, 0);
     returnValue = ap_make_etag(r, force_weak);
     lua_pushstring(L, returnValue);
     return 1;
@@ -2040,7 +2040,7 @@ static int lua_set_cookie(lua_State *L)
         /* expiry */
         lua_pushstring(L, "expires");
         lua_gettable(L, -2);
-        expires = luaL_optint(L, -1, 0);
+        expires = (int)luaL_optinteger(L, -1, 0);
         lua_pop(L, 1);
         
         /* secure */
index 46e71f365225eae2f96cbfe23e91ac6b3ed4227a..99c9d4a91e8416a0b53dec352a119cc0065edbca 100644 (file)
@@ -1086,7 +1086,7 @@ static const char *register_named_block_function_hook(const char *name,
             lua_dump(lvm, ldump_writer, &b);
 #endif
             luaL_pushresult(&b);
-            spec->bytecode_len = lua_strlen(lvm, -1);
+            spec->bytecode_len = lua_rawlen(lvm, -1);
             spec->bytecode = apr_pstrmemdup(cmd->pool, lua_tostring(lvm, -1),
                                             spec->bytecode_len);
             lua_close(lvm);