| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * Copyright (C) 2009 Google Inc. All rights reserved. | 2  * Copyright (C) 2009 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 118 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 129     // Overwrite the data attribute so it returns the cached result in future in
     vocations. | 129     // Overwrite the data attribute so it returns the cached result in future in
     vocations. | 
| 130     // This custom getter handler will not be called again. | 130     // This custom getter handler will not be called again. | 
| 131     v8::PropertyAttribute dataAttr = static_cast<v8::PropertyAttribute>(v8::Dont
     Delete | v8::ReadOnly); | 131     v8::PropertyAttribute dataAttr = static_cast<v8::PropertyAttribute>(v8::Dont
     Delete | v8::ReadOnly); | 
| 132     info.Holder()->ForceSet(v8AtomicString(info.GetIsolate(), "data"), result, d
     ataAttr); | 132     info.Holder()->ForceSet(v8AtomicString(info.GetIsolate(), "data"), result, d
     ataAttr); | 
| 133     v8SetReturnValue(info, result); | 133     v8SetReturnValue(info, result); | 
| 134 } | 134 } | 
| 135 | 135 | 
| 136 void V8MessageEvent::initMessageEventMethodCustom(const v8::FunctionCallbackInfo
     <v8::Value>& info) | 136 void V8MessageEvent::initMessageEventMethodCustom(const v8::FunctionCallbackInfo
     <v8::Value>& info) | 
| 137 { | 137 { | 
| 138     MessageEvent* event = V8MessageEvent::toNative(info.Holder()); | 138     MessageEvent* event = V8MessageEvent::toNative(info.Holder()); | 
| 139     V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, typeArg, info[0]); | 139     TOSTRING_VOID(V8StringResource<>, typeArg, info[0]); | 
| 140     V8TRYCATCH_VOID(bool, canBubbleArg, info[1]->BooleanValue()); | 140     TONATIVE_VOID(bool, canBubbleArg, info[1]->BooleanValue()); | 
| 141     V8TRYCATCH_VOID(bool, cancelableArg, info[2]->BooleanValue()); | 141     TONATIVE_VOID(bool, cancelableArg, info[2]->BooleanValue()); | 
| 142     v8::Handle<v8::Value> dataArg = info[3]; | 142     v8::Handle<v8::Value> dataArg = info[3]; | 
| 143     V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, originArg, info[4])
     ; | 143     TOSTRING_VOID(V8StringResource<>, originArg, info[4]); | 
| 144     V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<>, lastEventIdArg, inf
     o[5]); | 144     TOSTRING_VOID(V8StringResource<>, lastEventIdArg, info[5]); | 
| 145     DOMWindow* sourceArg = toDOMWindow(info[6], info.GetIsolate()); | 145     DOMWindow* sourceArg = toDOMWindow(info[6], info.GetIsolate()); | 
| 146     OwnPtr<MessagePortArray> portArray; | 146     OwnPtr<MessagePortArray> portArray; | 
| 147     const int portArrayIndex = 7; | 147     const int portArrayIndex = 7; | 
| 148     if (!isUndefinedOrNull(info[portArrayIndex])) { | 148     if (!isUndefinedOrNull(info[portArrayIndex])) { | 
| 149         portArray = adoptPtr(new MessagePortArray); | 149         portArray = adoptPtr(new MessagePortArray); | 
| 150         bool success = false; | 150         bool success = false; | 
| 151         *portArray = toRefPtrNativeArray<MessagePort, V8MessagePort>(info[portAr
     rayIndex], portArrayIndex + 1, info.GetIsolate(), &success); | 151         *portArray = toRefPtrNativeArray<MessagePort, V8MessagePort>(info[portAr
     rayIndex], portArrayIndex + 1, info.GetIsolate(), &success); | 
| 152         if (!success) | 152         if (!success) | 
| 153             return; | 153             return; | 
| 154     } | 154     } | 
| 155     event->initMessageEvent(typeArg, canBubbleArg, cancelableArg, originArg, las
     tEventIdArg, sourceArg, portArray.release()); | 155     event->initMessageEvent(typeArg, canBubbleArg, cancelableArg, originArg, las
     tEventIdArg, sourceArg, portArray.release()); | 
| 156 | 156 | 
| 157     if (!dataArg.IsEmpty()) { | 157     if (!dataArg.IsEmpty()) { | 
| 158         V8HiddenValue::setHiddenValue(info.GetIsolate(), info.Holder(), V8Hidden
     Value::data(info.GetIsolate()), dataArg); | 158         V8HiddenValue::setHiddenValue(info.GetIsolate(), info.Holder(), V8Hidden
     Value::data(info.GetIsolate()), dataArg); | 
| 159         if (DOMWrapperWorld::current(info.GetIsolate()).isIsolatedWorld()) | 159         if (DOMWrapperWorld::current(info.GetIsolate()).isIsolatedWorld()) | 
| 160             event->setSerializedData(SerializedScriptValue::createAndSwallowExce
     ptions(dataArg, info.GetIsolate())); | 160             event->setSerializedData(SerializedScriptValue::createAndSwallowExce
     ptions(dataArg, info.GetIsolate())); | 
| 161     } | 161     } | 
| 162 } | 162 } | 
| 163 | 163 | 
| 164 void V8MessageEvent::webkitInitMessageEventMethodCustom(const v8::FunctionCallba
     ckInfo<v8::Value>& info) | 164 void V8MessageEvent::webkitInitMessageEventMethodCustom(const v8::FunctionCallba
     ckInfo<v8::Value>& info) | 
| 165 { | 165 { | 
| 166     initMessageEventMethodCustom(info); | 166     initMessageEventMethodCustom(info); | 
| 167 } | 167 } | 
| 168 | 168 | 
| 169 | 169 | 
| 170 } // namespace WebCore | 170 } // namespace WebCore | 
| OLD | NEW | 
|---|