[Fix] Minor decode bug in base64
This commit is contained in:
parent
18519e5641
commit
a064eec5eb
@ -207,10 +207,12 @@ char* base64_decode(size_t* len, char* src, size_t sz) {
|
|||||||
r = malloc(c * sizeof(char));
|
r = malloc(c * sizeof(char));
|
||||||
|
|
||||||
// Create a clean version of the text.
|
// Create a clean version of the text.
|
||||||
|
pad = 0;
|
||||||
dat = malloc(sz * sizeof(char));
|
dat = malloc(sz * sizeof(char));
|
||||||
j = 0;
|
j = 0;
|
||||||
pad = 0;
|
|
||||||
for(i = 0; i < sz; i++) {
|
for(i = 0; i < sz; i++) {
|
||||||
|
if(src[i] == '=')
|
||||||
|
pad++;
|
||||||
if(dec_valid(src[i]))
|
if(dec_valid(src[i]))
|
||||||
dat[j++] = src[i];
|
dat[j++] = src[i];
|
||||||
}
|
}
|
||||||
|
@ -450,7 +450,7 @@ static int mission_writeLua(lua_State* L, const void* p, size_t sz, void* ud) {
|
|||||||
buf = (MBuf*)ud;
|
buf = (MBuf*)ud;
|
||||||
|
|
||||||
i = buf->ndata * buf->len + sz - buf->mdata*buf->len;
|
i = buf->ndata * buf->len + sz - buf->mdata*buf->len;
|
||||||
if(i = 0) {
|
if(i > 0) {
|
||||||
// Need more memory.
|
// Need more memory.
|
||||||
buf->mdata += (i / (buf->len*buf->alloc) + 1) * buf->len * buf->alloc;
|
buf->mdata += (i / (buf->len*buf->alloc) + 1) * buf->len * buf->alloc;
|
||||||
buf->data = realloc(buf->data, buf->mdata*buf->len);
|
buf->data = realloc(buf->data, buf->mdata*buf->len);
|
||||||
@ -489,7 +489,7 @@ int missions_save(xmlTextWriterPtr writer) {
|
|||||||
xmlw_startElem(writer, "lua");
|
xmlw_startElem(writer, "lua");
|
||||||
buf = mbuf_create(1, 128);
|
buf = mbuf_create(1, 128);
|
||||||
lua_pushvalue(player_missions[i].L, LUA_GLOBALSINDEX);
|
lua_pushvalue(player_missions[i].L, LUA_GLOBALSINDEX);
|
||||||
//pluto_persist(player_missions[i].L, mission_writeLua, buf);
|
pluto_persist(player_missions[i].L, mission_writeLua, buf);
|
||||||
data = base64_encode(&sz, buf->data, buf->ndata);
|
data = base64_encode(&sz, buf->data, buf->ndata);
|
||||||
mbuf_free(buf);
|
mbuf_free(buf);
|
||||||
xmlw_raw(writer, data, sz);
|
xmlw_raw(writer, data, sz);
|
||||||
|
Loading…
Reference in New Issue
Block a user