void CallCompletedCallback1() {
- printf("Firing callback 1.\n");
+ i::OS::Print("Firing callback 1.\n");
callback_fired ^= 1; // Toggle first bit.
}
void CallCompletedCallback2() {
- printf("Firing callback 2.\n");
+ i::OS::Print("Firing callback 2.\n");
callback_fired ^= 2; // Toggle second bit.
}
Handle<Value> RecursiveCall(const Arguments& args) {
- uint32_t level = args[0]->Uint32Value();
+ int32_t level = args[0]->Int32Value();
if (level < 3) {
level++;
- printf("Entering recursion level %d.\n", level);
+ i::OS::Print("Entering recursion level %d.\n", level);
char script[64];
- snprintf(script, sizeof(script), "recursion(%d)", level);
- CompileRun(script);
- printf("Leaving recursion level %d.\n", level);
+ i::Vector<char> script_vector(script, sizeof(script));
+ i::OS::SNPrintF(script_vector, "recursion(%d)", level);
+ CompileRun(script_vector.start());
+ i::OS::Print("Leaving recursion level %d.\n", level);
CHECK_EQ(0, callback_fired);
} else {
- printf("Recursion ends.\n");
+ i::OS::Print("Recursion ends.\n");
CHECK_EQ(0, callback_fired);
}
return Undefined();
v8::V8::AddCallCompletedCallback(CallCompletedCallback1);
v8::V8::AddCallCompletedCallback(CallCompletedCallback1);
v8::V8::AddCallCompletedCallback(CallCompletedCallback2);
- printf("--- Script (1) ---\n");
+ i::OS::Print("--- Script (1) ---\n");
Local<Script> script =
v8::Script::Compile(v8::String::New("recursion(0)"));
script->Run();
CHECK_EQ(3, callback_fired);
- printf("\n--- Script (2) ---\n");
+ i::OS::Print("\n--- Script (2) ---\n");
callback_fired = 0;
v8::V8::RemoveCallCompletedCallback(CallCompletedCallback1);
script->Run();
CHECK_EQ(2, callback_fired);
- printf("\n--- Function ---\n");
+ i::OS::Print("\n--- Function ---\n");
callback_fired = 0;
Local<Function> recursive_function =
Local<Function>::Cast(env->Global()->Get(v8_str("recursion")));