I think GetEnv needs to return bool as if getenv(MCStringGetCString(p_name)) returns nil, then GetEnv should return false (as there is no string to create as the env var doesn't exist). [ This will be the same for the android (and base class) GetEnv signatures ].