LibC: Don't clobber errno in free().

This one is a bit mysterious. I can't find any authoritative answer on what
the correct behavior is, but it seems reasonable to me that free() doesn't
step on errno, since it returns "void" and thus the caller won't know to
inspect errno anyway.
This commit is contained in:
Andreas Kling 2019-07-25 15:23:29 +02:00
parent 3048e4b9f5
commit a6b5bb439c
Notes: sideshowbarker 2024-07-19 13:03:26 +09:00

View file

@ -1,5 +1,6 @@
#include <AK/Bitmap.h>
#include <AK/InlineLinkedList.h>
#include <AK/ScopedValueRollback.h>
#include <AK/Vector.h>
#include <LibCore/CLock.h>
#include <assert.h>
@ -204,6 +205,8 @@ void* malloc(size_t size)
void free(void* ptr)
{
ScopedValueRollback rollback(errno);
if (!ptr)
return;