Magento – PHP Fatal error: Call to a member function setData() on a non-object in Permissions/BlockController.php on line 113 – After Applying SUPEE-6788

magento-1.8supee-6788

PHP Fatal error After Applying SUPEE-6788:

Call to a member function setData() on a non-object in
app/code/core/Mage/Adminhtml/controllers/Permissions/BlockController.php
on line 113

First I am not able to apply the patch SUPEE-6788. It said

-e ERROR: Patch can't be applied/reverted successfully

Followed the Steps provided in link "Why does PATCH_SUPEE-6788 appear to have no effect on a 1.7.0.2 installation?" and then i was able to apply the patch.

But some Magento blocks are missing at the Home page. After a long search in Google I found that we have to create blocks under System > Permissions > Blocks

But I am not able to access it, because some tables not getting created ( permission_block and permission_variable )

This problem was solved by following procedure ( Tables permission_block and permission_variable did not get created after SUPEE-6788 )

But now I am not Able to edit or create block under permissions, Only List view visible. Getting the above mentioned error

Best Answer

app/design/adminhtml/default/default/layout/admin.xml

This error is generated when layout cache hasn't been updated or admin.xml is missing the following code.

<!-- admin permissions block edit page -->
<adminhtml_permissions_block_edit>
    <reference name="content">
        <block type="adminhtml/permissions_block_edit" name="adminhtml.permissions.block.edit"/>
    </reference>
</adminhtml_permissions_block_edit>
<!-- admin permissions variable edit page -->