lua: add zlib build dependency, fix inaccuracy in gzip loader
authorJo-Philipp Wich <jow@openwrt.org>
Sun, 5 Apr 2009 02:33:41 +0000 (02:33 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Sun, 5 Apr 2009 02:33:41 +0000 (02:33 +0000)
SVN-Revision: 15109

package/lua/Makefile
package/lua/patches-host/040-gzip-source-loader.patch
package/lua/patches/040-gzip-source-loader.patch

index 689b845d55c244a3eea8b51252511c134da71ae9..69d39601bacc347bcc5c9c54fe80d425dcc371f5 100644 (file)
@@ -20,7 +20,7 @@ PKG_SOURCE_URL:=http://www.lua.org/ftp/ \
 PKG_MD5SUM:=d0870f2de55d59c1c8419f36e8fac150
 
 HOST_PATCH_DIR=./patches-host
-PKG_BUILD_DEPENDS:=lua/host
+PKG_BUILD_DEPENDS:=lua/host zlib
 
 include $(INCLUDE_DIR)/host-build.mk
 include $(INCLUDE_DIR)/package.mk
index 6fbafa206d26bda722b067a2429d6bdc455ec3de..8214ae9f8720b4c66b9101886f76e18b8ce5274c 100644 (file)
@@ -12,7 +12,7 @@ diff -ur lua-5.1.4.orig/src/Makefile lua-5.1.4/src/Makefile
  MYLDFLAGS=
 diff -ur lua-5.1.4.orig/src/lauxlib.c lua-5.1.4/src/lauxlib.c
 --- lua-5.1.4.orig/src/lauxlib.c       2009-04-04 23:06:04.000000000 +0200
-+++ lua-5.1.4/src/lauxlib.c    2009-04-05 00:03:33.000000000 +0200
++++ lua-5.1.4/src/lauxlib.c    2009-04-05 03:35:24.000000000 +0200
 @@ -11,6 +11,7 @@
  #include <stdio.h>
  #include <stdlib.h>
@@ -34,7 +34,7 @@ diff -ur lua-5.1.4.orig/src/lauxlib.c lua-5.1.4/src/lauxlib.c
  
  static const char *getF (lua_State *L, void *ud, size_t *size) {
    LoadF *lf = (LoadF *)ud;
-@@ -550,6 +557,26 @@
+@@ -550,6 +557,28 @@
  }
  
  
@@ -47,7 +47,9 @@ diff -ur lua-5.1.4.orig/src/lauxlib.c lua-5.1.4/src/lauxlib.c
 +  if (*size > 0) {
 +    if (lf->first_chunk) {
 +      lf->first_chunk = 0;
-+      if (strstr(lf->buffer, "#!") && (sp=strstr(lf->buffer, "\n")) != NULL) {
++      if ((lf->buffer[0] == '#') && (lf->buffer[1] == '!') &&
++          (sp=strstr(lf->buffer, "\n")) != NULL)
++      {
 +        *size -= ((uint)sp - (uint)lf->buffer);
 +        return sp;
 +      }
@@ -61,7 +63,7 @@ diff -ur lua-5.1.4.orig/src/lauxlib.c lua-5.1.4/src/lauxlib.c
  static int errfile (lua_State *L, const char *what, int fnameindex) {
    const char *serr = strerror(errno);
    const char *filename = lua_tostring(L, fnameindex) + 1;
-@@ -560,6 +587,31 @@
+@@ -560,6 +589,31 @@
  
  
  LUALIB_API int luaL_loadfile (lua_State *L, const char *filename) {
index 6fbafa206d26bda722b067a2429d6bdc455ec3de..8214ae9f8720b4c66b9101886f76e18b8ce5274c 100644 (file)
@@ -12,7 +12,7 @@ diff -ur lua-5.1.4.orig/src/Makefile lua-5.1.4/src/Makefile
  MYLDFLAGS=
 diff -ur lua-5.1.4.orig/src/lauxlib.c lua-5.1.4/src/lauxlib.c
 --- lua-5.1.4.orig/src/lauxlib.c       2009-04-04 23:06:04.000000000 +0200
-+++ lua-5.1.4/src/lauxlib.c    2009-04-05 00:03:33.000000000 +0200
++++ lua-5.1.4/src/lauxlib.c    2009-04-05 03:35:24.000000000 +0200
 @@ -11,6 +11,7 @@
  #include <stdio.h>
  #include <stdlib.h>
@@ -34,7 +34,7 @@ diff -ur lua-5.1.4.orig/src/lauxlib.c lua-5.1.4/src/lauxlib.c
  
  static const char *getF (lua_State *L, void *ud, size_t *size) {
    LoadF *lf = (LoadF *)ud;
-@@ -550,6 +557,26 @@
+@@ -550,6 +557,28 @@
  }
  
  
@@ -47,7 +47,9 @@ diff -ur lua-5.1.4.orig/src/lauxlib.c lua-5.1.4/src/lauxlib.c
 +  if (*size > 0) {
 +    if (lf->first_chunk) {
 +      lf->first_chunk = 0;
-+      if (strstr(lf->buffer, "#!") && (sp=strstr(lf->buffer, "\n")) != NULL) {
++      if ((lf->buffer[0] == '#') && (lf->buffer[1] == '!') &&
++          (sp=strstr(lf->buffer, "\n")) != NULL)
++      {
 +        *size -= ((uint)sp - (uint)lf->buffer);
 +        return sp;
 +      }
@@ -61,7 +63,7 @@ diff -ur lua-5.1.4.orig/src/lauxlib.c lua-5.1.4/src/lauxlib.c
  static int errfile (lua_State *L, const char *what, int fnameindex) {
    const char *serr = strerror(errno);
    const char *filename = lua_tostring(L, fnameindex) + 1;
-@@ -560,6 +587,31 @@
+@@ -560,6 +589,31 @@
  
  
  LUALIB_API int luaL_loadfile (lua_State *L, const char *filename) {