Is the Cursor being Deallocated after it has been used in the Trigger??
EDIT: Sorry didn't read the original post.
But, on second thought I would still ask the above question.
You just changed the scope to Local.
It might not affect your application in the Global scope.
But, if the Cursor is not Deallocated and is Declared again in the Local scope then it might give you the same error again.
So, I would suggest that you check the code of the Trigger and check if the Cursor is being Deallocated or not.