Tim, don't see it as a lack of appreciation. Bug reports are always appreciated. But applying your fixes will just cover up another, maybe even bigger bug/issue.
PS. The fixes do seem to be reversed (as in the assigned should be added instead of removed).
The reason for a bigger issue is that the only place where I can see procedure CommentAutomatic is used is in convertdelphi.pas. In there, the calling of CommentAutomatic(fAllCommentedUnits) is done. But fAllCommentedUnits is always created in TConvertDelphiProjPack.Create(). So CommentAutomatic() could/should NEVER be called with an undefined fAllCommentedUnits.
constructor TConvertDelphiProjPack.Create(const AFilename, ADescription: string);
begin
//..
fAllCommentedUnits:=TStringList.Create;
fAllCommentedUnits.Sorted:=True;
//..
end;
So, if there is a problem in your setup, somehow fAllCommentedUnits is freed or corrupted.
It's better to find out why (because this shows an issue elsewhere) than to fix it with not assigned(fAllCommentedUnits).
That's why applying these fixes may not be wise because they cover up your bigger issue.
(and we don't dispute you have an issue)