Should not use assert with expressions with side-effect; ref #4981

`assert()` can be completely removed when `NDEBUG` is set.
This commit is contained in:
Yukihiro "Matz" Matsumoto
2020-04-28 22:36:32 +09:00
parent bb6290a5d5
commit e2ac2a82a5
+3 -6
View File
@@ -53,7 +53,6 @@ mkdtemp(char *temp)
#include <sys/socket.h>
#include <unistd.h>
#include <sys/un.h>
#include <assert.h>
#include <fcntl.h>
#endif
@@ -117,10 +116,8 @@ mrb_io_test_io_setup(mrb_state *mrb, mrb_value self)
char *tmpdir;
wd_save = open(".", O_DIRECTORY);
tmpdir = getenv("TMPDIR");
if (tmpdir)
assert(!chdir(tmpdir));
else
assert(!chdir("/tmp"));
if (tmpdir) chdir(tmpdir);
else chdir("/tmp");
}
#endif
@@ -220,7 +217,7 @@ mrb_io_test_io_cleanup(mrb_state *mrb, mrb_value self)
#if !defined(_WIN32) && !defined(_WIN64)
if(!socket_available_p) {
assert(!fchdir(wd_save));
fchdir(wd_save);
close(wd_save);
}
#endif