aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Haberkorn <robin.haberkorn@googlemail.com>2011-07-11 03:24:54 +0200
committerRobin Haberkorn <robin.haberkorn@googlemail.com>2011-07-11 03:24:54 +0200
commit76c1a05f2b7389b9ca01d8af125382fc0a646faa (patch)
treefb64b8d5f9579d337ac99a0e6c9c77668725bd70
parent225b1cb38b4086fe764618766507d44799316f36 (diff)
downloadvideoteco-fork-76c1a05f2b7389b9ca01d8af125382fc0a646faa.tar.gz
some errno and error_message() cleanup
* errno was evaluated even though it was in an undefined state * error_message()s written by cmd_writebak() were overwritten by cmd_write()
-rw-r--r--tecbuf.c2
-rw-r--r--teccmd.c18
2 files changed, 12 insertions, 8 deletions
diff --git a/tecbuf.c b/tecbuf.c
index b20966a..8df8b09 100644
--- a/tecbuf.c
+++ b/tecbuf.c
@@ -1015,6 +1015,7 @@ int status;
if(bcount == sizeof(iobuf)){
status = write(chan,iobuf,sizeof(iobuf));
if(status != sizeof(iobuf)){
+ /* NOTE: status *should* be -1, errno *should* be set */
return(FAIL);
}/* End IF */
bcount = 0;
@@ -1037,6 +1038,7 @@ int status;
if(bcount > 0){
status = write(chan,iobuf,(unsigned)bcount);
if(status != bcount){
+ /* NOTE: status *should* be -1, errno *should* be set */
return(FAIL);
}/* End IF */
}/* End IF */
diff --git a/teccmd.c b/teccmd.c
index 58d8628..63aed29 100644
--- a/teccmd.c
+++ b/teccmd.c
@@ -1113,9 +1113,7 @@ int status;
if(status == SUCCESS) hbp->isbackedup = YES;
if(status == FAIL && errno != EEXIST){
- sprintf(tmp_message,"?Error opening <%s>: %s",
- filename,error_text(errno));
- error_message(tmp_message);
+ /* NOTE: cmd_writebak has already written the error_message */
close(fi);
return(FAIL);
}/* End IF */
@@ -1133,9 +1131,7 @@ int status;
#endif
if(status == SUCCESS) hbp->isbackedup = YES;
if(status == FAIL){
- sprintf(tmp_message,"?Error opening <%s>: %s",
- filename,error_text(errno));
- error_message(tmp_message);
+ /* NOTE: cmd_writebak has already written the error_message */
close(fi);
return(FAIL);
}/* End IF */
@@ -1165,15 +1161,16 @@ int status;
status = buff_write(hbp,fi,0,hbp->zee);
- close(fi);
-
if(status == FAIL){
sprintf(tmp_message,"?Error writing <%s>: %s",
filename,error_text(errno));
error_message(tmp_message);
+ close(fi);
return(FAIL);
}/* End IF */
+ close(fi);
+
hbp->ismodified = NO;
if(hbp == curbuf){
screen_label_line(hbp,"",LABEL_C_MODIFIED);
@@ -1215,6 +1212,7 @@ register int status;
sprintf(tmp_message,"?Error creating subdirectory <%s>: %s",
pathname,error_text(errno));
error_message(tmp_message);
+ errno = 0;
return(FAIL);
}/* End IF */
}/* End IF */
@@ -1231,11 +1229,13 @@ register int status;
if(fo < 0){
if(errno == EEXIST){
chmod(tmp_filename,0444);
+ errno = EEXIST;
return(FAIL);
}/* End IF */
sprintf(tmp_message,"?Error opening <%s>: %s",
tmp_filename,error_text(errno));
error_message(tmp_message);
+ errno = 0;
return(FAIL);
}/* End IF */
@@ -1246,6 +1246,7 @@ register int status;
input_filename,error_text(errno));
error_message(tmp_message);
close(fo);
+ errno = 0;
return(FAIL);
}/* End IF */
@@ -1255,6 +1256,7 @@ register int status;
tmp_filename,error_text(errno));
error_message(tmp_message);
close(fo);
+ errno = 0;
return(FAIL);
}/* End IF */