Editor Crashes On Launch

I have a plugin that defines an Actor (AFirstActor) that I’d like to access from a project C++ Actor (ASecondActor). I have a method to find the FirstActor from the SecondActor:

AFirstActor *ASecondActor::GetFirstActor()
{
    UWorld *World = GetWorld();
    if(World && FModuleManager::Get().IsModuleLoaded("FirstModule"))
    {
        for (TActorIterator<AFirstActor> FirstActor(World); FirstActor; ++FirstActor)
        {
            return *FirstActor;
        }
    }
    return nullptr;
}

This compiles, but when I start the editor it crashes with this stack trace:

[2017.07.27-06.41.27:233][  0]LogHAL: Linux SourceCodeAccessSettings: NullSourceCodeAccessor
[2017.07.27-06.41.28:188][  0]LogUdpMessaging: Initializing bridge on interface 0.0.0.0:0 to multicast group 230.0.0.1:6666.
*** Error in `/home/pmelick/.unreal_engine/987fd48b18295d03b57f51e36abb7979/Engine/Binaries/Linux/UE4Editor': free(): invalid size: 0x00007f2027031d90 ***
Signal 6 caught.
Malloc Size=131076 LargeMemoryPoolOffset=131092 
CommonLinuxCrashHandler: Signal=6
Malloc Size=65535 LargeMemoryPoolOffset=196655 
[2017.07.27-06.41.28:698][  0]LogLinux: === Critical error: ===
Unhandled Exception: SIGABRT: abort() called

[2017.07.27-06.41.28:698][  0]LogLinux: Fatal error!

[Callstack]  00  0x00007f208a61767f  FLinuxPlatformStackWalk::CaptureStackBackTrace(unsigned long long*, unsigned int, void*)
[Callstack]  01  0x00007f208a4cc5c6  FGenericPlatformStackWalk::StackWalkAndDump(char*, unsigned long, int, void*)
[Callstack]  02  0x00007f208a5cf182  FLinuxCrashContext::CaptureStackTrace()
[Callstack]  03  0x00007f207f417620  CommonLinuxCrashHandler(FGenericCrashContext const&)
[Callstack]  04  0x00007f208a5d445d  PlatformCrashHandler(int, siginfo_t*, void*)
[Callstack]  05  0x00007f208b3c6330  /lib/x86_64-linux-gnu/libpthread.so.0(+0x10330) [0x7f208b3c6330]
[Callstack]  06  0x00007f207e964c37  /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x37) [0x7f207e964c37]
[Callstack]  07  0x00007f207e968028  /lib/x86_64-linux-gnu/libc.so.6(abort+0x148) [0x7f207e968028]
[Callstack]  08  0x00007f207e9a12a4  /lib/x86_64-linux-gnu/libc.so.6(+0x732a4) [0x7f207e9a12a4]
[Callstack]  09  0x00007f207e9ad55e  /lib/x86_64-linux-gnu/libc.so.6(+0x7f55e) [0x7f207e9ad55e]
[Callstack]  10  0x00007f2000bee389  google::protobuf::FileDescriptorProto::SharedDtor()
[Callstack]  11  0x00007f2000bee47c  google::protobuf::FileDescriptorProto::~FileDescriptorProto()
[Callstack]  12  0x00007f2000c01115  google::protobuf::EncodedDescriptorDatabase::Add(void const*, int)
[Callstack]  13  0x00007f2000bc840a  google::protobuf::DescriptorPool::InternalAddGeneratedFile(void const*, int)
[Callstack]  14  0x00007f2000bfa41c  google::protobuf::protobuf_AddDesc_google_2fprotobuf_2fdescriptor_2eproto()
[Callstack]  15  0x00007f208b5e420a  /lib64/ld-linux-x86-64.so.2(+0x1020a) [0x7f208b5e420a]
[Callstack]  16  0x00007f208b5e42f3  /lib64/ld-linux-x86-64.so.2(+0x102f3) [0x7f208b5e42f3]
[Callstack]  17  0x00007f208b5e8fd7  /lib64/ld-linux-x86-64.so.2(+0x14fd7) [0x7f208b5e8fd7]
[Callstack]  18  0x00007f208b5e40c4  /lib64/ld-linux-x86-64.so.2(+0x100c4) [0x7f208b5e40c4]
[Callstack]  19  0x00007f208b5e84db  /lib64/ld-linux-x86-64.so.2(+0x144db) [0x7f208b5e84db]
[Callstack]  20  0x00007f207e72b02b  /lib/x86_64-linux-gnu/libdl.so.2(+0x102b) [0x7f207e72b02b]
[Callstack]  21  0x00007f208b5e40c4  /lib64/ld-linux-x86-64.so.2(+0x100c4) [0x7f208b5e40c4]
[Callstack]  22  0x00007f207e72b62d  /lib/x86_64-linux-gnu/libdl.so.2(+0x162d) [0x7f207e72b62d]
[Callstack]  23  0x00007f207e72b0c1  /lib/x86_64-linux-gnu/libdl.so.2(dlopen+0x31) [0x7f207e72b0c1]
[Callstack]  24  0x00007f208a5e0244  FLinuxPlatformProcess::GetDllHandle(wchar_t const*)
[Callstack]  25  0x00007f208a70c74a  FModuleManager::LoadModuleWithFailureReason(FName, EModuleLoadResult&, bool)
[Callstack]  26  0x00007f2084114eda  FModuleDescriptor::LoadModulesForPhase(ELoadingPhase::Type, TArray<FModuleDescriptor, FDefaultAllocator> const&, TMap<FName, EModuleLoadResult, FDefaultSetAllocator, TDefaultMapKeyFuncs<FName, EModuleLoadResult, false> >&)
[Callstack]  27  0x00007f2084129553  FProjectManager::LoadModulesForProject(ELoadingPhase::Type)
[Callstack]  28  0x0000000000435b6b  FEngineLoop::LoadStartupModules()
[Callstack]  29  0x000000000041c403  FEngineLoop::PreInit(wchar_t const*)
[Callstack]  30  0x000000000042d648  GuardedMain(wchar_t const*)
[Callstack]  31  0x00007f207f41850d  CommonLinuxMain(int, char**, int (*)(wchar_t const*))
[Callstack]  32  0x00007f207e94ff45  /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7f207e94ff45]
[Callstack]  33  0x0000000000417bfe  /home/pmelick/.unreal_engine/987fd48b18295d03b57f51e36abb7979/Engine/Binaries/Linux/UE4Editor() [0x417bfe]

[2017.07.27-06.41.28:709][  0]LogExit: Executing StaticShutdownAfterError
Malloc Size=40855 LargeMemoryPoolOffset=237527

I don’t call this function from anywhere right now. An instance of ASecondActor does not even exist in the scene. The offending statement seems to be TActorIterator FirstActor(World). I’ve tried checking the World’s bIsWorldInitialized, bBegunPlay, and bStartup to prevent running that line when it’s invalid to no effect.