You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by da...@apache.org on 2011/05/19 16:33:22 UTC
svn commit: r1124843 - /subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c
Author: danielsh
Date: Thu May 19 14:33:22 2011
New Revision: 1124843
URL: http://svn.apache.org/viewvc?rev=1124843&view=rev
Log:
Rewrite two macros for C safety.
* subversion/libsvn_fs_fs/fs_fs.c
(RETRY_RECOVERABLE, IGNORE_RECOVERABLE):
Make each of them a self-contained statement.)
Modified:
subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c
Modified: subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c?rev=1124843&r1=1124842&r2=1124843&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c (original)
+++ subversion/trunk/subversion/libsvn_fs_fs/fs_fs.c Thu May 19 14:33:22 2011
@@ -1421,8 +1421,9 @@ svn_fs_fs__upgrade(svn_fs_t *fs, apr_poo
#define RECOVERABLE_RETRY_COUNT 10
#ifdef ESTALE
+/* Do not use do-while due to the embedded 'continue'. */
#define RETRY_RECOVERABLE(err, filehandle, expr) \
- { \
+ if (1) { \
svn_error_clear(err); \
err = (expr); \
if (err) \
@@ -1435,9 +1436,9 @@ svn_fs_fs__upgrade(svn_fs_t *fs, apr_poo
} \
return svn_error_return(err); \
} \
- }
+ } else
#define IGNORE_RECOVERABLE(err, expr) \
- { \
+ if (1) { \
svn_error_clear(err); \
err = (expr); \
if (err) \
@@ -1446,7 +1447,7 @@ svn_fs_fs__upgrade(svn_fs_t *fs, apr_poo
if ((_e != ESTALE) && (_e != EIO)) \
return svn_error_return(err); \
} \
- }
+ } else
#else
#define RETRY_RECOVERABLE(err, filehandle, expr) SVN_ERR(expr)
#define IGNORE_RECOVERABLE(err, expr) SVN_ERR(expr)