summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 692778b)
raw | patch | inline | side by side (parent: 692778b)
author | oetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa> | |
Tue, 2 Apr 2002 19:37:54 +0000 (19:37 +0000) | ||
committer | oetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa> | |
Tue, 2 Apr 2002 19:37:54 +0000 (19:37 +0000) |
src/rrd_restore.c | patch | blob | history |
diff --git a/src/rrd_restore.c b/src/rrd_restore.c
index 207986d89d617f5dd4a052665c0920e77789c735..fa5e412f856fb939f5f4a35cfabe36ac8ad96f74 100644 (file)
--- a/src/rrd_restore.c
+++ b/src/rrd_restore.c
if (strcmp("-",file_name)==0){
*rrd_file= *stdout;
} else {
- if ((rrd_file = fopen(file_name,"wb")) == NULL ) {
+ int fd = open(file_name,O_RDWR|O_CREAT|O_EXCL);
+ if (fd == -1 || (rrd_file = fdopen(fd,"wb")) == NULL) {
rrd_set_error("creating '%s': %s",file_name,strerror(errno));
rrd_free(rrd);
+ if (fd != -1)
+ close(fd);
return(-1);
}
}