コード例 #1
0
ファイル: initializer.cpp プロジェクト: 3rf/mongo
 void runGlobalInitializersOrDie(int argc, const char* const* argv, const char* const* envp) {
     Status status = runGlobalInitializers(argc, argv, envp);
     if (!status.isOK()) {
         std::cerr << "Failed global initialization: " << status << std::endl;
         quickExit(1);
     }
 }
コード例 #2
0
ファイル: initializer.cpp プロジェクト: Xyand/mongo
    void runGlobalInitializersOrDie(const InitializerContext::ArgumentVector& args,
                                    const InitializerContext::EnvironmentMap& env) {

        Status status =  runGlobalInitializers(args, env);
        if (Status::OK() != status) {
            std::cerr << "Failed global initialization: " << status << std::endl;
            ::_exit(1);
        }
    }
コード例 #3
0
ファイル: initializer.cpp プロジェクト: 3rf/mongo
    Status runGlobalInitializers(int argc, const char* const* argv, const char* const* envp) {
        InitializerContext::ArgumentVector args(argc);
        std::copy(argv, argv + argc, args.begin());

        InitializerContext::EnvironmentMap env;

        if (envp) {
            for(; *envp; ++envp) {
                const char* firstEqualSign = strchr(*envp, '=');
                if (!firstEqualSign) {
                    return Status(ErrorCodes::BadValue, "malformed environment block");
                }
                env[std::string(*envp, firstEqualSign)] = std::string(firstEqualSign + 1);
            }
        }

        return runGlobalInitializers(args, env);
    }