mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-05-23 22:02:27 +00:00
Make redbean serialization deterministic
This commit is contained in:
parent
85aecbda67
commit
c9e68b0ebc
15 changed files with 452 additions and 150 deletions
17
third_party/lua/visitor.c
vendored
17
third_party/lua/visitor.c
vendored
|
@ -20,16 +20,23 @@
|
|||
#include "libc/x/x.h"
|
||||
#include "third_party/lua/visitor.h"
|
||||
|
||||
bool LuaPushVisit(struct LuaVisited *visited, const void *p) {
|
||||
int i;
|
||||
int LuaPushVisit(struct LuaVisited *visited, const void *p) {
|
||||
int i, n2;
|
||||
const void **p2;
|
||||
for (i = 0; i < visited->n; ++i) {
|
||||
if (visited->p[i] == p) {
|
||||
return false;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
visited->p = xrealloc(visited->p, ++visited->n * sizeof(*visited->p));
|
||||
n2 = visited->n;
|
||||
if ((p2 = realloc(visited->p, ++n2 * sizeof(*visited->p)))) {
|
||||
visited->p = p2;
|
||||
visited->n = n2;
|
||||
} else {
|
||||
return -1;
|
||||
}
|
||||
visited->p[visited->n - 1] = p;
|
||||
return true;
|
||||
return 0;
|
||||
}
|
||||
|
||||
void LuaPopVisit(struct LuaVisited *visited) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue