On 16.08.2012 09:57, Wang Sheng-Hui wrote:
quoted hunk ↗ jump to hunk
For malloc may fail, we should check it before assign
values to the fields of struct btrfs_trans_handle *h.
Signed-off-by: Wang Sheng-Hui <redacted>
---
transaction.h | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/transaction.h b/transaction.h
index a1070e0..d4e42a1 100644
--- a/transaction.h
+++ b/transaction.h
@@ -32,7 +32,12 @@ static inline struct btrfs_trans_handle *
btrfs_start_transaction(struct btrfs_root *root, int num_blocks)
{
struct btrfs_fs_info *fs_info = root->fs_info;
+
struct btrfs_trans_handle *h = malloc(sizeof(*h));
+ if (!h) {
+ BUG();
+ return NULL;
+ }
a more simple way would be to write
BUG_ON(!h);
BUG_ON(root->commit_root);
BUG_ON(fs_info->running_transaction);