I'm not sure if this would apply to your situation but, you might consider taking a different approach and setting up a database trigger which logs any procedure updates to a table:
CREATE trigger [dbtrg_ChangeLog]
on database
for create_procedure, alter_procedure, drop_procedure
as
set nocount on
declare @data xml
set @data = EVENTDATA()
INSERT INTO changelog(databasename, eventtype, objectname, objecttype, sqlcommand, loginname)
VALUES(
@data.value('(/EVENT_INSTANCE/DatabaseName)[1]', 'varchar(256)'),
@data.value('(/EVENT_INSTANCE/EventType)[1]', 'varchar(50)'),
@data.value('(/EVENT_INSTANCE/ObjectName)[1]', 'varchar(256)'),
@data.value('(/EVENT_INSTANCE/ObjectType)[1]', 'varchar(25)'),
@data.value('(/EVENT_INSTANCE/TSQLCommand)[1]', 'varchar(max)'),
@data.value('(/EVENT_INSTANCE/LoginName)[1]', 'varchar(256)')
)