socsvn commit: r269082 - in soc2014/pedrosouza/lua_loader/head/sys: boot/common lua/src
pedrosouza at FreeBSD.org
pedrosouza at FreeBSD.org
Wed Jun 4 18:35:37 UTC 2014
Author: pedrosouza
Date: Wed Jun 4 18:35:35 2014
New Revision: 269082
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=269082
Log:
Add function declarations to lstd.h & copyrights
Modified:
soc2014/pedrosouza/lua_loader/head/sys/boot/common/interp_lua.c
soc2014/pedrosouza/lua_loader/head/sys/lua/src/lstd.c
soc2014/pedrosouza/lua_loader/head/sys/lua/src/lstd.h
soc2014/pedrosouza/lua_loader/head/sys/lua/src/luaconf.h
Modified: soc2014/pedrosouza/lua_loader/head/sys/boot/common/interp_lua.c
==============================================================================
--- soc2014/pedrosouza/lua_loader/head/sys/boot/common/interp_lua.c Wed Jun 4 17:57:48 2014 (r269081)
+++ soc2014/pedrosouza/lua_loader/head/sys/boot/common/interp_lua.c Wed Jun 4 18:35:35 2014 (r269082)
@@ -116,7 +116,7 @@
data_chunk ds;
ds.data = (void*)str;
ds.size = size;
- res = lua_load(L, read_chunk, &ds, "do_string", 0);
+ res = lua_load(L, read_chunk, &ds, "do_string_", 0);
res = lua_pcall(L, 0, LUA_MULTRET, 0);
return res;
}
Modified: soc2014/pedrosouza/lua_loader/head/sys/lua/src/lstd.c
==============================================================================
--- soc2014/pedrosouza/lua_loader/head/sys/lua/src/lstd.c Wed Jun 4 17:57:48 2014 (r269081)
+++ soc2014/pedrosouza/lua_loader/head/sys/lua/src/lstd.c Wed Jun 4 18:35:35 2014 (r269082)
@@ -1,3 +1,30 @@
+/*-
+ * Copyright (c) 2014 Pedro Souza <pedrosouza at freebsd.org>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ */
+
#include "lstd.h"
#ifdef BOOT_LUA
@@ -95,7 +122,7 @@
if (has_frac == 0 && has_num == 0)
{
- if (*endPtr)
+ if (endPtr)
*endPtr = (char*)string;
return 0.;
}
@@ -105,7 +132,7 @@
if (*ptr == 'e' || *ptr == 'E')
{
- if (*endPtr)
+ if (endPtr)
*endPtr = (char*)ptr;
++ptr;
if (*ptr == '-')
@@ -126,7 +153,7 @@
return ret;
}
- if (*endPtr)
+ if (endPtr)
*endPtr = (char*)ptr;
if (has_exp)
@@ -143,4 +170,49 @@
return ret * exp_m;
}
+char * dtostr(double value, char * buf)
+{
+ int c, i;
+ char tmp[20];
+ char *ptr, *bb = buf;
+ long long num = (long long) value;
+ double frac = value - num;
+
+ tmp[19] = 0;
+ ptr = &tmp[19];
+ while (num > 0)
+ {
+ c = num % 10;
+ num = num / 10;
+ *(--ptr) = '0' + c;
+ }
+
+ if (ptr == &tmp[19])
+ *buf++ = '0';
+ else
+ {
+ while (*ptr)
+ {
+ *buf++ = *ptr++;
+ }
+ }
+ if (abs(frac) > 0.0000001)
+ {
+ *buf++ = 0;
+ return bb;
+ } else
+ {
+ *buf++ = '.';
+
+ for (i = 0; i < 7; ++i)
+ {
+ frac *= 10;
+ c = (long long)frac;
+ *buf++ = '0' + c;
+ frac -= c;
+ }
+ *buf = 0;
+ }
+ return bb;
+}
#endif //BOOT_LUA
\ No newline at end of file
Modified: soc2014/pedrosouza/lua_loader/head/sys/lua/src/lstd.h
==============================================================================
--- soc2014/pedrosouza/lua_loader/head/sys/lua/src/lstd.h Wed Jun 4 17:57:48 2014 (r269081)
+++ soc2014/pedrosouza/lua_loader/head/sys/lua/src/lstd.h Wed Jun 4 18:35:35 2014 (r269082)
@@ -1,3 +1,29 @@
+/*-
+ * Copyright (c) 2014 Pedro Souza <pedrosouza at freebsd.org>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ */
#ifndef LSTD_H
#define LSDT_H
@@ -21,6 +47,18 @@
int abs(int v);
+double floor(double v);
+
+char * strpbrk (const char * str1, const char * str2);
+
+double ldexp (double x, int exp);
+
+double pow(double a, double b);
+
+double strtod(const char *string, char **endPtr);
+
+char * dtostr(double value, char * buf);
+
#endif
#endif //LSTD_H
Modified: soc2014/pedrosouza/lua_loader/head/sys/lua/src/luaconf.h
==============================================================================
--- soc2014/pedrosouza/lua_loader/head/sys/lua/src/luaconf.h Wed Jun 4 17:57:48 2014 (r269081)
+++ soc2014/pedrosouza/lua_loader/head/sys/lua/src/luaconf.h Wed Jun 4 18:35:35 2014 (r269082)
@@ -412,7 +412,7 @@
*/
#define LUA_NUMBER_SCAN "%lf"
#define LUA_NUMBER_FMT "%f"
-#define lua_number2str(s,n) sprintf((s), LUA_NUMBER_FMT, (n))
+#define lua_number2str(s,n) dtostr((n), (s)) //sprintf((s), LUA_NUMBER_FMT, (n))
#define LUAI_MAXNUMBER2STR 32 /* 16 digits, sign, point, and \0 */
More information about the svn-soc-all
mailing list