diff options
author | Mike Pall <mike> | 2013-09-08 03:10:47 +0200 |
---|---|---|
committer | Mike Pall <mike> | 2013-09-08 03:10:47 +0200 |
commit | 0d41601e76c870695faa165205c12f6be362217b (patch) | |
tree | c0f05b6027e00c4cc2c672f09f1444641a4a2e4a /src | |
parent | a13b9206dc41501955d08cbf168aeaaa80acd508 (diff) | |
parent | 93c2b939bddbbe766f3215455d8144650df0780b (diff) | |
download | luajit-0d41601e76c870695faa165205c12f6be362217b.tar.gz luajit-0d41601e76c870695faa165205c12f6be362217b.tar.bz2 luajit-0d41601e76c870695faa165205c12f6be362217b.zip |
Merge branch 'master' into v2.1
Diffstat (limited to 'src')
-rw-r--r-- | src/lib_ffi.c | 2 | ||||
-rw-r--r-- | src/lj_crecord.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/lib_ffi.c b/src/lib_ffi.c index 3310b205..6203481b 100644 --- a/src/lib_ffi.c +++ b/src/lib_ffi.c | |||
@@ -658,7 +658,7 @@ LJLIB_CF(ffi_string) LJLIB_REC(.) | |||
658 | TValue *o = lj_lib_checkany(L, 1); | 658 | TValue *o = lj_lib_checkany(L, 1); |
659 | const char *p; | 659 | const char *p; |
660 | size_t len; | 660 | size_t len; |
661 | if (o+1 < L->top) { | 661 | if (o+1 < L->top && !tvisnil(o+1)) { |
662 | len = (size_t)ffi_checkint(L, 2); | 662 | len = (size_t)ffi_checkint(L, 2); |
663 | lj_cconv_ct_tv(cts, ctype_get(cts, CTID_P_CVOID), (uint8_t *)&p, o, | 663 | lj_cconv_ct_tv(cts, ctype_get(cts, CTID_P_CVOID), (uint8_t *)&p, o, |
664 | CCF_ARG(1)); | 664 | CCF_ARG(1)); |
diff --git a/src/lj_crecord.c b/src/lj_crecord.c index 87f58256..41d41904 100644 --- a/src/lj_crecord.c +++ b/src/lj_crecord.c | |||
@@ -1535,7 +1535,7 @@ void LJ_FASTCALL recff_ffi_string(jit_State *J, RecordFFData *rd) | |||
1535 | TRef tr = J->base[0]; | 1535 | TRef tr = J->base[0]; |
1536 | if (tr) { | 1536 | if (tr) { |
1537 | TRef trlen = J->base[1]; | 1537 | TRef trlen = J->base[1]; |
1538 | if (trlen) { | 1538 | if (!tref_isnil(trlen)) { |
1539 | trlen = crec_toint(J, cts, trlen, &rd->argv[1]); | 1539 | trlen = crec_toint(J, cts, trlen, &rd->argv[1]); |
1540 | tr = crec_ct_tv(J, ctype_get(cts, CTID_P_CVOID), 0, tr, &rd->argv[0]); | 1540 | tr = crec_ct_tv(J, ctype_get(cts, CTID_P_CVOID), 0, tr, &rd->argv[0]); |
1541 | } else { | 1541 | } else { |