OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 933 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
944 MessageLocation message_location = isolate->GetMessageLocation(); | 944 MessageLocation message_location = isolate->GetMessageLocation(); |
945 | 945 |
946 isolate->clear_pending_message(); | 946 isolate->clear_pending_message(); |
947 isolate->clear_pending_exception(); | 947 isolate->clear_pending_exception(); |
948 | 948 |
949 // If possible, copy positions from message object to exception object. | 949 // If possible, copy positions from message object to exception object. |
950 if (exception->IsJSObject() && !message_location.script().is_null()) { | 950 if (exception->IsJSObject() && !message_location.script().is_null()) { |
951 rethrow_exception = Handle<JSObject>::cast(exception); | 951 rethrow_exception = Handle<JSObject>::cast(exception); |
952 | 952 |
953 Factory* factory = isolate->factory(); | 953 Factory* factory = isolate->factory(); |
954 Handle<String> start_pos_key = | 954 Handle<String> start_pos_key = factory->InternalizeOneByteString( |
955 factory->LookupOneByteSymbol(STATIC_ASCII_VECTOR("startPosition")); | 955 STATIC_ASCII_VECTOR("startPosition")); |
956 Handle<String> end_pos_key = | 956 Handle<String> end_pos_key = factory->InternalizeOneByteString( |
957 factory->LookupOneByteSymbol(STATIC_ASCII_VECTOR("endPosition")); | 957 STATIC_ASCII_VECTOR("endPosition")); |
958 Handle<String> script_obj_key = | 958 Handle<String> script_obj_key = factory->InternalizeOneByteString( |
959 factory->LookupOneByteSymbol(STATIC_ASCII_VECTOR("scriptObject")); | 959 STATIC_ASCII_VECTOR("scriptObject")); |
960 Handle<Smi> start_pos(Smi::FromInt(message_location.start_pos())); | 960 Handle<Smi> start_pos(Smi::FromInt(message_location.start_pos())); |
961 Handle<Smi> end_pos(Smi::FromInt(message_location.end_pos())); | 961 Handle<Smi> end_pos(Smi::FromInt(message_location.end_pos())); |
962 Handle<JSValue> script_obj = GetScriptWrapper(message_location.script()); | 962 Handle<JSValue> script_obj = GetScriptWrapper(message_location.script()); |
963 JSReceiver::SetProperty( | 963 JSReceiver::SetProperty( |
964 rethrow_exception, start_pos_key, start_pos, NONE, kNonStrictMode); | 964 rethrow_exception, start_pos_key, start_pos, NONE, kNonStrictMode); |
965 JSReceiver::SetProperty( | 965 JSReceiver::SetProperty( |
966 rethrow_exception, end_pos_key, end_pos, NONE, kNonStrictMode); | 966 rethrow_exception, end_pos_key, end_pos, NONE, kNonStrictMode); |
967 JSReceiver::SetProperty( | 967 JSReceiver::SetProperty( |
968 rethrow_exception, script_obj_key, script_obj, NONE, kNonStrictMode); | 968 rethrow_exception, script_obj_key, script_obj, NONE, kNonStrictMode); |
969 } | 969 } |
(...skipping 1127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2097 | 2097 |
2098 bool LiveEditFunctionTracker::IsActive(Isolate* isolate) { | 2098 bool LiveEditFunctionTracker::IsActive(Isolate* isolate) { |
2099 return false; | 2099 return false; |
2100 } | 2100 } |
2101 | 2101 |
2102 #endif // ENABLE_DEBUGGER_SUPPORT | 2102 #endif // ENABLE_DEBUGGER_SUPPORT |
2103 | 2103 |
2104 | 2104 |
2105 | 2105 |
2106 } } // namespace v8::internal | 2106 } } // namespace v8::internal |
OLD | NEW |