rspamd_snprintf (path, sizeof (path), "%s.new", name);
- for (;;) {
- fd = open (path, O_CREAT | O_WRONLY | O_EXCL, 00644);
+ fd = open (path, O_CREAT | O_WRONLY | O_EXCL, 00644);
- if (fd == -1) {
- if (errno == EEXIST) {
- /* Some other process is already writing data, give up silently */
- return TRUE;
- }
-
- msg_err_cache ("cannot open file %s, error %d, %s", path,
- errno, strerror (errno));
- return FALSE;
+ if (fd == -1) {
+ if (errno == EEXIST) {
+ /* Some other process is already writing data, give up silently */
+ return TRUE;
}
- break;
+ msg_err_cache ("cannot open file %s, error %d, %s", path,
+ errno, strerror (errno));
+ return FALSE;
}
rspamd_file_lock (fd, FALSE);