示例#1
0
void ExceptionState::throwSecurityError(const String& sanitizedMessage, const String& unsanitizedMessage)
{
    ASSERT(m_isolate);
    m_code = SecurityError;
    String finalSanitized = addExceptionContext(sanitizedMessage);
    m_message = finalSanitized;
    String finalUnsanitized = addExceptionContext(unsanitizedMessage);

    setException(V8ThrowException::createDOMException(SecurityError, finalSanitized, finalUnsanitized, m_creationContext, m_isolate));
}
示例#2
0
void ExceptionState::throwTypeError(const String& message)
{
    ASSERT(m_isolate);
    m_code = TypeError;
    m_message = message;
    setException(V8ThrowException::createTypeError(addExceptionContext(message), m_isolate));
}
示例#3
0
void ExceptionState::throwRangeError(const String& message)
{
    ASSERT(m_isolate);
    m_code = V8RangeError;
    m_message = message;
    setException(V8ThrowException::createRangeError(m_isolate, addExceptionContext(message)));
}
示例#4
0
void ExceptionState::throwWebCLException(const ExceptionCode& ec, 
                                         const String& message) {
    ASSERT(ec);
    ASSERT(m_isolate);

    // SecurityError is thrown via ::throwSecurityError, and _careful_ consideration must be given to the data exposed to JavaScript via the 'sanitizedMessage'.
    ASSERT(ec != SecurityError);

    m_code = ec;
    String processedMessage = addExceptionContext(message);
    setException(V8ThrowException::createWebCLException(ec, processedMessage, m_creationContext, m_isolate));
}