فهرست منبع

error-check committing of sync state

a failure here is rather unlikely, but let's be pedantic.
a failure is not fatal (we'll just enter the journal replay path next
time), so only print warnings.

found by coverity.
Oswald Buddenhagen 11 سال پیش
والد
کامیت
2d4bc1e613
1فایلهای تغییر یافته به همراه4 افزوده شده و 2 حذف شده
  1. 4 2
      src/sync.c

+ 4 - 2
src/sync.c

@@ -1875,8 +1875,10 @@ box_closed_p2( sync_vars_t *svars, int t )
 	Fclose( svars->jfp, 0 );
 	if (!(DFlags & KEEPJOURNAL)) {
 		/* order is important! */
-		rename( svars->nname, svars->dname );
-		unlink( svars->jname );
+		if (rename( svars->nname, svars->dname ))
+			warn( "Warning: cannot commit sync state %s\n", svars->dname );
+		else if (unlink( svars->jname ))
+			warn( "Warning: cannot delete journal %s\n", svars->jname );
 	}
 
 	sync_bail( svars );