Author: colin
Date: 2008-03-07 17:27:20 +0100 (Fri, 07 Mar 2008)
New Revision: 986
Modified:
trunk/Mix/Src/maildir.c
Log:
Fix "assert" statements that had side effects
Modified: trunk/Mix/Src/maildir.c
===================================================================
--- trunk/Mix/Src/maildir.c 2008-03-07 15:10:13 UTC (rev 985)
+++ trunk/Mix/Src/maildir.c 2008-03-07 16:27:20 UTC (rev 986)
@@ -251,10 +251,6 @@
#ifdef UNITTEST
-#ifdef NDEBUG
-#undef NDEBUG
-#endif /* NDEBUG */
-
#include <dirent.h>
/* mock-up of errlog for unittest */
@@ -270,7 +266,7 @@
/* main for unittest */
int main()
{
- int i, count = 23;
+ int i, j, maildirWriteRes, count = 23;
int fd;
DIR *d;
struct dirent *de;
@@ -283,11 +279,14 @@
message.length = strlen(text);
/* write <count> messages to maildir */
- for(i = 0; i < count; i++)
- assert(maildirWrite("Maildir.test_maildir", message, 1) == 0);
+ for(i = 0; i < count; i++) {
+ maildirWriteRes = maildirWrite("Maildir.test_maildir", message, 1);
+ assert(maildirWriteRes == 0);
+ }
/* read them back */
- assert((d = opendir("Maildir.test_maildir/new")) != NULL);
+ d = opendir("Maildir.test_maildir/new");
+ assert(d != NULL);
for (i = 0; i < count + 2; i++)
{
de = readdir(d);
@@ -297,8 +296,10 @@
strcat(buf, "Maildir.test_maildir/new/");
strcat(buf, de->d_name);
fd = open(buf, O_RDONLY);
- assert(unlink(buf) == 0);
- assert(read(fd, buf, strlen(text)) == strlen(text));
+ j = unlink(buf);
+ assert(j == 0);
+ j = read(fd, buf, strlen(text));
+ assert(j == strlen(text));
buf[strlen(text)] = '\0';
/* check if they match the original message */
assert(strcmp(text, buf) == 0);
@@ -310,12 +311,16 @@
assert(readdir(d) == NULL);
/* delete maildir */
- assert(rmdir("Maildir.test_maildir/tmp") == 0);
- assert(rmdir("Maildir.test_maildir/new") == 0);
- assert(rmdir("Maildir.test_maildir/cur") == 0);
- assert(rmdir("Maildir.test_maildir") == 0);
+ j = rmdir("Maildir.test_maildir/tmp");
+ assert(j == 0);
+ j = rmdir("Maildir.test_maildir/new");
+ assert(j == 0);
+ j = rmdir("Maildir.test_maildir/cur");
+ assert(j == 0);
+ j = rmdir("Maildir.test_maildir");
+ assert(j == 0);
- /* check if writing to a non existant maildir yilds an error */
+ /* check if writing to a non existant maildir yields an error */
assert(maildirWrite("Maildir.test_maildir", &message, 0) == -1);
puts("OK");
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Mixmaster-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mixmaster-devel