Fix overflow of rdbWriteRaw return value (#8306)

Saving string of more than 2GB to the RDB file, can result in corrupt RDB, or failure in rdbSave.
S

(cherry picked from commit 3fb4197a742d064236ae4fdccf9dc00ed3b538d3)
This commit is contained in:
Bob Li 2021-01-12 14:22:53 +08:00 committed by Oran Agra
parent 2d537b376c
commit 5041095cad

View File

@ -84,7 +84,7 @@ void rdbReportError(int corruption_error, int linenum, char *reason, ...) {
exit(1); exit(1);
} }
static int rdbWriteRaw(rio *rdb, void *p, size_t len) { static ssize_t rdbWriteRaw(rio *rdb, void *p, size_t len) {
if (rdb && rioWrite(rdb,p,len) == 0) if (rdb && rioWrite(rdb,p,len) == 0)
return -1; return -1;
return len; return len;