You've already forked pgbackrest
mirror of
https://github.com/pgbackrest/pgbackrest.git
synced 2025-07-07 00:35:37 +02:00
Reduce buffer used when size limit set.
If the size is reduced then the amount used should be reduced as well. This is a bug but does not affect current use cases.
This commit is contained in:
@ -299,6 +299,10 @@ bufLimitSet(Buffer *this, size_t limit)
|
|||||||
this->size = limit;
|
this->size = limit;
|
||||||
this->sizeLimit = true;
|
this->sizeLimit = true;
|
||||||
|
|
||||||
|
// Reduce used if it is now larger than size
|
||||||
|
if (this->used > this->size)
|
||||||
|
this->used = this->size;
|
||||||
|
|
||||||
FUNCTION_TEST_RETURN_VOID();
|
FUNCTION_TEST_RETURN_VOID();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -94,8 +94,10 @@ testRun(void)
|
|||||||
// Use limits to change size reporting
|
// Use limits to change size reporting
|
||||||
TEST_RESULT_VOID(bufLimitSet(buffer, 64), "set limit");
|
TEST_RESULT_VOID(bufLimitSet(buffer, 64), "set limit");
|
||||||
TEST_RESULT_UINT(bufSize(buffer), 64, " check limited size");
|
TEST_RESULT_UINT(bufSize(buffer), 64, " check limited size");
|
||||||
|
TEST_RESULT_UINT(bufUsed(buffer), 64, " check used");
|
||||||
TEST_RESULT_VOID(bufLimitClear(buffer), " clear limit");
|
TEST_RESULT_VOID(bufLimitClear(buffer), " clear limit");
|
||||||
TEST_RESULT_UINT(bufSize(buffer), 128, " check unlimited size");
|
TEST_RESULT_UINT(bufSize(buffer), 128, " check unlimited size");
|
||||||
|
TEST_RESULT_UINT(bufUsed(buffer), 64, " check used did not change");
|
||||||
|
|
||||||
// Resize to zero buffer
|
// Resize to zero buffer
|
||||||
TEST_RESULT_VOID(bufUsedZero(buffer), "set used to 0");
|
TEST_RESULT_VOID(bufUsedZero(buffer), "set used to 0");
|
||||||
|
Reference in New Issue
Block a user