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

Side by Side Diff: third_party/WebKit/WebCore/bindings/v8/custom/V8DOMWindowCustom.cpp

Issue 67141: AtomicString usage improvements in v8 interceptors. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 11 years, 8 months 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | third_party/WebKit/WebCore/bindings/v8/custom/V8HTMLDocumentCustom.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 518 matching lines...) Expand 10 before | Expand all | Expand 10 after
529 return notHandledByInterceptor(); 529 return notHandledByInterceptor();
530 530
531 v8::Handle<v8::Object> holder = V8Proxy::LookupDOMWrapper(V8ClassIndex::DOMW INDOW, info.This()); 531 v8::Handle<v8::Object> holder = V8Proxy::LookupDOMWrapper(V8ClassIndex::DOMW INDOW, info.This());
532 if (holder.IsEmpty()) 532 if (holder.IsEmpty())
533 return notHandledByInterceptor(); 533 return notHandledByInterceptor();
534 534
535 DOMWindow* window = V8Proxy::ToNativeObject<DOMWindow>(V8ClassIndex::DOMWIND OW, holder); 535 DOMWindow* window = V8Proxy::ToNativeObject<DOMWindow>(V8ClassIndex::DOMWIND OW, holder);
536 if (!window) 536 if (!window)
537 return notHandledByInterceptor(); 537 return notHandledByInterceptor();
538 538
539 String propName = toWebCoreString(name);
540
541 Frame* frame = window->frame(); 539 Frame* frame = window->frame();
542 // window is detached from a frame. 540 // window is detached from a frame.
543 if (!frame) 541 if (!frame)
544 return notHandledByInterceptor(); 542 return notHandledByInterceptor();
545 543
544 AtomicString propName = v8StringToAtomicWebCoreString(name);
545
546 // Search sub-frames. 546 // Search sub-frames.
547 Frame* child = frame->tree()->child(propName); 547 Frame* child = frame->tree()->child(propName);
548 if (child) 548 if (child)
549 return V8Proxy::ToV8Object(V8ClassIndex::DOMWINDOW, child->domWindow()); 549 return V8Proxy::ToV8Object(V8ClassIndex::DOMWINDOW, child->domWindow());
550 550
551 // Search IDL functions defined in the prototype 551 // Search IDL functions defined in the prototype
552 v8::Handle<v8::Value> result = holder->GetRealNamedPropertyInPrototypeChain( name); 552 v8::Handle<v8::Value> result = holder->GetRealNamedPropertyInPrototypeChain( name);
553 if (!result.IsEmpty()) 553 if (!result.IsEmpty())
554 return result; 554 return result;
555 555
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
689 } 689 }
690 690
691 CALLBACK_FUNC_DECL(DOMWindowClearInterval) 691 CALLBACK_FUNC_DECL(DOMWindowClearInterval)
692 { 692 {
693 INC_STATS("DOM.DOMWindow.clearInterval"); 693 INC_STATS("DOM.DOMWindow.clearInterval");
694 ClearTimeoutImpl(args); 694 ClearTimeoutImpl(args);
695 return v8::Undefined(); 695 return v8::Undefined();
696 } 696 }
697 697
698 } // namespace WebCore 698 } // namespace WebCore
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/WebCore/bindings/v8/custom/V8HTMLDocumentCustom.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698