btrfs: sync ioctl, handle errors after transaction start
[linux-2.6-block.git] / fs / btrfs / super.c
index 60f7cbe815e9c88362a1680f8e4259f51ca6f019..c86fb5438454481869e6a1199929836da1ab8b4a 100644 (file)
@@ -1001,9 +1001,9 @@ int btrfs_sync_fs(struct super_block *sb, int wait)
                        if (fs_info->pending_changes == 0)
                                return 0;
                        trans = btrfs_start_transaction(root, 0);
-               } else {
-                       return PTR_ERR(trans);
                }
+               if (IS_ERR(trans))
+                       return PTR_ERR(trans);
        }
        return btrfs_commit_transaction(trans, root);
 }