Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(55)

Side by Side Diff: Source/bindings/v8/ScriptDebugServer.cpp

Issue 100963003: Use V8TRYCATCH_FOR_V8STRINGRESOURCE() macro instead of toCoreStringWithUndefinedOrNullCheck() (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Remove toCoreString(v8::Handle<v8::Value> value) Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2010-2011 Google Inc. All rights reserved. 2 * Copyright (c) 2010-2011 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after
291 if (normalResult->IsObject()) 291 if (normalResult->IsObject())
292 *result = ScriptObject(ScriptState::current(), normalResult->ToO bject()); 292 *result = ScriptObject(ScriptState::current(), normalResult->ToO bject());
293 // Call stack may have changed after if the edited function was on t he stack. 293 // Call stack may have changed after if the edited function was on t he stack.
294 if (!preview && isPaused()) 294 if (!preview && isPaused())
295 *newCallFrames = currentCallFrames(); 295 *newCallFrames = currentCallFrames();
296 return true; 296 return true;
297 } 297 }
298 // Compile error. 298 // Compile error.
299 case 1: 299 case 1:
300 { 300 {
301 V8StringResource<WithUndefinedOrNullCheck> message(resultTuple->Get( 2));
302 if (!message.prepare()) {
303 *error = "Unknown error.";
304 return false;
305 }
301 RefPtr<TypeBuilder::Debugger::SetScriptSourceError::CompileError> co mpileError = 306 RefPtr<TypeBuilder::Debugger::SetScriptSourceError::CompileError> co mpileError =
302 TypeBuilder::Debugger::SetScriptSourceError::CompileError::creat e() 307 TypeBuilder::Debugger::SetScriptSourceError::CompileError::creat e()
303 .setMessage(toCoreStringWithUndefinedOrNullCheck(resultTuple ->Get(2))) 308 .setMessage(message)
pfeldman 2013/12/12 16:11:24 Same here, we know it is a string. See https://cod
304 .setLineNumber(resultTuple->Get(3)->ToInteger()->Value()) 309 .setLineNumber(resultTuple->Get(3)->ToInteger()->Value())
305 .setColumnNumber(resultTuple->Get(4)->ToInteger()->Value()); 310 .setColumnNumber(resultTuple->Get(4)->ToInteger()->Value());
306 311
307 *error = toCoreStringWithUndefinedOrNullCheck(resultTuple->Get(1)); 312 V8StringResource<WithUndefinedOrNullCheck> errorResource(resultTuple ->Get(1));
pfeldman 2013/12/12 16:11:24 ditto
313 if (!errorResource.prepare()) {
314 *error = "Unknown error.";
315 return false;
316 }
317 *error = errorResource;
308 errorData = TypeBuilder::Debugger::SetScriptSourceError::create(); 318 errorData = TypeBuilder::Debugger::SetScriptSourceError::create();
309 errorData->setCompileError(compileError); 319 errorData->setCompileError(compileError);
310 return false; 320 return false;
311 } 321 }
312 } 322 }
313 *error = "Unknown error."; 323 *error = "Unknown error.";
314 return false; 324 return false;
315 } 325 }
316 326
317 PassRefPtr<JavaScriptCallFrame> ScriptDebugServer::wrapCallFrames(v8::Handle<v8: :Object> executionState, int maximumLimit) 327 PassRefPtr<JavaScriptCallFrame> ScriptDebugServer::wrapCallFrames(v8::Handle<v8: :Object> executionState, int maximumLimit)
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
376 if (isPaused()) 386 if (isPaused())
377 return; 387 return;
378 388
379 ScriptDebugListener* listener = getDebugListenerForContext(m_pausedContext); 389 ScriptDebugListener* listener = getDebugListenerForContext(m_pausedContext);
380 if (!listener) 390 if (!listener)
381 return; 391 return;
382 392
383 Vector<String> breakpointIds; 393 Vector<String> breakpointIds;
384 if (!hitBreakpointNumbers.IsEmpty()) { 394 if (!hitBreakpointNumbers.IsEmpty()) {
385 breakpointIds.resize(hitBreakpointNumbers->Length()); 395 breakpointIds.resize(hitBreakpointNumbers->Length());
386 for (size_t i = 0; i < hitBreakpointNumbers->Length(); i++) 396 for (size_t i = 0; i < hitBreakpointNumbers->Length(); i++) {
387 breakpointIds[i] = toCoreStringWithUndefinedOrNullCheck(hitBreakpoin tNumbers->Get(i)); 397 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<WithUndefinedO rNullCheck>, hitBreakpointNumber, hitBreakpointNumbers->Get(i));
398 breakpointIds[i] = hitBreakpointNumber;
399 }
388 } 400 }
389 401
390 m_executionState.set(m_isolate, executionState); 402 m_executionState.set(m_isolate, executionState);
391 ScriptState* currentCallFrameState = ScriptState::forContext(m_pausedContext ); 403 ScriptState* currentCallFrameState = ScriptState::forContext(m_pausedContext );
392 listener->didPause(currentCallFrameState, currentCallFrames(), ScriptValue(e xception, currentCallFrameState->isolate()), breakpointIds); 404 listener->didPause(currentCallFrameState, currentCallFrames(), ScriptValue(e xception, currentCallFrameState->isolate()), breakpointIds);
393 405
394 m_runningNestedMessageLoop = true; 406 m_runningNestedMessageLoop = true;
395 runMessageLoopOnPause(m_pausedContext); 407 runMessageLoopOnPause(m_pausedContext);
396 m_runningNestedMessageLoop = false; 408 m_runningNestedMessageLoop = false;
397 } 409 }
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
481 skipRequest = listener->shouldSkipStepPause(topFrame); 493 skipRequest = listener->shouldSkipStepPause(topFrame);
482 if (executeSkipPauseRequest(skipRequest, eventDetails.GetExecutionSt ate())) 494 if (executeSkipPauseRequest(skipRequest, eventDetails.GetExecutionSt ate()))
483 return; 495 return;
484 handleProgramBreak(eventDetails, v8::Handle<v8::Value>(), hitBreakpo ints.As<v8::Array>()); 496 handleProgramBreak(eventDetails, v8::Handle<v8::Value>(), hitBreakpo ints.As<v8::Array>());
485 } 497 }
486 } 498 }
487 } 499 }
488 500
489 void ScriptDebugServer::dispatchDidParseSource(ScriptDebugListener* listener, v8 ::Handle<v8::Object> object) 501 void ScriptDebugServer::dispatchDidParseSource(ScriptDebugListener* listener, v8 ::Handle<v8::Object> object)
490 { 502 {
491 String sourceID = toCoreStringWithUndefinedOrNullCheck(object->Get(v8AtomicS tring(m_isolate, "id"))); 503 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<WithUndefinedOrNullChe ck>, sourceID, object->Get(v8AtomicString(m_isolate, "id")));
pfeldman 2013/12/12 16:11:24 These are of known types: https://code.google.com/
492 504
493 ScriptDebugListener::Script script; 505 ScriptDebugListener::Script script;
494 script.url = toCoreStringWithUndefinedOrNullCheck(object->Get(v8AtomicString (m_isolate, "name"))); 506 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<WithUndefinedOrNullChe ck>, url, object->Get(v8AtomicString(m_isolate, "name")));
495 script.source = toCoreStringWithUndefinedOrNullCheck(object->Get(v8AtomicStr ing(m_isolate, "source"))); 507 script.url = url;
496 script.sourceMappingURL = toCoreStringWithUndefinedOrNullCheck(object->Get(v 8AtomicString(m_isolate, "sourceMappingURL"))); 508 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<WithUndefinedOrNullChe ck>, source, object->Get(v8AtomicString(m_isolate, "source")));
509 script.source = source;
510 V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<WithUndefinedOrNullChe ck>, sourceMappingURL, object->Get(v8AtomicString(m_isolate, "sourceMappingURL") ));
511 script.sourceMappingURL = sourceMappingURL;
pfeldman 2013/12/12 16:11:24 Hm. This seems NULL. Adding vsevik for this.
497 script.startLine = object->Get(v8AtomicString(m_isolate, "startLine"))->ToIn teger()->Value(); 512 script.startLine = object->Get(v8AtomicString(m_isolate, "startLine"))->ToIn teger()->Value();
498 script.startColumn = object->Get(v8AtomicString(m_isolate, "startColumn"))-> ToInteger()->Value(); 513 script.startColumn = object->Get(v8AtomicString(m_isolate, "startColumn"))-> ToInteger()->Value();
499 script.endLine = object->Get(v8AtomicString(m_isolate, "endLine"))->ToIntege r()->Value(); 514 script.endLine = object->Get(v8AtomicString(m_isolate, "endLine"))->ToIntege r()->Value();
500 script.endColumn = object->Get(v8AtomicString(m_isolate, "endColumn"))->ToIn teger()->Value(); 515 script.endColumn = object->Get(v8AtomicString(m_isolate, "endColumn"))->ToIn teger()->Value();
501 script.isContentScript = object->Get(v8AtomicString(m_isolate, "isContentScr ipt"))->ToBoolean()->Value(); 516 script.isContentScript = object->Get(v8AtomicString(m_isolate, "isContentScr ipt"))->ToBoolean()->Value();
502 517
503 listener->didParseSource(sourceID, script); 518 listener->didParseSource(sourceID, script);
504 } 519 }
505 520
506 void ScriptDebugServer::ensureDebuggerScriptCompiled() 521 void ScriptDebugServer::ensureDebuggerScriptCompiled()
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
617 { 632 {
618 return PassOwnPtr<ScriptSourceCode>(); 633 return PassOwnPtr<ScriptSourceCode>();
619 } 634 }
620 635
621 String ScriptDebugServer::preprocessEventListener(Frame*, const String& source, const String& url, const String& functionName) 636 String ScriptDebugServer::preprocessEventListener(Frame*, const String& source, const String& url, const String& functionName)
622 { 637 {
623 return source; 638 return source;
624 } 639 }
625 640
626 } // namespace WebCore 641 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698