在leetcode上显示head-use-after-free,但似乎没有分配空间,请问是怎么回事?

LeetCode第114题,显示heap-use-after-free,为了确认错误位置删掉了一部分,发现是root->right=nleft这句出的问题,请问是怎么回事?

class Solution {

public:

void flatten(TreeNode* root) {

    if (!root)

        return;

    TreeNode* nleft = root->left;

    TreeNode* nright = root->right;

    root->right = nleft;


}

};

不知道,你提供下其他部分的代码

缺了一句:root->left = NULL; 即把原左子树置空