Spurious BlueprintCreatedClass

Using the code:

TArray<FAssetData> FoundAssetData;
AssetRegistry.GetAssetsByPackageName(FileName, FoundAssetData);

I get a single result when running from the editor, but two results when running via a commandlet. The extra class is a BlueprintCreatedClass which is named the same as the other but has an _C appended.

The current hack I’m using is to delete the BlueprintCreatedClass should more than one asset be returned.

What is this class? Why does it appear? What is the proper way to fix it?

Cheers
John