• rafaelw@chromium.org's avatar
    Re-enable Object.observe and add enforcement for security invariants. · 1b270ef5
    rafaelw@chromium.org authored
    This patch reverts r21062 which disabled Object.observe and the relevant tests.
    
    It also adds enforcement for the following three invariants:
    
    1) No observer may receive a change record describing changes to an object which is in different security origin (context have differing security tokens)
    
    2) No observer may receive a change record whose context's security token is different from that of the object described by the change.
    
    3) Object.getNotifier will return null if the caller and the provided object are in differing security origins
    
    Further, it ensures that the global object can never be observed nor a notifier retrieved for it.
    
    Tests are included.
    R=verwaest@chromium.org, rossberg
    LOG=Y
    
    Review URL: https://codereview.chromium.org/265503002
    
    git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21122 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    1b270ef5
object-observe.js 18.2 KB